c# - 从 windows 获取所有支持的扩展名列表
问题描述
我有一个要求,我需要从 Windows 操作系统获取所有支持的扩展。现在有不同的 Windows 版本提供不同的已知扩展名(取决于他们安装的应用程序),我需要一个脚本/代码,我可以使用它从操作系统中获取所有已知的扩展名。
解决方案
我不知道任何特定的 API,但最终这些数据存储在 Registery 中。对于这个领域,我会向您指出这篇 MSDN 文章,其中包含有关该主题的更多信息:
但是,有几点需要考虑:
由于程序在做我只能描述为“扩展战争”的事情,因此与扩展相关的程序现在留给用户选择。所以写访问会很棘手。
另一个缺点是,不再存在简单的 1:1 关系。每个可以处理此扩展的程序都将在 Windows 中注册。实际使用的选项之一现在取决于用户。不幸的是,我不知道这如何改变注册表中的底层数据结构。或者存储其他选项的位置。
推荐阅读
- java - 读取对象时出现 ClassNotFound 错误 (Tomcat)
- react-native - redux store 更改时如何重新渲染react hook函数组件?
- javascript - 从 ASP.Net MasterPage 调用 JS 函数
- python - 如何在 .Doc 文件上写入字符串
- laravel - EloquentORM 中 ON 语句 (JOIN) 中 AND 语句的等价性
- javascript - 媒体查询在 chrome 和 Firefox 桌面上工作,但在移动设备上不工作
- javascript - 如何从类名中获取动态 id?
- json - 错误:在颤振中使用 fromjson 时,类型“String”不是“index”类型“int”的子类型
- r - 向上舍入到下一个显着数字
- javascript - 如何使用javascript将数据从一个html页面发送到另一个页面