Recommended Posts

I have the G15 with 18 G Keys and Fold-able LCD Screen. I'll check it out on mine when I get home.

 

In theory, you're correct, but if this is written with the .Net Framework... Haha, we all know Windows can be sketchy some times.

 

Well I'm not using Keys.MediaPlayPause/Keys.MediaNextTrack etc. Because those only work when the application has focus. I've implemented a low level keyboard hook that listen to keypresses even when the application as no focus. However it seems it doesn't catch pressing media keys on all keyboards. Unbelievable there is still no standard to do such thing :)

 

EDIT: hah! I think I found some useful info on the web. There exist other keycodes I didn't kjnow of. I'll update my KeyboardTest app tonight.

To everyone with non-working media keys, could you download KeyBoardTest2.exe here https://www.dropbox.com/sh/ad3r5xsi15nubku/AADmBgbyz4aJiMGH2YUDwkmBa?dl=0

 

Could you launch it and press, in this order, on these media keys and post a screenshot of the result in the app (if it reacted to the keypressed at least):

 

1. Mediakey Play

2. Mediakey Pause

3. Mediakey Previous

4. Mediakey Next

5. Mediakey Stop

6. Mediakey Volume Up

7. Mediakey Volume Down

 

Thanks!

Is it portable?

 

Yes! There is a portable version.

I've got to say, now that I'm back on Windows this has got to be one of my favourite applications. It just looks so clean and works perfectly for me! Incredible work, Rapha

360 Total Security quarantined KeyboardTest5.exe and wont let me run it, even though I have restored it, and white-listed it. :rolleyes:

 

post-18738-0-96443200-1432669659.png

 

https://www.virustotal.com and http://virusscan.jotti.org both gave it a 100% clean bill of health

 

On the plus side, the media keys on my K300 work fine with Dopamine, in and out of focus :)

360 Total Security quarantined KeyboardTest5.exe and wont let me run it, even though I have restored it, and white-listed it. :rolleyes:

 

attachicon.gif2015-05-26_20-25-36.png

 

https://www.virustotal.com and http://virusscan.jotti.org both gave it a 100% clean bill of health

 

On the plus side, the media keys on my K300 work fine with Dopamine, in and out of focus :)

 

360 is getting on my nerves :rofl: It flags all my software as viruses. I've put the source code of the KeyboardTest app in the same directory as KeyBoardTest5.exe. As proof that 360 is crazy :)

I didn't have time yet to look into signing or strong naming my applications, which, I hope, would solve getting false positives in some anti-viruses.

 

AS for the keys not working for some keyboards. I'm starting to suspect that the keyboard software might do something non-standard or that it is not possible to listen to those keyboar messages from a .NET application. I'm still not 100% sure.

nCode='0', wParam='&H100', vkCode='179'
nCode='0', wParam='&H101', vkCode='179'
nCode='0', wParam='&H100', vkCode='178'
nCode='0', wParam='&H101', vkCode='178'
nCode='0', wParam='&H100', vkCode='174'
nCode='0', wParam='&H101', vkCode='174'
nCode='0', wParam='&H100', vkCode='174'
nCode='0', wParam='&H101', vkCode='174'
nCode='0', wParam='&H100', vkCode='176'
nCode='0', wParam='&H101', vkCode='176'
nCode='0', wParam='&H100', vkCode='177'
nCode='0', wParam='&H101', vkCode='177'
nCode='0', wParam='&H100', vkCode='173'
nCode='0', wParam='&H101', vkCode='173'
nCode='0', wParam='&H100', vkCode='162'
nCode='0', wParam='&H100', vkCode='67'

Here are my G15 Keys. I pressed every key. When I get my new Orion keyboard here in a few weeks, I'll test it for you too.

 

Edit:

Last 2 keys, are Copy & Paste. Haha.

I have found the problem with the Logitech keyboards.  It is the Logitech SetPoint drivers causing the issue.  Their drivers do something special with the media keys.  I have fixed the issue by doing 2 different things.  I will explain them below.

 

