Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/153.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 有没有办法将我的程序与Wine编译部分链接起来?_C++_Linux_Gcc_Wine - Fatal编程技术网

C++ 有没有办法将我的程序与Wine编译部分链接起来?

C++ 有没有办法将我的程序与Wine编译部分链接起来?,c++,linux,gcc,wine,C++,Linux,Gcc,Wine,我正在尝试在Linux中使用windows dll功能。 我目前的解决方案是编译一个单独的wine应用程序,它使用dll并通过IPC在dll和主应用程序之间传输请求/响应 这是可行的,但与简单的dll调用相比,这是一个真正的开销 我看到wine编译的程序通常是一个引导脚本和一些.so(根据文件实用程序),这是一个普通的linux动态链接库 有没有办法把它直接链接到我的申请表上?有任何手册吗?您可以使用编写一个可以使用Windows DLL的Linux应用程序 编辑: 供日后参考: libtest

我正在尝试在Linux中使用windows dll功能。 我目前的解决方案是编译一个单独的wine应用程序,它使用dll并通过IPC在dll和主应用程序之间传输请求/响应

这是可行的,但与简单的dll调用相比,这是一个真正的开销

我看到wine编译的程序通常是一个引导脚本和一些.so(根据文件实用程序),这是一个普通的linux动态链接库

有没有办法把它直接链接到我的申请表上?有任何手册吗?

您可以使用编写一个可以使用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);
}

我找不到任何有助于实现我的目标的东西。甚至wine/windows/winbase.h中的
LoadLibrary()
GetProcAddress()
函数都找不到?是的,你完全正确-我可以像你以前的例子那样编译程序,现在我尝试简单地制作一个库并编译到主应用程序-它可以工作。到目前为止,在没有加载dll的情况下尝试了此方法,但总体上是可行的。谢谢。如果您收到:
致命错误:windows.h:没有此类文件或目录
,请安装wine1.6-dev软件包。
$ winegcc -m32 libtest.c 
$ ./a.out
536936448