【发布时间】:2009-09-24 06:11:22
【问题描述】:
我有一个 C# DLL 文件项目 (my_cs_dll.dll),它定义了一个带有静态成员函数的静态类。
namespace Foo
{
public static class Bar
{
public static double GetNumber() { return 1.0; }
}
}
我还有一个使用 /clr 的 C++ DLL 项目。
#using <my_cs_dll.dll>
double get_number_from_cs() { return Foo::Bar::GetNumber(); }
我在 C++ 项目的公共属性引用部分添加了对 'my_cs_dll.dll' 的引用(复制本地/复制依赖项均为 True)。
我还在 C++ 项目的 Configuration Properties C/C++ General 'Resolve#using References' 部分中添加了 'my_cs_dll.dll' 的路径。
一切都没有错误地构建,但是在运行时我不断收到来自系统的“System.IO.FileNotFound”异常,声称它找不到my_cs_dll.dll 程序集。
这两个 DLL 文件肯定存在于我正在运行的同一目录中。
我已经尝试了上述设置的各种变体,并阅读了我可以找到的关于托管/非托管互操作的所有内容,但我似乎无法理解问题所在...
我使用的是 Visual Studio 2008 和 .NET 3.5。
【问题讨论】:
标签: c# c++ managed-c++