如何在C ++ / CLI DLL中从C#应用程序调用函数?

格里戈尔J

我编写了一个简单的C ++ / CLI DLL,它具有2个公共静态方法:

namespace GetMscVerLib
{
    public ref class CGetMscVer
    {
        static System::Int32 GetCompilerVersion ();
        static System::Int32 GetCompilerFullVersion ();
    };
}

我试图在同一解决方案中从C#控制台应用程序调用这些方法,但是编译器无法识别这些方法,并显示一条错误消息,指出该方法“不存在于当前上下文中”:

namespace Get_MSC_VER
{
    class Program
    {
        static void Main (string[] args)
        {
            Int32 i32CompilerVersion     = CGetMscVer.GetCompilerVersion ();
            Int32 i32CompilerFullVersion = CGetMscVer.GetCompilerFullVersion ();
        }
    }
}

正确的语法是什么?(假设使用DllImport或COM,在线搜索会产生与某些搜索关键字无关的链接页面)。看来这应该是一件很简单的事情,但事实并非如此。

谢谢

Ben

这应该工作。因为默认情况下这些方法是私有的,所以c#不允许您访问它们。

namespace GetMscVerLib
{
    public ref class CGetMscVer
    {
      public:
        static System::Int32 GetCompilerVersion ();
        static System::Int32 GetCompilerFullVersion ();
    };
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何在CLI应用程序中“拦截” Ctrl + C?

如何在c ++ / CLI应用程序中显示控制台?

如何在C#应用程序中从C ++调用抛出C#函数,以使C ++堆栈正确展开?

从C ++ / CLI函数调用C#函数

从 C# 应用程序调用 C++ DLL

Delphi应用程序无法调用简单的C ++ DLL函数

如何在 Unix 中制作 CLI 应用程序?

如何在C ++-CLI中使用ConditionalAttribute?

如何在C ++ / Cli中使用等待

AccessViolationException读取从C ++ / CLI DLL在C ++应用程序中分配的内存

如何在C#中从Windows窗体应用程序项目设置.dll文件的路径?

UWP 应用程序的相机枚举和 HAL 选项(WPF/C++ CLI DLL)

在Vue CLI项目中,哪里可以放置Laravel api应用程序以及如何在vue js中调用api?

从 C#/.NET MVC 应用程序中的另一个类调用函数

在C#应用程序中使用C ++ / CLI时出现BadImageFormatException

如何在CLI应用程序上调用控制器

C#如何在应用程序中存储密码

如何在托管C ++ / CLI中订购数组

如何在C ++ / CLI中设置非指向对象的属性

如何在 C++/CLI 中获取指针的值?

从asp.net c#应用程序调用“ Sav32Cli.exe”“代码2-如果发现阻止进一步执行的错误”

如何让Flatpak中的GUI应用程序运行CLI工具?

IlMerge之后C ++ / CLI应用程序错误

从C#应用程序调用C ++ dll时找不到Enry点

如何构建Node CLI应用程序

如何在Haskell中基于CLI的应用程序中处理箭头键?

如何在c ++ / cli中使用Runspace.StateChanged事件?

如何在C ++ / CLI中使用线程为Random ^播种?

如何在C#中的应用程序内运行Windows IoT应用程序