这个问题在这里已有答案:
如果我跑了 assoc
扩展的命令行实用程序,它显示我在注册表中设置的扩展名的文件类型/描述。但是,如果我去 控制面板 - >默认程序 - 设置关联 然后我看到了不同的描述和默认程序。
它曾经是设置两个键:
HKCR\.ext
(默认)= 识别码- 识别码 (默认)=“文件描述”
- \ DefaultIcon(默认)= 一些图标
- \ Shell \ Open \ Command(默认)= 一些编辑
但现在看来在其他地方有一个覆盖,这是默认程序列表中显示的内容。
我的问题是,这个覆盖的关联信息存储在哪里?我假设它在注册表中,但我没有在我期望它的键中看到它。我相信这在Vista时间框架中有所改变,但它可能也在XP中。
更新: 由于存在一些混淆,请进行以下测试。将文件重命名为某个新扩展名。在上面提到的注册表项中创建关联。然后右键单击该文件, 打开用 并选择一个不同的程序(检查以使其成为默认程序)。现在检查注册表。它没有变化,但现在文件与不同的描述,图标和默认程序相关联。
HKEY_CLASSES_ROOT
地图也是。那些存储什么的assoc
命令返回。但是返回的覆盖信息 默认程序 在控制面板中是不同的。