[入门] alias int (*FARPROC)()与DLL函数动态加载
qiezi
2007-05-14
def文件里加上:
EXPORTS dllprint = D5mydll8dllprintFZv 把要改名的都列起来,其实一样很烦人。。如果D支持在代码中改名就好了: export("dllprint") void dllprint() { printf("hello dll world\n"); } 当然目前是没有支持。如果受不了这名字,就把方法声明成extern(C)吧: export extern(C) void dllprint() { printf("hello dll world\n"); } 这个名字不会被打乱了。 |
|
oldrev
2007-05-14
为什么要用重整过的名字来动态加载?
如果是DLL要提供给其他语言使用的话用 export extern(Windows) 声明,如果只是D语言用的话 可以导出几个export extern(Windows) interface xxx createxxxObject(),或者直接静态加载。 |