相关疑难解决方法(0)

在C#中以编程方式设置dllimport

DllImport在我的解决方案中使用.
我的问题是我有两个版本的相同的DLL一个为32位而另一个为64位.

它们都使用相同的名称和相同的签名来公开相同的功能.我的问题是我必须使用两个静态方法来暴露这些,然后在运行时使用IntPtr大小来确定要调用的正确方法.

private static class Ccf_32
{
    [DllImport(myDllName32)]
    public static extern int func1();
}

private static class Ccf_64
{
    [DllImport(myDllName64)]
    public static extern int func1();
}
Run Code Online (Sandbox Code Playgroud)

我必须这样做,因为myDllName32并且myDllName64必须保持不变,我还没有找到在运行时设置它的方法.

有没有人有一个优雅的解决方案,所以我可以摆脱代码重复和不断的IntPtr大小检查.

如果我可以设置文件名,我只需要检查一次,我就可以摆脱大量重复的代码.

.net c# 64-bit interop dllimport

9
推荐指数
3
解决办法
1万
查看次数

标签 统计

.net ×1

64-bit ×1

c# ×1

dllimport ×1

interop ×1