Windows 7 为什么HKCR\PNG文件上下文菜单在Windows XP中有效,但在Windows 7中无效?

Windows 7 为什么HKCR\PNG文件上下文菜单在Windows XP中有效,但在Windows 7中无效?,windows-7,registry,windows-7-x64,file-association,Windows 7,Registry,Windows 7 X64,File Association,我一直在尝试添加一个命令来处理64位Windows 7上的PNG文件: Windows Registry Editor Version 5.00 [HKEY_CLASSES_ROOT\.png\OpenWithProgids] "pngfile"="" [HKEY_CLASSES_ROOT\pngfile\shell\PNGProcess] @="Process" [HKEY_CLASSES_ROOT\pngfile\shell\PNGProcess\command] @="\"C:\\P

我一直在尝试添加一个命令来处理64位Windows 7上的PNG文件:

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\.png\OpenWithProgids]
"pngfile"=""

[HKEY_CLASSES_ROOT\pngfile\shell\PNGProcess]
@="Process"

[HKEY_CLASSES_ROOT\pngfile\shell\PNGProcess\command]
@="\"C:\\Program Files (x86)\\PNGProcess\\pngproc.exe\" \"%1\""

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.png\UserChoice]
"Progid"="PBrush"

[HKEY_CURRENT_USER\Software\Classes\.png]
@="png_auto_file"
它适用于Windows XP,但不适用于64位Windows 7

在Windows 7 64位系统上,相同的注册表添加操作适用于
HKCR\JPEG文件
,但
HKCR\pngfile
不起作用

我反复检查以验证这些条目是否确实存在于注册表中的正确位置。是的

对此感到困惑的是,我检查了其他程序,这些程序将上下文菜单项添加到图形文件扩展名中,并且可以肯定,即使使用久负盛名的GIMP,这个问题也存在

我试图找到有关PNG和Windows7的已知特性的信息,但找不到任何

你知道Windows7中的
pngfile
有什么特别之处吗

更新:按照下面的建议,我在右键单击.png文件(以访问上下文菜单)时捕获了相关操作,它会自动重新创建值
png\u auto\u文件

4:05:53.3456954 PM  Explorer.EXE    2696    RegOpenKey  HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.png\UserChoice    SUCCESS Desired Access: Query Value
4:05:53.3457486 PM  Explorer.EXE    2696    RegQueryValue   HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.png\UserChoice\Progid SUCCESS Type: REG_SZ, Length: 14, Data: PBrush
4:05:53.3457983 PM  Explorer.EXE    2696    RegCloseKey HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.png\UserChoice    SUCCESS 
4:05:53.3532997 PM  Explorer.EXE    2696    RegOpenKey  HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.png\UserChoice    SUCCESS Desired Access: Query Value
4:05:53.3533494 PM  Explorer.EXE    2696    RegQueryValue   HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.png\UserChoice\Progid SUCCESS Type: REG_SZ, Length: 14, Data: PBrush
4:05:53.3534160 PM  Explorer.EXE    2696    RegCloseKey HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.png\UserChoice    SUCCESS 
4:05:53.3605580 PM  Explorer.EXE    2696    RegOpenKey  HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.png\UserChoice    SUCCESS Desired Access: Query Value
4:05:53.3606023 PM  Explorer.EXE    2696    RegQueryValue   HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.png\UserChoice\Progid SUCCESS Type: REG_SZ, Length: 14, Data: PBrush
4:05:53.3606462 PM  Explorer.EXE    2696    RegCloseKey HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.png\UserChoice    SUCCESS 
4:05:53.3670219 PM  Explorer.EXE    2696    RegOpenKey  HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.png\UserChoice    SUCCESS Desired Access: Query Value
4:05:53.3670721 PM  Explorer.EXE    2696    RegQueryValue   HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.png\UserChoice\Progid SUCCESS Type: REG_SZ, Length: 14, Data: PBrush
4:05:53.3671219 PM  Explorer.EXE    2696    RegCloseKey HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.png\UserChoice    SUCCESS 
4:05:53.3886634 PM  Explorer.EXE    2696    RegOpenKey  HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.png\UserChoice    SUCCESS Desired Access: Query Value
4:05:53.3887094 PM  Explorer.EXE    2696    RegQueryValue   HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.png\UserChoice\Progid SUCCESS Type: REG_SZ, Length: 14, Data: PBrush
4:05:53.3887554 PM  Explorer.EXE    2696    RegCloseKey HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.png\UserChoice    SUCCESS 
4:05:53.4146451 PM  Explorer.EXE    2696    RegOpenKey  HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.png\UserChoice    SUCCESS Desired Access: Query Value
4:05:53.4146940 PM  Explorer.EXE    2696    RegQueryValue   HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.png\UserChoice\Progid SUCCESS Type: REG_SZ, Length: 14, Data: PBrush
4:05:53.4147417 PM  Explorer.EXE    2696    RegCloseKey HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.png\UserChoice    SUCCESS 
4:05:53.7282785 PM  Explorer.EXE    2696    RegOpenKey  HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.png\UserChoice    SUCCESS Desired Access: Query Value
4:05:53.7283091 PM  Explorer.EXE    2696    RegQueryValue   HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.png\UserChoice\Progid SUCCESS Type: REG_SZ, Length: 14, Data: PBrush
4:05:53.7283375 PM  Explorer.EXE    2696    RegCloseKey HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.png\UserChoice    SUCCESS 
4:05:53.7680034 PM  Explorer.EXE    2696    RegOpenKey  HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.png\UserChoice    SUCCESS Desired Access: Query Value
4:05:53.7680323 PM  Explorer.EXE    2696    RegQueryValue   HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.png\UserChoice\Progid SUCCESS Type: REG_SZ, Length: 14, Data: PBrush
4:05:53.7680595 PM  Explorer.EXE    2696    RegCloseKey HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.png\UserChoice    SUCCESS 
4:05:53.7848014 PM  Explorer.EXE    2696    RegOpenKey  HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.png\UserChoice    SUCCESS Desired Access: Query Value
4:05:53.7848311 PM  Explorer.EXE    2696    RegQueryValue   HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.png\UserChoice\Progid SUCCESS Type: REG_SZ, Length: 14, Data: PBrush
4:05:53.7848591 PM  Explorer.EXE    2696    RegCloseKey HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.png\UserChoice    SUCCESS 
4:05:53.8001734 PM  Explorer.EXE    2696    RegOpenKey  HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.png\UserChoice    SUCCESS Desired Access: Query Value
4:05:53.8002023 PM  Explorer.EXE    2696    RegQueryValue   HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.png\UserChoice\Progid SUCCESS Type: REG_SZ, Length: 14, Data: PBrush
4:05:53.8002303 PM  Explorer.EXE    2696    RegCloseKey HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.png\UserChoice    SUCCESS 

这些键可能会失败的原因有很多,而且您几乎没有提供任何信息,因此这些是常见的故障排除提示

  • 您没有说,但是您是否已将
    .png
    文件链接到
    pngfile
    ProgID?您可以检查
    HKCR\.png
  • 是否为
    .png
    文件分配了默认程序/
    UserChoice
    ,该程序会将ProgID更改为
    pngfile
    以外的内容?您可以通过查找
    HKEY\u CURRENT\u USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.png\UserChoice
    并检查该ProgID来进行检查
  • 此“PNGProcess”动词是否有
    HKCU
    版本指向不同的应用程序或配置错误?在
    HKCU\Software\Classes\.png
  • 问题编辑后更新:


    .reg
    文件中存在不一致。您正在将
    PNGProcess
    动词添加到
    pngfile
    ProgID,但是您正在将
    UserChoice
    设置为
    PBrush
    ,然后将默认的
    .png
    ProgID设置为
    png\u auto\u文件
    。这是三个不同的ProgID。它们必须是相同的。

    +1已经有了非常有用的答案。非常感谢。我根据你的问题更新了我的帖子。看起来
    .png\UserChoice
    是罪魁祸首,因为
    .jpg
    的行为与预期不符。我会把它删除,看看会发生什么。@bill等待时间再深入一层。抓取
    过程监视器
    ,并在观察到正在重新生成的密钥时运行捕获。检查它是否为
    explorer.exe
    。在创建该密钥之前,查找其检查/失败的其他密钥。打开png文件时运行cap也很有帮助,这样你就可以了解注册表项检查顺序,这样你就知道在哪里使用你的密钥了。@BillTheApe我错过了你之前的一个问题编辑-检查我的editNote注释#2(5小时前):我完全删除了
    UserChoice
    ,这没有帮助。所以这个谜团的答案并不在你的编辑中。顺便说一句,不是我把
    PBrush
    添加到
    UserChoice
    。。。并不是我将默认的
    .png
    ProgID设置为
    png\u auto\u文件
    。。。微软的某个小精灵在捉弄我,我不知道是什么,也不知道为什么。删除用户选择实际上为我解决了这个问题。谢谢