TCS*_*TCS 1 c++ com winapi windows-7
我试图找出IFileOperation在Windows 7中实现的位置.据我所知,从MSDN页面它是在shell32.dll中.
因此,我使用DLL导出查看器(来自NirSoft)检查了shell32.dll中的所有COM对象,并且IFileOperation不是其中之一.
我在注册表中搜索了CLSID_FileOperation{3ad05575-8857-4850-9277-11b85bdb8e09},我发现(据我所知)它是在shell32.dll中.
但是如果我找不到使用DLL导出的COM导出怎么可能呢?
DLL不需要导出任何特殊的东西来实现该接口.注册表告诉操作系统DLL实现了什么接口.程序调用时CoCreateInstance,操作系统可以在注册表中查找给定的CLSID.然后,操作系统加载相关的DLL并调用其DllGetClassObject函数来获取IClassFactory对象.然后,操作系统使用该接口来获取实现所请求接口的内容.