The*_*ask 1 windows com winapi d
我知道windows.h标题,有D的模块:
core.sys.windows.windows
Run Code Online (Sandbox Code Playgroud)
但关于这样的事情:
#include <comdef.h>
#include <Wbemidl.h>
Run Code Online (Sandbox Code Playgroud)
D是否支持它们,如果支持,我如何导入
我不是Windows编程大师,但我很确定你必须自己编写一个包装wbemuuid.lib库,因为编译器通常默认不提供它.如您所知,您可以使用任何核心Windows库中的任何C函数.
只需查看Wbemidl.hMinGW项目中的文件,您似乎就会有很多工作要做. - 你必须包装wbemcli.h,wbemprov.h,wbemtran.h和wbemdisp.h.
看看std/c/windows/com.d如何做到这一点.有几个与WindowsAPI相关的项目,其中一个就是这个项目:http://dsource.org/projects/bindings/wiki/WindowsApi.它会帮助你开始.
从个人角度来看,我认为最好的方法是为每个WindowsAPI库提供绑定/包装.在这种情况下,我将在此包中创建wbemuuid包,以及wbemcli,wbemprov,wbemtran和wbemdisp模块.
最后,您很可能想要分析D中现有的COM支持.Lionello的" D中的现代COM编程 "幻灯片.