我正在寻找“典型”的方式来导航MSDN让COM类做他们想做的事。
示例问题:我正在寻找一种解锁本地文件的API方法(以编程方式从文件中删除网络区域/标记)。
我在stackoverflow.com上发现了一篇关于clsid_persistentzoneidentifier的帖子。所以我在MSDN中搜索并得到了http://msdn.microsoft.com/en-us/library/ms537029(VS.85).aspx。我正在寻找的是他们到达这个网址后所做的事情。从这个位置,我无法确定操作顺序应该是什么。如何将此IZoneIdentifier连接到IPersistFile?必须有一些基本的东西,我缺少与COM相关的文档。 MSDN有接口和对象,但没有什么可以帮助我可视化各种类型的“序列”图。没有什么能让我理解哪些COM对象来自同一个类。因此可以/或应该是QueryInterfaced,adn应该是CoCreated。
答案 0 :(得分:4)
这方面的文件表明了一些事情。
首先,您可以调用CoCreateInstance
,传递CLSID_PersistentZoneIdentifier
以获得这两个接口的实现:
它还说:
使用
IPersistFile
附加对象 到目标文件和IZoneIdentifier
检查或操纵该区域 ID。
话虽如此,您可以在此处查看IPersistFile
的文档:
http://msdn.microsoft.com/en-us/library/ms687223(VS.85).aspx
它显示有一个Load
method,你想用文件名调用它来加载实现,并提供有关文件的详细信息。
从那里,您可以在QueryInterface
实施中调用IUnknown
interface以获取IZoneIdentifier
接口,然后调用其上的Remove
method将区域设置为本地计算机
答案 1 :(得分:1)
为此目的,如果文档中没有明显的内容,我希望找到使用相关API的示例程序:使用Google,或者使用相关的任何一个Microsoft SDK。
Microsoft SDK,for example this one,包含示例程序。