如何将C .DLL文件导入C#Windows窗体应用程序并调用其在标头中定义的函数?

约翰

我是编程新手,我基本上是想将用C编写的第三方.dll文件提取到C#代码中,然后将其功能之一输出到接口。下面是.DLL使用的头文件中的函数声明。我想我必须在C#中重新定义它,因为它不能使用C标头。

int SPI_GetNumChannels(int * numChannels);

这是我的C#代码

namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        public class App
        {
          [DllImportAttribute(@"C:\Users\Documents\libMPSSE.dll", EntryPoint = "SPI_GetNumChannels")]
          public static extern int SPI_GetNumChannels(ref int numChannels);
        }
        public Form1()
        {
            InitializeComponent();
        }
        private void Form1_Load(object sender, EventArgs e)
        {
            textBox1.Text = numChannels.ToString();
        }
    }
}

我完全在正确的轨道上吗?我知道最后一行是不正确的,任何帮助将不胜感激!

史蒂夫·利利斯

将外部方法放在称为NativeMethods或UnsafeNativeMethods的单独的静态类中是一个好习惯。

然后,您已经非常接近。

int channels = 0;
NativeMethods.SPI_GetNumChannels(ref channels);
textBox1.Text = channels.ToString();

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何使C#Windows窗体应用程序适合屏幕

来自分类Dev

C#Windows窗体应用程序关闭

来自分类Dev

如何将尚未在C标头中声明的C函数导入C ++项目?

来自分类Dev

C#Windows应用程序将文本写入文件

来自分类Dev

如何将任何应用程序的选定文本导入Windows窗体应用程序

来自分类Dev

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

来自分类Dev

如何将Objective-C文件添加/导入到快速应用程序

来自分类Dev

从C#Windows应用程序调用URL

来自分类Dev

如何在C#Windows窗体应用程序中激活spellCheck?

来自分类Dev

如何在C#Windows窗体应用程序中动态创建网格

来自分类Dev

如何在C#Windows窗体应用程序中创建平滑的形状动画运动?

来自分类Dev

如何将Windows Forms应用程序(C#)制成单个exe文件?

来自分类Dev

如何将CSS和JavaScript添加到Windows窗体应用程序C#.net

来自分类Dev

覆盖C#Windows应用程序窗体中的透明图片框?

来自分类Dev

C#Windows窗体应用程序进度栏数据绑定

来自分类Dev

C#Windows窗体应用程序在错误后使进程运行

来自分类Dev

C#Windows窗体应用程序热键-KeyDown事件不起作用

来自分类Dev

从Datatable C#Windows窗体应用程序中选择前N行

来自分类Dev

SQL命令在C#Windows窗体应用程序中不起作用

来自分类Dev

在C#Windows窗体应用程序中以编程方式继承表

来自分类Dev

如何将类的对象放入C#Windows窗体的列表中

来自分类Dev

如何将C / C ++与python混合?

来自分类Dev

C#-Windows窗体应用程序-保存文件

来自分类Dev

如何部署使用SQL Server Express 2012和Crystal Report开发的C#Windows窗体应用程序

来自分类Dev

如何部署使用SQL Server Express 2012和Crystal Report开发的C#Windows窗体应用程序

来自分类Dev

我如何获得素数(C#Windows窗体应用程序中的哥德巴赫猜想)

来自分类Dev

如何使用for循环在c#windows窗体应用程序中检查文本框是否为空,使用数组

来自分类Dev

如何使用C#Windows Form应用程序将Excel文件上传到SQL数据库表

来自分类Dev

如何将Clang置于C ++模式?

Related 相关文章

  1. 1

    如何使C#Windows窗体应用程序适合屏幕

  2. 2

    C#Windows窗体应用程序关闭

  3. 3

    如何将尚未在C标头中声明的C函数导入C ++项目?

  4. 4

    C#Windows应用程序将文本写入文件

  5. 5

    如何将任何应用程序的选定文本导入Windows窗体应用程序

  6. 6

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

  7. 7

    如何将Objective-C文件添加/导入到快速应用程序

  8. 8

    从C#Windows应用程序调用URL

  9. 9

    如何在C#Windows窗体应用程序中激活spellCheck?

  10. 10

    如何在C#Windows窗体应用程序中动态创建网格

  11. 11

    如何在C#Windows窗体应用程序中创建平滑的形状动画运动?

  12. 12

    如何将Windows Forms应用程序(C#)制成单个exe文件?

  13. 13

    如何将CSS和JavaScript添加到Windows窗体应用程序C#.net

  14. 14

    覆盖C#Windows应用程序窗体中的透明图片框?

  15. 15

    C#Windows窗体应用程序进度栏数据绑定

  16. 16

    C#Windows窗体应用程序在错误后使进程运行

  17. 17

    C#Windows窗体应用程序热键-KeyDown事件不起作用

  18. 18

    从Datatable C#Windows窗体应用程序中选择前N行

  19. 19

    SQL命令在C#Windows窗体应用程序中不起作用

  20. 20

    在C#Windows窗体应用程序中以编程方式继承表

  21. 21

    如何将类的对象放入C#Windows窗体的列表中

  22. 22

    如何将C / C ++与python混合?

  23. 23

    C#-Windows窗体应用程序-保存文件

  24. 24

    如何部署使用SQL Server Express 2012和Crystal Report开发的C#Windows窗体应用程序

  25. 25

    如何部署使用SQL Server Express 2012和Crystal Report开发的C#Windows窗体应用程序

  26. 26

    我如何获得素数(C#Windows窗体应用程序中的哥德巴赫猜想)

  27. 27

    如何使用for循环在c#windows窗体应用程序中检查文本框是否为空,使用数组

  28. 28

    如何使用C#Windows Form应用程序将Excel文件上传到SQL数据库表

  29. 29

    如何将Clang置于C ++模式?

热门标签

归档