You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

CLSID_FileOpenDialog注册表位置查询及CID COM对象技术问询

查找通用项对话框(CID)COM对象及CLSID_FileOpenDialog的注册表位置

一、CLSID_FileOpenDialog的注册表位置

CLSID_FileOpenDialog的标准CLSID是{DC1C5A9C-E88A-4dde-A5A1-60F82A20AEF7},对应的注册表项位于:

  • HKEY_CLASSES_ROOT\CLSID\{DC1C5A9C-E88A-4dde-A5A1-60F82A20AEF7}
  • HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{DC1C5A9C-E88A-4dde-A5A1-60F82A20AEF7}

该COM对象的InProcServer32键默认值指向shell32.dll,是Vista及后续系统中新版通用文件对话框的核心实现。

二、关于CID相关COM对象的说明

  • 你找到的comdlg32.dll对应的CLSID{725F645B-EAED-4fc5-B1C5-D9AD0ACCBA5E}确实是Vista之前的旧版通用对话框组件,新版已不再将其作为核心依赖。
  • HKEY_USERS\S-1-5-21-1285309903-269343738-3178715341-1001\Software\Microsoft\Windows\CurrentVersion\Explorer\CIDOpen是用户个性化配置项,并非COM对象的CLSID注册项,仅存储当前用户对通用文件对话框的设置信息,和COM组件注册无关。
  • 新版通用文件对话框的核心COM对象分为两类:
    • 打开对话框:CLSID_FileOpenDialog(对应上述CLSID)
    • 保存对话框:CLSID_FileSaveDialog,CLSID为{C0B4E2F3-BA21-4773-8DBA-335EC946EB8B},同样注册在HKEY_CLASSES_ROOT\CLSID和HKLM\SOFTWARE\Classes\CLSID路径下。

三、验证方式

  1. 打开注册表编辑器,导航到上述CLSID路径,检查InProcServer32键的默认值是否为shell32.dll。
  2. 通过代码调用CoCreateInstance创建该CLSID的实例,可直接验证其为新版通用文件对话框的实现。

内容的提问来源于stack exchange,提问作者Okapi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.19 19:15:51