如何确定文件是否为未知文件类型C#

时间:2016-05-15 17:27:35

标签: c# file-extension file-type

我有文件扩展名的字符串。我认为问题是自我解释

编辑:
- 电脑不知道(窗户);没有安装默认程序的文件

1 个答案:

答案 0 :(得分:2)

直接在注册表中的HKEY_CLASSES_ROOT下面有一系列常用(并不常见)文件扩展名的密钥。

在第一种情况下,如果扩展密钥不存在,那么系统真的不知道。

在每个键下面可以有其他键:

  
      
  • PersistentHandler
  •   
  • OpenWithList
  •   
  • OpenWIthProgIds
  •   
  • ShellEx的
  •   
  •   

取决于文件的类型。

这些密钥中的一个(或多个)的存在将告诉您系统是否可以打开文件以及可以安装哪些程序。

您可以通过this example

访问注册表项

例如,如果您使用扩展名称呼叫RegistryKey class,它将通过呼叫成功还是失败来告诉您它是否存在。如果成功,则可以检查子键以查看可以打开文件的程序(如果有)。