繁体   English   中英

C ++ dll在.NET中似乎无法正常工作

[英]C++ dll seems not to work correctly in .NET

我的.NET项目中有c ++ dll。 从dll导入的方法如下所示

    private const string LibName = "dll_name.dll";

    [DllImport(LibName, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.Ansi)]
    public extern static void Method1(double[] _params, UInt32 len);

    [DllImport(LibName, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.Ansi)]
    public extern static double Method2(Int32 x, Int32 y);

这是第一次效果很好。 但是后来我发现,当我从Visual Studio 2012或更高版本构建dll时,程序找不到dll并引发异常“找不到文件”。 但是,当我从VS 2010中的同一项目中构建相同的dll时,没有问题。 我认为工具链版本不会产生太大影响。 如何使它在新版VS中工作?

正如评论中提到的,问题出在不同版本的VS工具集中。 如果您使用新的VS,则还需要新的MSVCredist。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM