我在c ++中编写了一个在c#apps上运行完美的dll。 它是这样的
#include "stdafx.h"
#include "fun.h"
extern "C" __declspec(dllexport)double Add(double a, double b,double k);
extern double Add(double a, double b,double k)
{
return a+b+k;
}
现在我想在MAC应用程序上运行这个相同的DLL ..我需要在当前的DLL中进行哪些更改?
答案 0 :(得分:4)
您无法创建在Windows和Mac上加载的DLL。您需要重新编译Mac代码。
答案 1 :(得分:0)
你无法在mac上运行任何dll。 Mac拥有自己的动态加载库。
答案 2 :(得分:0)
如果你坚持使用c#,我相信你有两个选择。第一个选项是查看您的代码是否将在Mac上以单声道运行。为此,您将创建macintosh可执行文件和动态库。
http://www.mono-project.com/Mono:OSX
http://lipsky.me/2012/7/21/calling-a-dynamic-library-from-monomac-part-1
第二种是使用.NET 2.0或更低版本,看看你的应用程序是否会在macintosh上运行wine。不要在代码中使用任何.NET 3.X或更高版本,因为.NET 3.X或更高版本不会安装或在wine中遇到很多问题。
http://appdb.winehq.org/objectManager.php?sClass=version&iId=3754