Standard Windows Pick color dialog doesn't allow to enter 3-digit color codes

-1

1

The standard Windows 7 Pick color dialog allows me to enter only 2 digits into text fields for hue, saturation, luminance and red, green and blue even though possible value range for each field is one byte, i.e. 0 - 255.

When I select a specific color from Basic colors or from the color matrix, it fills the text fields with the right values (see the image below) but I cannot enter the 3-digit values manually.

Simply it looks like the input text boxes for red/green/blue and hue/saturation/luminance values have maximum text length set to 2 characters. It's not possible to enter 3-digit numbers by manual typing or for example by pasting from the clipboard. When I paste for example number 255 into all three color text boxes, instead of white color, the selected one is almost black because it cut the last digit during pasting, i.e. pasted 25 instead of 255.

This way it's nearly impossible to select a specific color (unless it's among the Basic colors). I have to try to get as close color to my intended one as possible using the matrix and the slider.

Is it possible to fix it anyhow?

Standard Windows pick color dialog

Note: Windows 10 has the dialog fixed and allows me to enter the 3-digit values manually.

Dawid Ferenczy Rogožan

Posted 2018-11-14T19:00:27.810

Reputation: 346

I can't reproduce this. Are you highlighting the existing value so that it gets overwritten when you start typing the new value? – Jeff Zeitlin – 2018-11-14T19:27:44.407

@JeffZeitlinOh, that's weird. But that could actually mean I have something on my system which is causing it. Yep, when I double-click anywhere in the text input to select the number, it gets selected and the text cursor appears always between the second and third digit, no matter where I double-click. When I press the first number, it replaces the selected number. Then I press the second number so it looks like the "hue" field on my screenshot and then it doesn't accept any further key presses no matter where I put the text cursor. It's pretty annoying :( – Dawid Ferenczy Rogožan – 2018-11-29T01:15:04.243

Also, when I try to type the third digit, Windows plays the "error" ding sound (the same as when you try to add fourth digit). And it doesn't matter from what application I open the color dialog, it always behaves the same. – Dawid Ferenczy Rogožan – 2018-11-29T01:19:08.450

Create a new user on your system, does the issue still happen there? – LawrenceC – 2019-09-03T15:45:54.437

@LawrenceC It's the same even on a freshly created user. – Dawid Ferenczy Rogožan – 2019-09-04T18:01:09.093

Sorry if this is a stupid idea but could it be that the number you try to paste is prepended by a space? – dirdi – 2019-09-09T18:04:53.763

Answers

1

There's a (small) possibility it's some sort of virus. There are ways to replace the color picker in Win10, so I'd also assume in Win7 the same thing could happen.
How to change the windows 10 default color picker

On further reading/searching, it look like there's a Win7 way to do it as well.
Is there a way to change the Windows default color picker?

I'm not sure what would be gained by replacing the color picker, except for that it's a compromised piece that's running as a Windows "service", and can do presumably "anything" it wants. I'd suggest doing virus and malware scans to rule out this possibility.

OTOH, it seems as if other people have had this issue since 2010. The poster here ended up reverting Win7, presumably with a backup or restore point, and it fixed their issue. It could be a bad Win Update, but I find it hard to believe that at this point in the Win7 support time frame. It hasn't ended yet (Jan 2020), but a similar update that kills the color picker in the same way that happened in 2010 isn't likely. It's more likely a known bug that MS didn't deem interesting or problematic enough to actually fix.
https://www.sevenforums.com/general-discussion/96918-problem-entering-rgb-values-color-picker.html

The same user as above posed in Microsoft's own forum and they couldn't give a complete answer, either.

Many of the settings in the Advanced Appearance Settings do not make changes, if you are using themes, especially the Aero themes. However, this should not result in the behavior you are describing?

Open Control Panel/Action Center. Expand the Maintenance section and click View Reliability Monitor. Look for any recent 'X' error icons. Click the error icon to view the details.

You might also want to check the Administrative Tools/Event Viewer. Look in Custom Views/Administrative Events for any recorded errors. If you find any that appear to be associated with this problem, double click the error to see the details.

Another user suggested changing the font, as well, in 2015.