1.  Uninstall the SetPoint drivers.  This will fix the issue and the media keys will then work in Dopamine.

 

2.  If you don't want to uninstall the drivers, you can change the configuration for your particular keyboard so that SetPoint does not intercept these keys.  For my K800 I modified the c:\programdata\Logishrd\SetPointP\Devices\Keyboard\2000074\2000074.xml file.  I removed the following sections from this file:

 

        <!-- Button Name => f10 Previous Track -->

        <Button Number="786614" Name="Previous Track">

          <Trigger Class="ButtonPress">

            <PARAM Button="786614" LongPressTime="300" />

            <TriggerState Name="ButtonDownUp"        HandlerSet="MM PREVIOUS"  HandlerSetGroup="Keyboard"  />

            <TriggerState Name="ButtonLongPress"    HandlerSet="MM REWIND" />

          </Trigger>

        </Button>

        <!-- Button Name => fn F11 Play -->

                <Button Number="786637" Name="F11">

                    <Trigger Class="ButtonPress">

                        <PARAM Button="786637" />

                        <TriggerState Name="ButtonDownUp" HandlerSet="MM PLAY"  HandlerSetGroup="F12KeysGroup"  />

                    </Trigger>

                </Button>

                <!-- Button Name => F12 Next Track  -->

                <Button Number="786613" Name="Next Track">

                    <Trigger Class="ButtonPress">

            <PARAM Button="786613" LongPressTime="300" />

            <TriggerState Name="ButtonDownUp"        HandlerSet="MM NEXT"  HandlerSetGroup="Keyboard"  />

            <TriggerState Name="ButtonLongPress"    HandlerSet="MM FASTFORWARD" />

          </Trigger>

                </Button>

 

I removed the button configurations for the media keys, restarted SetPoint, and the media keys then worked in Dopamine with SetPoint installed.  You will need to find the XML file for your specific device by searching the folders.  The display name that is shown in SetPoint for the keyboard is at the top of the XML file and that is what I searched on to find the XML file for my keyboard. Once the configuration for the media buttons is removed for your device, the keys should start working in Dopamine.

 

Raphael...I'm not sure if there is anything you can do about this code wise.  This looks to be an issue when running the Logitech SetPoint drivers with a Logitech keyboard.  It looks like one of the two methods above will have to be used when using a Logitech keyboard to get the media keys to work in Dopamine.

 

You rule! Thanks for the info! :) I was starting to suspect such thing. I've read about the SetPoint software in another forum but wasn't sure this was causing the media key issue.

nCode='0', wParam='&H100', vkCode='179'
nCode='0', wParam='&H101', vkCode='179'
nCode='0', wParam='&H100', vkCode='178'
nCode='0', wParam='&H101', vkCode='178'
nCode='0', wParam='&H100', vkCode='174'
nCode='0', wParam='&H101', vkCode='174'
nCode='0', wParam='&H100', vkCode='174'
nCode='0', wParam='&H101', vkCode='174'
nCode='0', wParam='&H100', vkCode='176'
nCode='0', wParam='&H101', vkCode='176'
nCode='0', wParam='&H100', vkCode='177'
nCode='0', wParam='&H101', vkCode='177'
nCode='0', wParam='&H100', vkCode='173'
nCode='0', wParam='&H101', vkCode='173'
nCode='0', wParam='&H100', vkCode='162'
nCode='0', wParam='&H100', vkCode='67'

Here are my G15 Keys. I pressed every key. When I get my new Orion keyboard here in a few weeks, I'll test it for you too.

 

Edit:

Last 2 keys, are Copy & Paste. Haha.

 

Thanks! I'll compare this to the current code.

Well it is essentially a keylogger (although not malicious), so I guess it's good that 360 picks it up  :)

 

You have a point. I wonder if that is the reason why Dopamine is also being picked up by some anti-viruses. The same code comes back in Dopamine.

