有多种方法可以确定处理具有特定文件扩展名的文件的应用程序。 OpenWithList 和 OpenWithProgids 谓词是在文件扩展名的注册表项下指定文件处理程序的两种方法。
在 Windows 资源管理器中右键单击某个文件时,会看到打开命令。 如果多个产品与扩展相关联,则会看到一个打开方式子菜单。
通过在 HKEY_CLASSES_ROOT 中为文件扩展名设置 OpenWithList 键,可以注册不同的应用程序以打开扩展名。 在此键下列出的文件扩展名应用程序显示在打开方式对话框的推荐程序标题下。 以下示例显示了为打开 .vcproj 文件扩展名而注册的应用程序。
通过添加 OpenWithList 键,可以声明应用程序支持文件扩展名,即使另一个应用程序拥有该扩展的所有权也是如此。 这可能是应用程序的未来版本,也可能是另一个应用程序。
编程标识符 (ProgIDs) 是 ClassID 的友好版本,用于标识应用程序或 COM 对象的版本。 每个可共同创建的对象都应该有自己的 ProgID。 例如,VisualStudio.DTE.7.1 启动 Visual Studio .NET 2003,而 VisualStudio.DTE.10.0 启动 Visual Studio。 作为项目类型或项目项类型的所有者,必须为文件扩展名创建特定于版本的 ProgID。 这些 ProgID 可能是冗余的,因为不止一个 ProgID 可以启动同一应用程序。 有关详细信息,请参阅注册文件扩展名的谓词。
使用以下命名约定来命名版本文件 ProgID,以避免与其他供应商的注册重复:
可以通过将版本控制 ProgID 作为值添加到 HKEY_CLASSES_ROOT
将所需的 ProgID 添加为 REG_NONE 类型的值。 以下代码提供了为文件扩展名 (.ext) 注册 ProgID 的示例。
指定为文件扩展名默认值的 ProgID 是默认文件处理程序。 如果修改 Visual Studio 早期版本随附的文件扩展名的 ProgID,或者其他应用程序可以接管该扩展,则必须为文件扩展名注册 键,并在列表中指定新的 ProgID 以及你支持的旧 ProgID。 例如:
如果旧 ProgID 具有与之关联的谓词,则这些谓词也会显示在快捷菜单中的打开方式 产品名称下。
- 关于文件扩展名
- 注册文件扩展名的谓词
版权声明:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若内容造成侵权、违法违规、事实不符,请将相关资料发送至xkadmin@xkablog.com进行投诉反馈,一经查实,立即处理!
转载请注明出处,原文链接:https://www.xkablog.com/hd-yjs/45155.html