C#在项目中引用x86x64的非托管代码的方法-创新互联

因为现在的项目使用的是 AnyCpu 在 x86 的设备使用的是x86,在x64使用的是x64,但是对于非托管代码,必须要在x64使用x64的dll,在x86使用x86的dll。在C++没有和C#一样的 AnyCpu 所以需要在项目运行在x86的时候加载x86的dll。 本文告诉大家如何在代码引用不同的dll。

创新互联建站是一家专业提供赣县企业网站建设,专注与网站制作、做网站H5场景定制、小程序制作等业务。10年已为赣县众多企业、政府机构等服务。创新互联专业网站设计公司优惠进行中。

使用宏

最简单的方法是编译两个版本,编译多个版本可以点击配置管理器,然后创建x86和x64,然后版本添加宏,这样就可以判断宏来使用不同的dll

C# 在项目中引用x86 x64的非托管代码的方法

点击活动解决方案平台,然后点击新建

C# 在项目中引用x86 x64的非托管代码的方法

选择项目属性,点击生成,就可以添加不同的宏

C# 在项目中引用x86 x64的非托管代码的方法

于是在后台代码可以这样写

C# 在项目中引用x86 x64的非托管代码的方法

#if x86
  public const string DLL_FILE_NAME = "SvkiqauhKvdhrureh42.dll";
#else
  public const string DLL_FILE_NAME = "SvkiqauhKvdhrureh74.dll";
#endif
  [DllImport(DLL_FILE_NAME, EntryPoint = "HfwzsnHzhpbbzbn", CallingConvention = CallingConvention.Cdecl)]
  private static extern int HfwzsnHzhpbbzbn(int var1, int var2);

另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


新闻名称:C#在项目中引用x86x64的非托管代码的方法-创新互联
网页网址:http://pwwzsj.com/article/ccijdc.html