|
1
7
C-is中的COM编程 非常 痛苦,但并非不可能。不过,责任到此为止。类型库的目的是让一个工具自动生成COM接口和co类声明,以便您可以在代码中使用它们。与.h文件非常相似,但与语言无关。.NET等价物是程序集中的元数据。 问题是,该工具无法将a.tlb转换为C声明。我相信你对“导入”很熟悉,这就是MSVC使用的东西。但是它生成C++代码,智能指针帮助您创建COM对象,调用它的接口方法并处理错误。如果有一个工具可以生成C,那么这是一个非常隐蔽的秘密。 一个诀窍让我想到,可以使用OleView.exe、File+View TypeLib来查看类型库的内容。这个视图被反编译成接口定义语言IDL。您可以将此文本复制并粘贴到.idl文件中,并使用midl.exe和/header命令行选项对其进行编译。这将生成一个.h文件,其中包含C++和接口的C声明。应该让您更接近,只要确保类型库是合理稳定的,这样您就不必经常这样做了。 |
|
|
2
1
|
|
|
3
0
C和C++都没有一个输入预处理器指令。 |
|
|
4
-2
你可以用 regasm with /tlb option 在windows注册表中注册类型。之后,您可以像C++代码中的普通COM调用一样创建实例。 来自MSDN:
|
|
|
tryingmybest09 · 设置出生日期排序不正确 4 年前 |
|
|
Dane234345 · 从另一个文件中的函数导入变量 4 年前 |
|
|
MBF · PHP导入/解析XML文件内容保存到数据库 4 年前 |
|
|
benroths · PyQt5/Python3参考qss文件 4 年前 |
|
|
rm.rf.etc · Jupyter笔记本电脑组织,带有可重用代码 4 年前 |
|
|
artooras · 从本地文件导入到下一个文件。配置。js 4 年前 |
|
|
ash · 在Solr中索引JSON文件名和JSON内容 8 年前 |