【mke】不包含命令表的mke怎么修改

如题,dll里只封装了一些基础函数,不需要命令表。应该如何修改mke文件?

把例子里, Compile source files这一部分关于命令表的删除:

$(genSrc)$(appName)cmd.h : $(baseDir)$(appName)cmd.r

$(rscObjects)$(appName)cmd.rsc : $(baseDir)$(appName)cmd.r

再把link MDL Application这一部分 $(rscObjects)$(appName).mi  : $(rscObjects)$(appName)cmd.rsc 冒号后面的依赖删除,会报mi文件未生成的错误。

Parents Reply
  • 呃,我的原话是不“直接”加载,只是想这个dll里封装一些工具函数供.net调用。.net BUG太多了,目前只打算用来做交互,主要逻辑还是在C++中实现。

    如果您是写一些供.NET调用的托管类的话,似乎需要用C++/CLI。请参考SDK中的例子

    C:\Program Files\Bentley\MicroStationCONNECTSDK\examples\MixedMode\ElementPropertiesExample

    它只生成一个DLL。没有对应的ma

    看了下您给出链接中,.r文件中需要实现DllMdlApp结构,就想问下这是必须的吗?感觉我的需求并不需要这个结构。

    这个是为了生成对应的ma文件的,如果仅仅是DLL,确实是不需要的。

    另外,Bentley的C++代码貌似无法直接用vs编译吧?

    如果您对VS的使用比较熟悉的话,是完全可以的。需要手工配置VS项目中的外来头文件位置和外来库文件位置即可。

    我们执行bmake命令其实它后台也是在调用VS的编译器cl.exe和链接器link.exe,您仔细看黑窗口的输出信息,应该能找到痕迹的。



Children