I have found the problem with the Logitech keyboards.  It is the Logitech SetPoint drivers causing the issue.  Their drivers do something special with the media keys.  I have fixed the issue by doing 2 different things.  I will explain them below.

 

1.  Uninstall the SetPoint drivers.  This will fix the issue and the media keys will then work in Dopamine.

 

2.  If you don't want to uninstall the drivers, you can change the configuration for your particular keyboard so that SetPoint does not intercept these keys.  For my K800 I modified the c:\programdata\Logishrd\SetPointP\Devices\Keyboard\2000074\2000074.xml file.  I removed the following sections from this file:

 

<snip>

 

I removed the button configurations for the media keys, restarted SetPoint, and the media keys then worked in Dopamine with SetPoint installed.  You will need to find the XML file for your specific device by searching the folders.  The display name that is shown in SetPoint for the keyboard is at the top of the XML file and that is what I searched on to find the XML file for my keyboard. Once the configuration for the media buttons is removed for your device, the keys should start working in Dopamine.

 

Raphael...I'm not sure if there is anything you can do about this code wise.  This looks to be an issue when running the Logitech SetPoint drivers with a Logitech keyboard.  It looks like one of the two methods above will have to be used when using a Logitech keyboard to get the media keys to work in Dopamine.

 

Interesting. Setpoint must be doing something specific on it's own for VLC and other media apps then?

Isn't there a standard key name for those keys? Like we have Generic Drivers, are there generic settings?

It's strange that WMP, VLC and Foobar2000 can use the keyhooks and not get flagged.

Does the software install any files to the registration? Maybe they use a generic windows library that's known to the AV programs? Who knows. It's interesting to see!

This is for my A4Tech (Chinese) keyboard, it caused two events for each press.

 

Play and Pause are same button:

nCode='0', wParam='&H100', vkCode='179'
nCode='0', wParam='&H101', vkCode='179'
nCode='0', wParam='&H100', vkCode='179'
nCode='0', wParam='&H101', vkCode='179'
nCode='0', wParam='&H100', vkCode='177'
nCode='0', wParam='&H101', vkCode='177'
nCode='0', wParam='&H100', vkCode='176'
nCode='0', wParam='&H101', vkCode='176'
nCode='0', wParam='&H100', vkCode='178'
nCode='0', wParam='&H101', vkCode='178'
nCode='0', wParam='&H100', vkCode='175'
nCode='0', wParam='&H101', vkCode='175'
nCode='0', wParam='&H100', vkCode='174'
nCode='0', wParam='&H101', vkCode='174'

I think that I might have stumbled on part of the solution. I was looking around the setpoint config files and found this:

#List of supported players
#{btn|key|msg|emg|cmd|wac},exeName,wndClass,wndCaption,xxx,play_delayplay,pause,stop,prev,next,remove_flags,ShowOSD,menu_item
#special char --> ^ ctrl;+ shift+ctrl; $ ctrl (no translation); * alt (no translation); @ ctrl+alt (no tanslation); & (no translation) 
at: C:\Program Files\Logitech\SetPointP\players.ini
 