https://answers.microsoft.com/en-us/windows/forum/all/cannot-enter-3-digit-values-in-windows-7-color/9f60af8f-3ece-45cf-b249-436030822519

With this new knowledge, I'd suggest going ahead and finding a replacement for your color picker, regardless if it's a bug or a virus. You'll likely have fewer headaches, as well as a better color palette to use.

computercarguy

Posted 2018-11-14T19:00:27.810

Reputation: 800

I have tried many Google searches but couldn't find anyone with the same issue, so thanks for that, good to know others also experienced it. Probably the best suggestion was to try some color picker replacement and the question you linked. I have tried PasteColor and even though it's just an addon for the default Color picker, it's working well and allows me to "inject" 3-digit values into the dialog. When it's using a method of simulating key presses, it's also able to inject only 2 digits, but some other method is working well so I can live with it.

– Dawid Ferenczy Rogožan – 2019-09-04T17:47:06.320

The only "solution" I found was the one person doing a system restore, so not a very good solution. I was hoping one of the replacements might help more. – computercarguy – 2019-09-04T17:59:19.993

It happened possibly long ago in my case so the system restore is no option for me (and I wouldn't like it even if it would be ;)). I didn't find any free/open-source replacement and since PasteColor is working well, even $15 for a commercial one is not worth it. Moreover considering in 4 months, Windows 7 will be unsupported so I'll stop using it most likely. – Dawid Ferenczy Rogožan – 2019-09-04T18:05:14.483

Yeah, doing a system restore for something like this would be hit or miss. That other person had just done an install, so they had a more likely chance of it working anyway. Win10 seems to be a good replacement for Win7. I've had few issues with it, just stay away from Win8/8.1. ;-) – computercarguy – 2019-09-04T18:09:25.913

0

I cannot reproduce this problem and it works quite well in my Windows 7 virtual machine.
Here is proof:

enter image description here

It seems like your copy of the Windows Common Dialogs DLL is corrupted. This DLL is found in C:\Windows\System32\comdlg32.dll. If it is not corrupted, then some other DLLs are corrupted and the situation may be too difficult to fix manually.

As this is Windows 7, the installation is most probably not recent and may have a long history. I cannot recommend re-installation of Windows in such a case, so here are the next best steps:

  • Run chkdsk and check the SMART data of the system disk.

  • Run anti-virus checks by several well-known products, including Malwarebytes.

  • Run in an elevated Command Prompt the following commands and repeat until no more errors are found:

    sfc /scannow
    dism /Online /Cleanup-Image /CheckHealth
    dism /Online /Cleanup-Image /ScanHealth
    

    If DISM finds any errors, run also:

    dism /Online /Cleanup-Image /RestoreHealth
    

    For running sfc /scannow, see this tutorial.

  • Copy comdlg32.dll from another Windows 7 computer, of same bitness (32 or 64 bit).

  • Run Repair Install.

I suggest before starting to take serious backups, including a backup image of the system disk, but using for that a third-party product rather than Windows Backup. Choose a backup product that has recovery boot media, just in case.

harrymc

Posted 2018-11-14T19:00:27.810

Reputation: 306 093

I'm afraid it's rather caused by some 3rd party software. I have downloaded the original comdlg32.dll and it's the exact same copy as I have. sfc said it fixed some corrupt files. dism /ScanHealth said it found 97 errors and 95 fixed. Both CheckHealth and RestoreHealth are not recognized in this context, dism complained and didn't execute it. I'm afraid I'll have to try disabling automatically started applications and services and investigate if something is casuing it, maybe try to boot into safe mode. Anyway, thank you for your time.

– Dawid Ferenczy Rogožan – 2019-09-03T20:53:53.047

If this is not comdlg32.dll, then some other DLLs it calls are corrupted and the situation may be too difficult to fix manually. No third-party product can corrupt 97 Windows components. This can only be a virus or a defective disk. I have added more advice in my answer, and if no other indication is found you should seriously consider Repair Install, or even upgrading to Windows 10. Windows 7 is much too vulnerable. – harrymc – 2019-09-04T06:37:47.690

I'm really skeptical about the possibility of having any system binaries corrupted, Windows (even 7) doesn't allow to corrupt its files and if it would happen, it replaces it automatically from the store. All those 97 errors were binaries of Avast antivirus I uninstalled several months ago and it looks it was just an issue of some registry (CSI registry), not any type of binary corruption actually. I have this Windows installation for about 6 years and it's working pretty well, no issues, good performance, so I really don't want to reinstall it. – Dawid Ferenczy Rogožan – 2019-09-04T17:35:15.353

SFC and DISM do not check Avast binaries, only Windows ones. The number 97 seems intimidating. The problem can be with Avast itself. Just to remark that I also used Avast until some years ago when it suddenly decided to quarantine parts of my Windows setup. I managed to rollback to a previous System Restore point and my first action was to uninstall Avast. Just remarking. – harrymc – 2019-09-04T17:46:53.620

From the log file produced by dism ... /ScanHealth: (fix) CSI F Mark Bad Type CSI Registry Item Repaired Wrote amd64_avast.vc140.crt_fcc99ee6193ebbca_14.0.25325.0_none_586e9d411a1940c6\f!api-ms-win-crt-heap-l1-1-_489a8453031dbf7e: api-ms-win-crt-heap-l1-1-0.dll. All other error records are similar, just different binaries. All of them related to Avast, all of them just registry repairs. – Dawid Ferenczy Rogožan – 2019-09-04T17:52:31.010

This looks like Avast is blocking DISM access to its registry keys. I have no idea what sort of "fix" did DISM do in such a case. Does the Pick color problem exist if Avast is disabled? – harrymc – 2019-09-04T18:23:32.290

As I wrote, I don't have Avast for months already. dism have fixed the CSI registry and further executions didn't find any issues. But the Color picker issue is unaffected, unfortunately. I'll probably stick to using PasteColor as it allows me "inject" 3-digit values into the dialog or I'll try some Color picker dialog replacement.

– Dawid Ferenczy Rogožan – 2019-09-04T18:27:38.030

If you have uninstalled Avast, then it's strange that these keys stayed. If you have not uninstalled Avast, be warned that uninstalling it might be harmful. I understand your not wanting to monkey with a setup that's not really supported now by Microsoft. Repair Install might help to reset all Windows components to a known state (and it's not a total reinstallation), but as long as you can get by there's no urgency. Just take into consideration that your installation has undergone some degradation when making future materials decisions. – harrymc – 2019-09-04T18:34:19.863

0

I had the same problem. The solution? The Microsoft Sans Serif font was not installed. I installed it and all was ok.

Carlos AM

Posted 2018-11-14T19:00:27.810

Reputation: 1

This does not really answer the question. If you have a different question, you can ask it by clicking Ask Question. You can also add a bounty to draw more attention to this question once you have enough reputation. - From Review

– peterh - Reinstate Monica – 2020-01-14T20:56:54.150

@peterh: Hmmm.   It might be a wrong answer, but it looks like a bona fide attempt to answer the question. – G-Man Says 'Reinstate Monica' – 2020-01-14T23:01:45.673

-1

In your Windows 7 Registry Editor, check whether the following key has somehow been modified:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\FontSubstitutes

registry

Try restoring it to the defaults, i.e., [first and foremost] MS Shell Dlg -> Microsoft Sans Serif — possibly try other values as well, if brave enough or/and you have time to play. [The result should be immediately visible — even without trying, you should see plenty of space to the right of these numbers, in their respective fields — after logging off and back on, and opening your windows colour picker.]

Pol_JS

Posted 2018-11-14T19:00:27.810

Reputation: 1

Thank you for your answer but I probably didn't explain it right. It has nothing to do with fonts or visibility. The problem is that, for some unknown reason, those input text boxes for red/green/blue and hue/saturation/luminance values have maximum text length set to 2 characters. It's not possible to enter 3-digit numbers by manual typing or for example pasting from the clipboard. When I paste for example number the 255 into all three color text boxes, instead of white color, the selected one is almost black because it cut the last digit during pasting, i.e. pasted 25 instead of 255. – Dawid Ferenczy Rogožan – 2019-09-03T14:41:48.433