DllImport 未在 asp.net 代码隐藏文件中定义,即使包含 System.Runtime.InteropSe
本文关键字:包含 System InteropSe Runtime 定义 asp 未在 net 代码 隐藏文件 DllImport | 更新日期: 2023-09-27 18:34:01
我想从我的 asp.net 3.5 Web 应用程序链接到 C++ dll,并使用隐藏代码中的一些函数。 如果我使用 DllImport 创建一个 C# 库以链接到C++ dll,我可以将 C# 库链接到 asp.net 应用程序,它似乎可以工作。 如何消除 C# 库并直接链接到C++ dll?
当我尝试在 C# 中使用 DllImport 时,即使代码看起来与 C# 库中的代码相同,它后面的代码也是未定义的。
来自 asp.net Web 应用的代码(不起作用,因为 DllImport 突出显示为未定义)
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Runtime.InteropServices;
/// <summary>
/// Summary description for Chat
/// </summary>
public class Chat
{
public Chat()
{
[DllImport("ChatLib.dll")]
public static extern void DisplayHelloFromDLL();
}
}
您可能需要
将属性和方法声明放在类级别的DllImport
侧构造函数之外。
public class Chat
{
[DllImport("ChatLib.dll")]
public static extern void DisplayHelloFromDLL();
public Chat()
{
}
}