问题标签 [midl]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
com - 如何向 Inproc COM 服务器添加和实现新接口
我已经实现了一个 windows 桌带(使用 windows SDK 示例)并且需要一种与之通信的方式(一个调用以启动 IPC 与另一个应用程序,IPC 已经在工作)。
我的 COM 经验非常有限,但根据我所见,我认为应该可以创建一个新的 COM 接口,在桌带对象(我可以通过 IBandSite 访问)中实现它,为我的调用 QueryInterface()自己的接口就可以了,然后用它直接调用到桌带。
我已经尝试过了,但很快就遇到了问题(主要原因是:我不知道我大部分时间实际上在做什么......)
所以,我的问题是:这是一种可行的方法吗?如果可行的话,有人可以给我一个关于如何进行的大纲(或者指出一些可能有用的资源 - 没有阅读 COM 书籍,这将是我的最后一种方法) . 如果不是,是否会想到替代方案?
感谢您的时间和最良好的祝愿,
雷内。
.net - 如何为 MSHTML v9 编译 .dll。我目前收到 100 个“MIDL 2035:预期的常量表达式”错误
我是 .net 开发人员,我正在尝试为 MSHTML v9 编译 .tbl 和 .dll 以在我的 .net 应用程序中使用。
我找到了以下构建 MSHTML v8 .dll 的说明:
以上对MSHTML v8非常有用,但是当我尝试使用MSHTML v9做同样的事情时,我在尝试运行时收到 100 个“错误 MIDL 2035:预期的常量表达式”错误:
关于为什么 MSHTML v9 无法构建的任何线索?我认为它一定是我的环境,我正在运行 Windows 7 64x Ultimate 并安装了 VS2010 Ultimate 并安装了 Windows SDK 7.1。我的 PATH 变量中有以下相关路径:
非常感谢任何帮助,谢谢!:)
com - MIDL CoClass 派生自同一文件中定义的接口
当我从我在另一个代理服务器项目中定义的接口派生所述接口时,为什么我不能在 idl 文件中定义接口,然后让 CoClass 在同一文件内的库块中派生它?
1>midl\oleaut32.dll:错误 MIDL2020:错误生成类型库:LayOut 失败:IMyInterfaceB (0x800288C6
c++ - 迁移到 VS2010 后出现奇怪的 IDL 错误
这是我们在 VS2008 下成功使用的一个非常简单的 IDL 接口(为简洁起见缩短了参数列表):
我们正在将解决方案迁移到 VS2010 SP1。现在我们有以下构建错误:
这总是像使用 VS2008 SP1 的魅力一样工作注意,我已经替换in
为[in]
. 在摸不着头脑的时候,我发现 MIDL 2010 也不喜欢in
但不说[in]
.
请注意,这unsigned short
是可以接受的(通过反转接口的 2 个方法观察到)。
怎么会?我怎样才能让 MIDLstring
再次理解?
TIA。
c++ - MIDL 中的 size_t、void* 和 hbitmap 数据类型等效项
我应该使用哪些 MIDL 数据类型来声明 C++ 数据类型(如size_t
、void*
和HBITMAP
其他类型的 winapi 句柄(HANDLE
、HFONT
等)的接口方法参数?
c++ - 在 Windows 2008 上调用 RPC 调用时“不支持操作”
该应用程序使用 Microsoft RPC 进行进程间通信。该应用程序在 Windows Server 2003(服务器 WS2003 或 WS 2008 --- 客户端 WS2003)上完美运行。但是当客户端在 Windows Server 2008 上时,应用程序会失败。
这是客户端部分的流程
RpcStringBindingCompose(.....) RpcBindingFromStringBinding(.....) RpcMgmtIsServerListening(....) //这个方法在WS2008上也返回成功
在此之后,每当我调用 IDL 文件中定义的方法 rpcMethod(...)(使用 MIDL 编译器 6.00.0366 生成的代码)时,它都会引发异常(错误代码 1764)“不支持操作”。MIDL 生成的存根重定向到抛出此异常的 NdrClientCall2()。
此处报告了类似问题:不支持操作
c++ - 如何编写 COM dll?
为了让自己变得更好,我试图让我的 dll 的 COM 兼容,我想我只需要扩展/实现一些接口并完成工作,但现在我正处于十字路口,
1) 我应该学习 MIDL 吗?
2) 我应该安装 ATL(我正在运行 VC++Express)吗?
3) 继续阅读 C++ 教程 (http://progtutorials.tripod.com/COM.htm) 并希望我的 Express 版太有限?
vb6 - MIDL 中等效的 VB6 布尔数据类型
哪种 MIDL 数据类型等于 VB6 的Boolean
类型?
visual-studio - 在 Visual Studio 中分离 MIDL 项目
我正在尝试为midl
编译器生成的文件创建单独的项目。我有定义的.idl
文件rpc
。Midl
编译器生成两个文件。对于服务器和客户端。我需要将生成文件中的符号添加到其他项目中。我的问题是如何为 midl 编译正确设置项目。
visual-studio - midl 编译器随机崩溃
我有一个定义 idl 的项目,它使用 MIDL 编译它。问题是当 MIDL 处理 C:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\Include\WTypes.Idl 时我遇到了随机崩溃
编译器选项是: midl /mktyplib203 /win32 /tlb lib\sample.olb /h lib\sample.h "$(InputPath)"