如何删除文件关联

时间:2011-08-26 11:50:33

标签: .net windows file registry associations

我想知道应该删除哪些信息,以便删除与特定文件扩展名的程序关联。

我显然知道扩展存储在HKEY_CLASSES_ROOT键中,但我不确定删除或保留的内容。卸载程序时,我应该删除整个.EXTENSION键吗?我应该备份密钥的原始数据吗?或者只是清除默认键值(程序ID)?

请指教。

1 个答案:

答案 0 :(得分:1)

首先,我建议您使用内置的ftype and assoc commands,而不是直接编辑HKCR。 (即使他们改变了Reigstry的安排方式,毫无疑问,微软将继续以正确的方式支持这些命令。)

我猜你对文件关联的处理方式取决于扩展程序的命令...(你可以查找常见的文件扩展名here。)如果你的应用程序使用罕见的文件扩展名,那么我会说你可以安全删除扩展名关联(assoc .ext=)和文件类型(ftype myfiletype=)。

但是如果你的应用程序注册了一个公共文件扩展名 - 比如'.TXT' - 那么你应该尽力优雅地处理它。如果您希望真的好,可以在安装期间保存现有文件关联,然后在卸载期间将它们还原为这些原始值。或者在像'.TXT'这样的情况下,有一个共同的默认值(NOTEPAD.EXE),你可以将它设置回来。否则,我可能会删除关联(assoc .ext=),以便用户下次双击文件时提示他们选择一个程序(将为它们构建ftype值)。