首页 > 解决方案 > 在 DLLImport 中使用 DLL 名称的变量

问题描述

在 C# 中,我可以执行以下操作:

public partial class Form1 : Form
{
    [DllImport("veie_dll.dll", EntryPoint = "my_multiply"]
    public static extern int my_multiply(int x, int y);

但是当我尝试使用一个变量作为 dll 名称时(这样我就可以在错误消息中使用它),如下所示:

public partial class Form1 : Form
{
    string dllName = "veie_dll.dll";

    [DllImport(dllName, EntryPoint = "my_multiply"]
    public static extern int my_multiply(int x, int y);

我收到一个错误:CS0120 非静态字段、方法或属性“Form1.dllName”需要对象引用

关于如何正确执行此操作的任何建议?

标签: c#dllimport

解决方案


我会说,如果你想使用字符串变量,那么它应该是 const 变量,然后只有它才能工作,我看不到其他选项。

public const string dllName = "veie_dll.dll";


推荐阅读