一、改变窗体的图标
没有修改之前为:
修改之后为自己想要的图标:
需要在窗体Form1.cs
属性里边添加icon图片文件:
二、新建cs类文件
如下图所示,新建一个类文件,我用于来调用库文件也可以来定义变量等。
在工程文件依次右键去选择,如下图所示:
三、C#调用C++生成的dll库
1、在新建的类文件中声明 命名空间using System.Runtime.InteropServices
,用于访问非托管 API 的平台调用。
2、调用外部C++生成的DLL库,涉及到C++的数据类型转化为C#的数据类型。
3、直接使用DllImport外部Dll。
4、对于CallingConvention = CallingConvention.Cdecl
调用约定(即用__cdecl关键字说明)按从右至左的顺序压参数入栈,由调用者把参数弹出栈
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Runtime.InteropServices;
namespace IMI_101_CanApp
{
class CallDll
{
[StructLayout(LayoutKind.Sequential)] //用于强制将成员按其出现的顺序进行顺序布局
public struct WzCan_InitConfig
{
public byte BaudRate;
}
[DllImport("WzCanDll.dll", EntryPoint = "WzCan_DeviceConnect", CallingConvention = CallingConvention.Cdecl)] //调用外部dll库 有参数传入
public static extern byte WzCan_DeviceConnect(WzCan_InitConfig pInitConfig);
[DllImport("WzCanDll.dll", EntryPoint = "WzCan_CloseDeviceConnect", CallingConvention = CallingConvention.Cdecl)] //调用外部dll库
public static extern bool WzCan_CloseDeviceConnect();
[DllImport("WzCanDll.dll", EntryPoint = "fnWzCanDll")] //调用外部dll库 无参数传入
public static extern byte fnWzCanDll();
}
}
四、参考文档
http://blog.csdn.net/feiyingzaishi/article/details/72870247
https://www.cnblogs.com/ppchouyou/archive/2008/03/31/1131593.html
https://www.cnblogs.com/shuenjian901/p/3408514.html
http://bbs.csdn.net/topics/392056294
https://www.cnblogs.com/gosteps/p/5519896.html
http://blog.csdn.net/u011981242/article/details/52622923
http://www.xuebuyuan.com/645807.html
by 羊羊得亿
2017-12-21 ShenZhen