自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Nick_H 的专栏

学习在于持续,知识在于积累,科技在于创新

  • 博客(53)
  • 资源 (7)
  • 收藏
  • 关注

原创 WPF 特性------Binding

【代码】WPF 特性------Binding。

2024-11-01 11:21:20 385

原创 解决远程电脑桌面黑屏问题

这里的方案适用于:没有安装工业相机的驱动之前远程桌面还是OK的,安装相机驱动之后远程桌面就黑屏了。

2024-11-01 11:10:46 945

原创 VS2022 远程调式

8,右键代码的工程文件,【属性】à【调式】,设置远程调式目录。7,右键代码的工程文件,【属性】à【生成】,设置软件生成目录,把输出路径改成远程设备的路径。方法:点击浏览,在弹开的窗口中输入远程设备的IP,然后按回车就会弹出第3步设好的共享文件夹,选择好对应的目录;使用远程调式的方式,代码放在自己电脑,debug 文件放在目标设备,使用VS自动远程调式工具进行调式。,注意:项目中使用库文件,如果库文件的生成目录没有设置成远程目录,每次生成新文件需要把对应的。10,本机启动调式,远程电脑远程对应界面。

2024-11-01 11:03:50 1242

原创 CRC 效验和——CRC16 0xA001 RTU

工业控制中的一些周边设备,其通信协议一般很多用modus 通信,而modus 通信就必须有 crc 效验,常用的效验是 CRC 16 ,显示CRC16 RTU 的实现方式。

2024-10-23 18:46:35 259

原创 样式(3)----修改主题颜色

方法2:使用DynamicResource 资源,在代码中修改样式,然后引用该样式的所有主题将会被改变;楔子:做软件时,经常有这样的需求,这样配色不合适?或者像动态的修改样式?那问题来了:怎样修软件界面的主题、修改皮肤?方法1:使用第三方控件,直接更换主题,panuon 有类似的应用;

2024-08-29 23:05:53 439

原创 样式(2)———样式继承BaseOn

资源也已经定义,它应该包含按钮的一些基本样式设置,例如字体大小、边框厚度等,楔子:新的布局时,样式想跟之前的不一样,但又想继承之前的样式,有什么办法?意味着在运行时每次引用这些资源时,WPF都会去查找最新的资源值。不同,后者只在第一次引用时查找资源值,之后即使资源值改变,使用。,这可以是一个十六进制颜色值或任何WPF支持的颜色定义。的基础样式,并设置了按钮的背景和边框颜色使用动态资源。是这个样式的名称,您可以使用这个名称来引用这个样式。没有定义,你需要先创建它,或者从现有的样式中继承。样式将继承这些设置。

2024-08-29 18:14:54 389

原创 样式(1)——颜色样式

在WPF中定义颜色样式通常涉及到创建`SolidColorBrush`资源,并将其放置在XAML的资源部分,如``或``中。6. 使用`DynamicResource`可以在运行时动态更改颜色样式,而使用`StaticResource`则会在编译时解析颜色样式,如果颜色样式在运行时更改,使用`StaticResource`的控件不会自动更新。2. 在XAML文件中,找到``部分。

2024-08-29 17:59:19 560

原创 彩色相机拍照,图片时亮时暗

经过上述常规的排查后,问题仍然没有解决。后来经同事提醒,“这个彩色相机是不是用了自动白平衡了呀?”,经检查,果然是用自动白平衡了。把自动白平衡去掉,重新调整白平衡,问题解决。5,产品不一致的问题、或者产品状态的问题,我们经过长时间观察,也排除了。3,光源打开后延时再拍照,排查光源延时照亮的问题,仍然没有解决;2,持续观察后发现镜头的通路是通的,没有障碍物挡住;1,设备运动到位后加长延时后再拍照,问题仍然有;4,检查相机的曝光模式,确定是固定曝光时间;4,相机的曝光时间是否设定了自动曝光?

2024-08-29 10:30:05 536

原创 C++ CreateThread、_beginthreadex和AfxBeginThread

创建线程好几个函数可以使用,可是它们有什么区别,适用于什么情况呢?【参考1】CreateThread, AfxBeginThread,_beginthread, _beginthreadex的区别 =========================================================1、CreateThread——Windows的API函数2、_beginthreade...

2024-08-29 10:18:08 607 1

原创 C# Winform软件多语言(汉语、英语。。。)界面的切换,低耦合

