一、改变窗体的图标

没有修改之前为:



修改之后为自己想要的图标:



需要在窗体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

C#之改变窗体icon图标、新建类文件、调用dll库的更多相关文章

  1. Swift: 在Swift中桥接OC文件(自己创建的类文件、第三方库文件)

    一.介绍 随着Swift的逐渐成熟,使用swift开发或者混合开发已经成为了一个趋势,本身苹果公司也十分推荐使用Swift这门新语言.目前Swift已经更新到了3.0,估计没有多久4.0就要出来了.那 ...

  2. C# 通过反射类动态调用DLL方法

    网上看了很多关于反射的思路和方法,发现这个还算不错 //使用反射方: using System; using System.Collections.Generic; using System.Linq ...

  3. Ext.Net TreePanel 修改Icon图标

    分类: Ext.Net2012-09-24 13:44 1779人阅读 评论(0) 收藏 举报 webformserverextassemblyxhtmlobject 1.默认icon 2.自定义ic ...

  4. 解决网页ICON图标无法显示的问题

    第一步:检查下“<link rel="shortcut icon" href="http://www.bhcode.net/favicon.ico" ty ...

  5. Visual Studio 2015 改变窗体图标 & 任意位置打开窗体 & 禁止鼠标改动窗体大小

    1.改变窗体图标 先把图标放到项目文件夹中,然后点击窗体属性的ICON添加即可. 参考:https://www.cnblogs.com/yangxuli/p/8075484.html?tdsource ...

  6. MFC在对话框中的Picture contrl控件中添加icon图标,并改变icon图标的背景色与对话框背景色一致

    1.在对话框添加Picture Contrl 控件 2.选中控件,修改ID为IDC_STATIC_PICTURE 和 Type属性为icon 其图标改为 3.添加变量m_picture变量名是灰色,说 ...

  7. 3D教育类小图标_三维立体学习类icon图标素材

    3D教育类小图标_三维立体学习类icon图标素材

  8. Autorun.inf文件(2):改变硬盘分区图标

    改变F盘图标. 原理:在f盘下新建一个Autorun.inf文件,文件内容是 [AutoRun]icon=favicon.ico准备名为favicon.ico图标文件,将其放在工程目录里,设计程序将它 ...

  9. 在网页中制作icon图标

    用字体在网页中画icon图标 第一步:获取字体资源IconMoon网站https://icomoon.io iconMoon中有很多免费小图标可用,还能设置下载图标的使用属性(通过网站中设立的按钮pr ...

随机推荐

  1. CSS Grid(CSS网格)

    Grid被设计来做一些Flexbox不能做的事情,所以不是被设计来取代Flexbox的. flexbox 一维的 Grid 二维的 总结:  Grid Items作用在Grid Container的直 ...

  2. MySQL主从宕机的解决方法

    测试系统:centos6.5系统 测试环境IP地址划分: master: 192.168.80.130 slave:192.168.80.143 slave:192.168.80.146 首先模拟(M ...

  3. jvm 虚拟机参数_栈内存分配

    1.参数 -Xss 指定线程最大的栈空间,整个参数也直接决定了函数可调用的最大深度 2.测试代码 private static int count; public static void addCou ...

  4. Spring 7大功能模块的作用

    1.   Spring 7大功能模块的作用 1)   核心容器(Spring core) 核心容器提供Spring框架的基本功能.Spring以bean的方式组织和管理Java应用中的各个组件及其关系 ...

  5. APP热更新方案(转)

    本文转载自[http://creator.cnblogs.com/] 博客地址:Zealot Yin 为什么要做热更新 当一个App发布之后,突然发现了一个严重bug需要进行紧急修复,这时候公司各方就 ...

  6. POJ 1671

    其实求的是BELL数,即前N个第二类斯特林数的和. 一首诗有n行,每一行有一种韵律,问这首诗总共可能有多少种韵律排列.如4行,则所有的15种情况为:aaaa, aaab, aaba, aabb, aa ...

  7. bzoj-1492 货币兑换Cash (1)——平衡树维护凸包

    题意: 有n天和m的初始金钱,用来购买AB两种纪念券: n天里每天都有AB的价格.每天能够进行这种操作. 1.卖出手中x%的纪念券(AB分别都卖出x%). 2.用x的金钱买入纪念券.买入AB券的比例在 ...

  8. Android高级控件(一)——ListView绑定CheckBox实现全选,添加和删除等功能

    Android高级控件(一)--ListView绑定CheckBox实现全选,添加和删除等功能 这个控件还是挺复杂的.也是项目中应该算是比較经常使用的了,所以写了一个小Demo来讲讲,主要是自己定义a ...

  9. 高速排序算法C++实现

    //quick sort //STL中也有现成的高速排序算法.内部实现採用了下面技巧 //1)枢轴的选择採取三数取中的方式 //2)后半段採取循环的方式实现 //3)高速排序与插入排序结合 #incl ...

  10. Android开发之使用Web Service进行网络编程

    使用Web Service进行网络编程 Android应用通常都是执行在手机平台上.手机系统的硬件资源是有限的,无论是存储能力还是计算能力都有限.在Android系统上开发.执行一些单用户.小型应用是 ...