Maybe you could somehow add in dopamine to the list?-

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Posts

    • OpenAI is rolling out a major upgrade to ChatGPT memory by Pradeep Viswanathan OpenAI is rolling out a major upgrade to ChatGPT's memory, making the system more capable, current, and scalable across long-term use. Memory allows ChatGPT to remember useful details about users, including their preferences, projects, and constraints. Instead of starting every conversation from scratch, ChatGPT can use this context to provide more relevant responses in future chats. OpenAI first launched saved memories in February 2024. That feature allowed users to explicitly ask ChatGPT to save information into its memory, such as travel plans or writing preferences. However, this system had limits because it depended heavily on users giving clear instructions to remember something. Additionally, saved memories could become stale over time. In April 2025, OpenAI expanded memory by allowing ChatGPT to reference past chat context outside the saved memories list. This was powered by a background process called “dreaming,” which automatically curates memories from chat history. This made ChatGPT better at learning from natural conversation without requiring users to manually save every detail. Today, OpenAI announced a more capable and compute-efficient memory architecture built on top of dreaming. This new system improves ChatGPT’s ability to carry forward useful context, follow user preferences, and remain accurate as time passes. According to OpenAI’s internal evaluations, the new system improves factual recall from 67.9% in 2025 to 82.8% in 2026. Preference adherence improves from 55.3% to 71.3%, while accuracy over time improves from 52.2% to 75.1%. The best part of this new system is a new memory summary page where users can review ChatGPT's memories. Users can even update details, correct information, or give instructions on what topics ChatGPT should bring up and when. This new, improved memory system is available to ChatGPT Plus and Pro users in the US starting today. It will roll out to more countries, as well as Free and Go users, in the coming weeks.
    • I work for a video production company in Australia. The camera operators shoot footage and then pass the SD card over to the editors. Much easier than handing over the entire camera. Plus, on a busy day you can hand off the SD card and then pop another in for the next shoot. Or, you might have used multiple SD cards because you need the extra space for a long shoot. I also use USB cables and wifi for transferring footage, but in many cases an SD card reader is the easiest method.
    • Microsoft Edge 149.0.4022.52 by Razvan Serea Microsoft Edge is a super fast and secure web browser from Microsoft. It works on almost any device, including PCs, iPhones and Androids. It keeps you safe online, protects your privacy, and lets you browse the web quickly. You can even use it on all your devices and keep your browsing history and favorites synced up. Built on the same technology as Chrome, Microsoft Edge has additional built-in features like Startup boost and Sleeping tabs, which boost your browsing experience with world class performance and speed that are optimized to work best with Windows. Microsoft Edge security and privacy features such as Microsoft Defender SmartScreen, Password Monitor, InPrivate search, and Kids Mode help keep you and your loved ones protected and secure online. Microsoft Edge has features to keep both you and your family protected. Enable content filters and access activity reports with your Microsoft Family Safety account and experience a kid-friendly web with Kids Mode. The new Microsoft Edge is now compatible with your favorite extensions, so it’s easy to personalize your browsing experience. Microsoft Edge 149.0.4022.52 changelog: Migration to improved V2 architecture for Workspaces. Workspaces, introduced in Edge in 2022, allows users to create durable sets of tabs that can be saved and shared with others. In order to improve reliability and performance of this feature, the following changes are being made: Migrating data for saved Workspaces from OneDrive/SharePoint to Edge Sync service Removing the collaboration/share functionality of this feature For organizations who have disabled Sync through policy, the existing v1 Workspace data will still be migrated to the new architecture. New v2 Workspaces created after migration won't sync across devices and will remain local to each device. This update occurs on a progressive rollout beginning in Edge Stable v145 and will continue rolling out in Edge v149. For more information, see Getting started with Microsoft Edge Workspaces. Feature Updates Passkey Sync for Enterprise Users. Microsoft Edge is introducing support for passkey synchronization for enterprise users, enabling secure, passwordless authentication across devices. Passkeys created in Edge can now be synced seamlessly, improving sign-in experience while maintaining strong security standards. Note: This is a controlled feature rollout. If you don't see this change, check back as we continue the rollout. Enterprise WebView2 runtime downgrade via DowngradeVersion policy. Administrators can temporarily roll back specific applications to a previous WebView2 Evergreen Runtime version (N-1 or N-2) using the new DowngradeVersion policy in msedgewebview2.admx. The Downgrade Version policy allows enterprises to mitigate critical regressions by specifying per-application exe-to-version mappings. The Edge Updater installs the target version side-by-side, and the WebView2 Loader redirects targeted apps accordingly. Downgrades auto-expire with each new WebView2 release: apps pinned to N-1 remain on the same version (now becoming N-2) and will auto-update in the next release, while apps pinned to N-2 will revert to the current Evergreen version. The policy applies only to enterprise-managed devices (domain-joined or MDM-enrolled). For more information, see Microsoft Edge WebView2 Policy Documentation | Microsoft Learn. Collections retirement. Collections has been removed in this update. Users can no longer access or use the feature. To keep saved content, users can export it, or move all pages to Favorites before updating to Microsoft Edge Stable 149. For more information, see Organize your ideas with Collections in Microsoft Edge - Microsoft Support. Modern, unified, and updated Look and Feel. Microsoft Edge has updated the Look and Feel to give customers a unified experience across all of Microsoft AI surfaces including Copilot and Bing. This changes multiple elements of the UX such as spacing, corners, fonts, default colors, etc. Clarify choices surrounding third-party cookie settings. Language under Settings > Privacy, search, and services > Cookies are clarified to better describe the choices users have in managing third-party cookies. Custom primary password retirement. Users are no longer able to create a new custom primary password in Edge Settings edge://settings/autofill/passwords/settings. Any users who are still using a custom primary password will be automatically migrated to device authentication. Additionally, the PrimaryPasswordSetting policy will no longer support the WithCustomPrimaryPassword option. For more information, see Keep your saved passwords private in Microsoft Edge | Microsoft Support. Unifying Copilot Chat policy controls. The Microsoft365CopilotChatIconEnabled policy is the standard for configuring Copilot Chat. Previously, this behavior was controlled by blocking the Copilot extension, either explicitly or by using the * wildcard via the ExtensionSettings or ExtensionInstallBlockList policies. Extension and sidebar policies no longer affect the appearance or functionality of Copilot Chat. Copilot address bar suggestions were also tied to extension policy settings. Starting in Microsoft Edge version 149, admins can use the CopilotAddressBarSuggestionsEnabled policy to manage this behavior. Intune MAM Protected Downloads. The protected downloads feature for Intune MAM is now available for BYOD (Bring Your Own Device) devices, which aren't managed by a tenant. Policy Updates / New policies CopilotAddressBarSuggestionsEnabled - Enable Copilot address bar suggestions CpuPerformanceTierOverride - Override for the CPU performance tier DataUrlInWebWorkerOpaqueOriginEnabled - Enable opaque origins for data URLs in Web Workers DefaultLocalFontsSetting - Default Local Fonts permission setting ForceForegroundPriorityForUrls - Force foreground priority for specific URLs LocalFontsAllowedForUrls - Allow Local Fonts permission on these sites LocalFontsBlockedForUrls - Block Local Fonts permission on these sites Deprecated policies WalletDonationEnabled - Wallet Donation Enabled (deprecated) EdgeWalletEtreeEnabled - Edge Wallet E-Tree Enabled (deprecated) Additional policy changes ForceForegroundPriorityForUrls - ForceForegroundPriorityForOrigins is renamed to ForceForegroundPriorityForUrls OnSecurityEventEnterpriseConnector - Add macOS platform support ProtectedContentIdentifiersAllowed - Remove macOS platform support Download: Microsoft Edge (64-bit) | 193.0 MB (Freeware) Download: Microsoft Edge (32-bit) | 170.0 MB Download: Microsoft Edge (ARM64) | 188.0 MB View: Microsoft Edge Website | Release History Get alerted to all of our Software updates on Twitter at @NeowinSoftware
  • Recent Achievements

    • Week One Done
      Dr Jared Dental Studio earned a badge
      Week One Done
    • Week One Done
      RG INVESTMENT GROUP earned a badge
      Week One Done
    • Very Popular
      The Norwegian Drone Pilot earned a badge
      Very Popular
    • Very Popular
      s0nic69 earned a badge
      Very Popular
    • Collaborator
      Asgardi earned a badge
      Collaborator
  • Popular Contributors

    1. 1
      +primortal
      471
    2. 2
      PsYcHoKiLLa
      247
    3. 3
      Skyfrog
      79
    4. 4
      FloatingFatMan
      67
    5. 5
      Michael Scrip
      59
  • Tell a friend

    Love Neowin? Tell a friend!