Winform软件多语言切换,个人见解,降低软件对语言展示的耦合度。1、设计图(自己瞎画的呵呵)2、做的小demo,界面如下3、下面是代码展示部分 1)Form1代码展示 1 namespace WindowsFormsApplication1 2 { 3 public partial class Form1 : Form 4 { 5 public F...

2024-08-29 10:17:23 1197 1

原创 C# 使用M2Mqtt库开发MQTT通信协议

MQTT(Message Queuing Telemetry Transport):特点:轻量级、低带宽、低功耗,适合物联网(IoT)场景,支持发布/订阅模式。安全性:支持TLS加密传输。开发:在C#中,可以使用MQTTnet库来实现MQTT客户端的功能,如连接、订阅、发布消息等

2024-08-23 18:40:50 784

原创 C# 使用RestSharp 开发WebApi client端,实现MES通信

RestSharp 开发WebApi client端

2024-08-22 23:42:27 457

原创 九点标定

九点标定原理:简单来理解,假如有人告诉你A坐标系(例如相机图像坐标系)的一点(x=10,y=20像素),在B坐标系(例如机械手所在坐标系)里看到的是(x1=2,y1=4), 接下来,他问你如果是(x'=20,y'=30)在B里看到的是多少呢?下面分别提供Halcon、OpenCV和Accord的方法,实际测试了Halcon和Accord的方法,其结果一致。Halcon 的方法:*已知A坐标系的9个点 机械坐标Ax:=[2,2.05,2.1,2,2.05,2.13,2,2.05,2.14

2020-11-26 17:20:49 5602 1

转载 C# 进程间通信

Windows是通过消息的机制实现进程间信息的传递的。在C#中,我们同样可以利用这个机制实现通信。具体方式如下:首先,定义消息,并从win32 API中导入发送消息和寻找窗体的函数。public const int USER = 0x0400;//用户自定义消息的开始数值[DllImport("user32.dll")]public static extern voi...

2020-04-15 18:01:31 851

原创 C# IntPtr 函数参数非法访问内存

这几天遇到一个诡异的问题,关于C#调用 C++dll指令的问题。 调用方法的时候, 都提示_ledHandle 非法访问内存。 然而 把_ledHandle 定义为局部变量的时候,是OK的。 很奇怪,百思不得其解............... ...

2019-11-30 15:01:22 705

原创 C# 调用 C++或C的dll

这几天有遇到要用 C#调用 C++的 dll函数的情况。C#不能直接调用 C++的dll,需要转化。 因为之前没有用过,所有网上找了很多资料,但转化的过程中,仍然踩了很多雷。 雷1:无法找到函数的入口点; 雷2:函数堆栈不对称; 下面,记录我踩雷及排雷的过程。 1,首先需要准备相关的数据转化。 ...

2019-11-28 10:48:29 385

原创 C# int 转 16进制字符

有人说,写代码就是不断处理各种各种的数据及数据结构。 int tt = 30; //0x1E string st = tt.ToString("X"); //st = "1E" string st = tt.ToString("x"); //st = "1e" int 转化成 stri...

2019-11-27 15:46:29 18590

原创 使用VS2005以上版本(VS2005、VS2008、VS2010)编译在其他编译器下正常通过的C语言程序,你可能会遇到类似如下的警告提示

使用VS2005以上版本(VS2005、VS2008、VS2010)编译在其他编译器下正常通过的C语言程序,你可能会遇到类似如下的警告提示:引用内容warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation...

2019-11-02 09:08:16 491

原创 C++ / MFC 多种语言界面编程

1)写两个资源文件,一个中文,一个英文;2)把语言选择写在.ini文件上;3)每次启动时,先读取.ini文件,在 InitInstance() 中,进行语言设置(使用线程语言 SetThreadUILanguage);win7系统,通过SetThreadUILanguage设置SetThreadUILanguage(MAKELCID(MAKELANGID(LANG_ENGLI...

2019-11-02 08:57:12 836

原创 C ++ /MFC 限制鼠标作用区域

CRect oldRect;GetClipCursor(&oldRect); //获取鼠标原区域CRect RectLimist;GetDlgItem(IDC_IMAGE)->GetWindowRect(&RectLimist);ClipCursor(&RectLimist); //限制鼠标活动区域ClipCursor(&...

2019-11-02 08:55:31 856

原创 C++ /MFC 判断文件是否被占用

HANDLE Handle;Handle = CreateFile(szPath, GENERIC_READ,0,NULL,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,NULL);if(INVALID_HANDLE_VALUE == Handle){AfxMessageBox("文件被占用");return;}CloseHandle...

2019-11-02 08:54:25 2421

原创 C++/MFC try catch 异常捕获不到

try{BYTE *pch;pch = (BYTE *)01234; //非法地址*pch = 5;}catch (...){AfxMessageBox("捕获异常");}但在Release方式下如果选择了编译器代码优化选项,则 VC编译器会去搜索try块中的代码, 如果没有找到throw代码,他就会认为try catch结构是多余的, 给优化掉...

2019-11-02 08:53:40 6900 1

原创 C++/ MFC 关于文件路径 执行文件路径

2.获取路径并顺序存储文件a.得到当前运行程序所在路径(其实得到的是当前执行程序存放路径)(考察!!!)TCHAR szFilePath[MAX_PATH + 1];GetModuleFileName(NULL, szFilePath, MAX_PATH);(_tcsrchr(szFilePath, _T('//')))[1] = 0;CString strtem...

2019-11-02 08:51:09 656

原创 C++ Unicode 和 ASCll 字符

不同的多字节字符集之间存在重码现象,对于同一个编码,在不同的字符集之间可能对应的是不同的字符。也就是说不同的多字节字符是不能共存的。Unicode是统一码,它包容了不同的字符集,每个字符都对应于唯一的编码。在最初的时候,Internet上只有一种字符集——ANSI的ASCII字符集,它使用7 bits来表示一个字符,总共表示128个字符,其中包括了英文字母、数字、标点符号等常用字...

2019-11-02 08:49:02 488

原创 C++ C# 关于文件路径 上一级 上两级

文件目录#include"../../../myfile/myhead.h" //上三级#include"../myfile/myhead.h" // 上一级#include"../../myfile/myhead.h" //上两级

2019-11-02 08:47:02 1938

原创 C++ /MFC 获取硬盘序列号,获取主机名字

获取硬盘序列号GetVolumeInformation("C:",NULL,MAX_PATH,&Serial,&Length,NULL,NULL,MAX_PATH);文件服务器在资源管理器的时候是\\IP\ShareName,所以应该是"\\\\IP\\ShareName"获得主机名char szhostname[128];if (...

2019-11-02 08:45:55 1954

原创 宏定义 单行 多行表达

define的单行定义我们来看一个例子,比较两个数或者表达式大小,首先我们把它写成宏定义:  #define MAX( a, b) ( (a) > (b) (a) : (b) )其次,把它用函数来实现:  int max( int a, int b)  {  return (a > b a : b)  }很显然,我们不会选择用函数来完成这个任...

2019-11-02 08:41:35 519

转载 C# LINQ 表达式 ,查询, 筛选

语言集成查询 (LINQ) 是一组技术的名称,这些技术建立在将查询功能直接集成到 C# 语言(以及 Visual Basic和可能的任何其他 .NET 语言)的基础上。 借助于 LINQ,查询现在已是高级语言构造,就如同类、方法、事件等等。对于编写查询的开发人员来说,LINQ 最明显的“语言集成”部分是查询表达式。查询表达式是使用 C# 3.0 中引入的声明性查询语法编写的。...

2019-10-23 23:12:26 2338

原创 C# 打开第三方进程 和 关闭第三方进程的方法 打开外部进程 关闭外部进程

打开第三方进程 和 关闭第三方进程的方法: 1,打开: string path = @"E:\云盘\功能测试及验证\C Sharp\C--Test-Code\WndForm\bin\debug\WndForm.exe "; bool bexit = File.Exists(path); ...

2019-10-22 17:07:28 1536

原创 C# 解析激光干涉仪 rtl 文本文件数据

从激光干涉仪中,标出来的数据,要补偿到运动控制卡系统,从而实现位置补偿功能,进行um级别精确控制。 知识点:1,文本文件读取;2,字符串 string 截取、分割等;需要把绿框内的数据解析出来;读取文件 -----解析 private void btnPars_Click(object sender, Even...

2019-10-16 15:32:12 1557

原创 FA 镜头 工作距离 焦距及视野计算和结果

记录了一些常用的FA镜头,关于焦距,工作距离,视野。

2019-09-25 16:39:53 7565 2

转载 gray_opening和opening_circle:详解什么是灰度值开运算闭运算

转载:http://www.ihalcon.com/read-2166-1.html我们在进行开运算和闭运算的时候会遇到两种类型的算子,一种是opening_circle这样的,一种是gray_opening这样的,可能你看了Halcon的帮助文档也没弄清楚怎么回事,那我就按自己的理解多讲几句这两种算子到底是什么区别吧。首先要明白一件事:开运算=腐蚀+膨胀;(断开细小的地方,所以叫开)闭...

2019-08-28 17:44:55 6263

原创 Halcon C++ 异常捕获不到 程序崩溃 MFC

Halcon 10 VS2013平台 MFC C++. 最近老是出现程序崩溃,整的整个人都快崩溃了。 因为,异常捕获不稳定,大多数都捕获不到,软件就崩溃了。是连接相机的时候才出现,加载图片处理,正常情况下,没有问题。 崩溃的情况有: 1,显示图片是,图片是正常的,就崩溃了,如 disp_obj(outReg...

2019-08-26 16:44:35 2723

原创 C++ 函数映射(即回调函数)和 变量映射

C++ 编程中,经常会用到函数映射(即回调函数)和变量映射方法。如下分别介绍:类中定义回调函数:在类中定义回调函数参数类型:typedef void (*CALLBACKFUNCOM) (DWORD port); 定义回调函数:CALLBACKFUNCOM m_pFunReceive; 定义设置回调函数的方法:void SetCallBack(CALLBACKFUNCOM pFu...

2019-08-26 13:45:51 3365

原创 MFC C++ 复制文件夹下所有文件或者 文件和文件夹 到另一个文件夹

直接上代码: 1,复制文件夹下所有文件 到另外一个文件夹: void CopyAllFile(CString dest, CString source){ CFileFind filefind; CString path = source; if (path.Right(1) != "\\")//目录的最右边需要“\”字符 path += "\\";...

2019-06-04 18:53:27 3956 2

原创 MFC 递归删除文件夹下所有文件或文件夹

废话不说,直接上代码:void CFileOrDirectoryOP::RecursiveDelete(CString szPath){ CFileFind filefind; CString path = szPath; if (path.Right(1) != "\\")//目录的最右边需要“\”字符 path += "\\"; path += "*.*"; BO...

2019-06-04 14:18:58 1186

原创 把对象序列化到XML文件及从XML文件反序列化到对象

直接上代码: 1,构建对象: public class Student { public int ID { get; set; } public string Name { get; set; } public int Age { get; set; } public st...

2019-05-31 19:05:46 737

翻译 工业相机 镜头 焦距 视野 计算相关

光学成像图及光的波长及辐射图: 首先,要确定工业相机的接口、靶面尺寸和分辨率大小。打比方是2/3" 工业相机,C接口,5百万像素;那么我们可以先确定需要的工业镜头是C接口,最少支持2/3", 5百万像素以上,或者线对在160LP.其次,确定所要达到的视野范围(FOV)和工作距离(WD),然后根据这两个要求和已知的靶面尺寸计算出工...

2019-05-22 16:16:02 40178 7

转载 C# LINQ

  转载:https://www.cnblogs.com/dullfish/p/6101912.htmlc#提供的ling查询极大的遍历了集合的查询过程,且使用简单方便,非常的有用。下面将分别用简单的例子说明:ling基本查询、延迟查询属性、类型筛选、复合from字句、多级排序、分组查询、联合查询、合并、分页、聚合操作符、并行linq、取消长时间运行的并行ling查询。Lambda表达...

2019-02-14 15:36:29 304

翻译 C# 获取CPU序列号 硬盘序列号 网卡ID

     获取CPU  硬盘  网卡ID。     /// <summary>        /// 获取cpu序列号        ///  string getInfo = cm.GetCPUSerialNumber()        ///  if (getInfo != _info){Application.Exit();}        /// </summ...

2018-09-15 14:31:15 3810 1

Parsrtl.zip

      从激光干涉仪中,标出来的数据文件 rtl,要补偿到运动控制卡系统,从而实现位置补偿功能,进行um级别精确控制。      知识点: 1,文件读取; 2,字符串 string   截取、分割等;

2019-10-16

VC串口通信 单片机和微机通信 上位机和下位机通信

用Visual C++6.0编写的串口通信程序。这个通信界面可以灵活设置串口的参数,按照特定的通信协议,单片机把通信数据上传到上位机,并在上位机处理,用图形显示出来,从而实现上位机和下位机的通信。这一系统已经在“基于51单片机的温度采集系统”稳定可靠使用。

2009-06-23

VC 编写的串口通信源程序

这是我用VC编写的串口通信程序,对大家的学习,肯定帮助很大,所以,想一睹为快的话,先花点积分。

2008-11-23

18B20 汇编语言程序

18B20 的汇编程序,对你的学习肯定有帮助。

2008-11-23

18B20 英文资料

18B20 英文资料,很详细,很容易理解的资料

2008-11-23

自己用VC写的第一个通信串口

这是我第一个用VC写的通信串口界面,如果需要源程序的网友,可以流个地址,好联系。

2008-11-23

串口调式工具 串口精灵

调式串口不可缺少的工具、、、、、、、、、、。

2008-11-23

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除