我正在尝试在Linux中使用Windows DLL功能。 我目前的解决方案是一个单独的葡萄酒应用程序的汇编,它使用dll并在dll和主应用程序之间通过IPC传输请求/响应。
这很有效,但与简单的dll调用相比,这是一个真正的开销。
我看到wine编译的程序通常是一个bootstrapping脚本和一些.so,它(根据 file 实用程序)是普通的linux动态链接库。
有没有办法将.so直接链接到我的应用程序?有没有手册?
答案 0 :(得分:6)
您可以使用Winelib编写可以使用Windows DLL的Linux应用程序。
修改强>
供将来参考:
libtest.c
:
#include <stdio.h>
#include <windows.h>
int main(int argc, char* argv[])
{
HMODULE h;
h = LoadLibrary("cards.dll");
printf("%d\n", h);
}
执行:
$ winegcc -m32 libtest.c
$ ./a.out
536936448