MFC
文章平均质量分 73
一苇渡江694
无有功德,一苇渡江
展开
-
MFC操作SQlite,打开数据库路径存在中文,解决方案
MFC操作打开SqLite数据库,其中szDBFile为数据库所在的位置。最开始使用的相对路径,即szDBFile永远等于“HData.zip”。但是尤其设备需要,需要把.exe文件放入开机启动的shell中。这样使用相对路径就会产生错误,即需要给szDBFile赋值绝对路径。此时,如果全路径包括汉字,那样sqlite3_open_v2(szDBFile, &m_sq3DB, SQLITE_O原创 2015-06-16 12:38:58 · 2792 阅读 · 1 评论 -
线程临界区相关结构体和函数
单进程的线程可以使用临界资源对象来解决同步互斥问题,该对象不能保证哪个线程能够获得到临界资源对象,因而该系统能公平的对待每一个线程。 每个进程中访问临界资源的那段代码称为临界区(Critical Section)(临界资源是一次仅允许一个进程使用的共享资源)。每次只准许一个进程进入临界区,进入后不允许其他进程进入。不论是硬件临界资源,还是软件临界资源,多个进程必须互斥地对它进行访问。原创 2015-08-19 09:37:59 · 3175 阅读 · 0 评论 -
线程中CreateEvent和SetEvent和ReSetEvent及WaitForSingleObject的用法
概述 首先介绍CreateEvent是创建windows事件的意思,作用主要用在判断线程退出,程锁定方面. CreateEvent:创建或打开一个命名的或无名的事件对象. EVENT有两种状态:发信号,不发信号。 SetEvent/ResetEvent分别将EVENT置为这两种状态分别是发信号与不发信号。 WaitForSingleObject()等待,直到参数所指定的OBJECT成为原创 2015-08-18 14:08:03 · 15796 阅读 · 0 评论 -
串口之DCB结构体详解
DCB结构详细说明: typedef struct _DCB { DWORD DCBlength; DWORD BaudRate; DWORD fBinary: 1; DWORD fParity: 1; DWORD fOutxCtsFlow:1; DWORD fOutxDsrFlow:1; DWORD fDtrControl:2; DWORD原创 2015-08-18 09:03:57 · 23200 阅读 · 1 评论 -
浅谈MFC中BitBlt与StretchDIBits的区别
一、基础知识1.BitBlt BitBlt 用于从原设备中复制位图到目标设备,语法格式如下: BOOL BitBlt( HDC hdcDest, // handle to destination DC int nXDest, // 目标矩形区域的左上角x轴坐标点。 int nYDest, // 目标矩形区域的左上角y轴坐标点。 int nWidth, // 在目标设备中绘制位图的宽度。原创 2015-08-06 13:14:08 · 8065 阅读 · 1 评论 -
VC++串口通信基础知识
在Win32下,可以使用两种编程方式实现串口通信,其一是使用ActiveX控件(ActiveX是Microsoft对于一系列策略性面向对象程序技术和工具的称呼,其中主要的技术是组件对象模型(COM)),这种方法程序简单,但欠灵活。其二是调用Windows的API函数,这种方法可以清楚地掌握串口通信的机制,并且自由灵活。 本文我们只介绍API串口通信部分。 串口的操作可以有两种操作方式:同原创 2015-08-18 10:26:34 · 2745 阅读 · 2 评论 -
串口之GetCommTimeouts、SetCommTimeouts函数详解
Windows系统利用此函数获取特定的通讯设备读写时的超时参数设定,GetCommTimeouts函数声明如下:BOOL GetCommTimeouts(HANDLE hFile,LPCOMMTIMEOUTS lpCommTimeouts);GetCommTimeouts函数的第一个参数hFile是由CreateFile函数返回指向已打开串行口的句柄。第二个原创 2015-08-18 09:28:49 · 10928 阅读 · 0 评论 -
MFC调用WPF函数
很多情况下WPF调用MFC中的函数,但是也许会有特俗的情况,即MFC调用WPF中的函数。原创 2015-08-06 15:32:40 · 15918 阅读 · 0 评论 -
串口之SetUpComm、PurgeComm函数详解
SetupComm该函数初始化一个指定的通信设备的通信参数。BOOL SetupComm(HANDLE hFile,DWORD dwInQueue,DWORD dwOutQueue);参数hFile[IN]通讯设备句柄。CreateFile函数返回此句柄。dwInQueue[in]指定推荐的大小,以字节原创 2015-08-18 09:35:17 · 30484 阅读 · 0 评论 -
串口之OVERLAPPED结构体详解
typedef struct _OVERLAPPED { DWORD Internal; DWORD InternalHigh; DWORD Offset; DWORD OffsetHigh; HANDLE hEvent; } OVERLAPPEDInternal: 预留给操作系统使用。它指定一个独立于系统的状态,当GetOverlappedResul原创 2015-08-18 09:18:41 · 9448 阅读 · 0 评论 -
串口之COMMTIMEOUTS结构体详解
COMMTIMEOUTS主要用于串口超时参数设置。COMMTIMEOUTS结构如下: typedef struct _COMMTIMEOUTS { DWORD ReadIntervalTimeout; DWORD ReadTotalTimeoutMultiplier; DWORD ReadTotalTimeoutConstant; DWORD WriteTotalTimeo原创 2015-08-18 09:14:46 · 18240 阅读 · 0 评论 -
串口之CreateFile 函数详解
HANDLE CreateFile(LPCTSTR lpFileName, //指向文件名的指针DWORD dwDesiredAccess, //访问模式(写/读)DWORD dwShareMode, //共享模式LPSECURITY_ATTRIBUTES lpSecurityAttributes, //指向安全属性的指针DWORD dwCreationDi原创 2015-08-18 08:40:03 · 23848 阅读 · 0 评论 -
VS2010中关于char[]转换成LPCWSTR的问题
在写Win32应用程序时候,你可能遭遇到如下错误 : error C2664: ‘LoadImageW’ : cannot convert parameter 2 from ‘char [20]’ to ‘LPCWSTR’“char [20]”转换为“LPCWSTR”一、问题的原因:VS2010默认采用宽字符UNICODE编码方式,定义了Unicode,因此相关的字符串必须为unicode字符串,而转载 2015-09-01 14:24:46 · 12881 阅读 · 1 评论 -
串口之GetCommState、SetCommState函数详解
GetCommState 读取串口设置(波特率,校验,停止位,数据位等).函数声明:BOOL GetCommState(HANDLE hFile,LPDCB lpDCB);GetCommState函数的第一个参数hFile是由CreateFile函数返回指向已打开串行口的句柄。第二个参数指向设备控制块DCB。如果函数调用成功,则返回值为非0;若函数调原创 2015-08-18 09:23:31 · 16674 阅读 · 0 评论 -
串口之WaitForSingleObjec、WaitForMultipleObjects函数详解
WaitForSingleObject 函数等待函数可使线程自愿进入等待状态,直到一个特定的内核对象变为已通知状态为止。DWORD WaitForSingleObject(HANDLE hObject, DWORD dwMilliseconds);第一个参数hObject标识一个能够支持被通知/未通知的内核对象(前面列出的任何一种原创 2015-08-18 10:23:38 · 4383 阅读 · 0 评论 -
从DLL中导出变量 (显示加载、隐式加载)
从DLL中导出变量 使用动态链接库的好处: 1.可以采用多种编程语言来编程。比如可以使用C#来调用DLL,使用DLL中的导出函数和导出变量。 2.可以增强产品的功能,提供二次开发的平台。 3.简化项目管理、可以节省磁盘空间和内存。比如多个应用程序需要访问同样的功能,那么就可以讲该功能以DLL的形式提供。 声明导出变量有两种形式: 第一种是用__declspec进行导出声明原创 2015-07-09 09:28:34 · 9918 阅读 · 0 评论 -
串口之ReadFile、WriteFile函数详解
BOOL ReadFile( HANDLE hFile, //文件的句柄 LPVOID lpBuffer, //用于保存读入数据的一个缓冲区 DWORD nNumberOfBytesToRead, //要读入的字符数 LPDWORD lpNumberOfBytesRead, //指向实际读取字节数的指针 LPOVERLAPPED lpOverl原创 2015-08-18 10:17:10 · 58191 阅读 · 2 评论