Windows 无法在注册表中设置DefaultIcon
我正在尝试更新Windows注册表,为我的自定义文件扩展名添加一个图标,但迄今为止我没有成功。我当前的版本最接近。不幸的是,我的文件的图标仍然是一个通用的内置Windows图标(见下面的屏幕截图) 此时,我最好的猜测是我的Windows 无法在注册表中设置DefaultIcon,windows,icons,registry,regedit,Windows,Icons,Registry,Regedit,我正在尝试更新Windows注册表,为我的自定义文件扩展名添加一个图标,但迄今为止我没有成功。我当前的版本最接近。不幸的是,我的文件的图标仍然是一个通用的内置Windows图标(见下面的屏幕截图) 此时,我最好的猜测是我的.ICO文件可能有问题。我已经分享了 下面是我正在使用regedit进行的完整注册表更新。如您所见,我还将文件扩展名与执行的.bat文件相关联。这很有效。另外,在Windows资源管理器中显示的类型是PartQuest Archive,这也很好(参见上面的屏幕截图)。唉,图标
.ICO
文件可能有问题。我已经分享了
下面是我正在使用regedit
进行的完整注册表更新。如您所见,我还将文件扩展名与执行的.bat
文件相关联。这很有效。另外,在Windows资源管理器中显示的类型是PartQuest Archive,这也很好(参见上面的屏幕截图)。唉,图标最后一个条目没有骰子
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\pqunzip]
@="PartQuest Archive"
[HKEY_CLASSES_ROOT\pqunzip\shell]
[HKEY_CLASSES_ROOT\pqunzip\shell\open]
[HKEY_CLASSES_ROOT\pqunzip\shell\open\command]
@="\"C:\\MentorGraphics\\PartQuestTools\\SDD_HOME\\common\\win32\\scripts\\pqunzip.bat\" \"%1\""
[HKEY_CLASSES_ROOT\.pqz]
@="pqunzip"
[HKEY_CLASSES_ROOT\.pqz\DefaultIcon]
@="\"C:\\MentorGraphics\\PartQuestTools\\SDD_HOME\\common\\win32\\config\\decrypted.ico\""
我还尝试在文件名的末尾添加一个,1
,因为.ICO
文件中可能嵌入了两个图标。这是没有区别的
为了更好的衡量,每次更改后我都会重新启动。我不确定这是否必要
这里的Windows专家提供的任何提示都将不胜感激 所以我做了一点逆向工程,根据7Zip的文件关联来解决这个问题。结果是,
DefaultIcon
键条目应该是应用程序的子项,而不是文件名。因此,在我的例子中,我需要它与pqunzip
关联,而不是与.pqz
关联:
[HKEY_CLASSES_ROOT\pqunzip\DefaultIcon]
@="\"C:\\MentorGraphics\\PartQuestTools\\SDD_HOME\\common\\win32\\config\\decrypted.ico\""
为了最大程度地清晰起见,这是我的.req
文件的全部内容,它可以按预期工作:
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\pqunzip]
@="PartQuest Archive"
[HKEY_CLASSES_ROOT\pqunzip\shell]
[HKEY_CLASSES_ROOT\pqunzip\shell\open]
[HKEY_CLASSES_ROOT\pqunzip\shell\open\command]
@="\"C:\\MentorGraphics\\PartQuestTools\\SDD_HOME\\common\\win32\\scripts\\pqunzip.bat\" \"%1\""
[HKEY_CLASSES_ROOT\pqunzip\DefaultIcon]
@="\"C:\\MentorGraphics\\PartQuestTools\\SDD_HOME\\common\\win32\\config\\decrypted.ico\""
[HKEY_CLASSES_ROOT\.pqz]
@="pqunzip"