
VC
文章平均质量分 84
zztoll
Windows,Linux应用编程,C++(MFC,QT),C#(Winform,WPF),Python,boost,TCP/IP协议栈,交换机,路由器,以太网,数据库,Winpcap,USB,串口。
展开
-
主程序与python的双向交互
如果需要用脚本来扩展一个程序的功能,或是定制差异化的客制功能,或是用脚本自动运行一系列需要手动执行的操作,可以考虑用python脚本来实现。当然也可以用lua脚本来实现,不过python库更丰富,可扩展空间更大。 要达成上述功能,就需要主程序与python能够实现双向交互,即主程序可以调用python脚本并取得结果,python脚本也可以调用主程序的功能。 已知主程序是可以单向调用python解释器来执行脚本的,也已知python可以通过ctypes库来...原创 2020-09-21 17:15:00 · 629 阅读 · 0 评论 -
浅析Visual Studio中VC++单元测试原理
接上一篇文章,VS2015中对MFC工程进行单元测试,当我们新建一个VC++的测试工程后,查看生成的代码,会发现代码是这样的:#include "stdafx.h"#include "CppUnitTest.h"using namespace Microsoft::VisualStudio::CppUnitTestFramework;namespace UnitTest1{ ...原创 2020-03-20 16:07:28 · 450 阅读 · 0 评论 -
VS2015中对MFC工程进行单元测试
如何在VS2015中进行单元测试,直接说步骤。新建一个MFC工程在我们的实际需求中,我这里接近实际的需求,建的是一个MFC工程,原创 2020-03-20 15:20:01 · 846 阅读 · 0 评论 -
VC 如何用代码实现消息映射
QT,C#可在代码中关联事件和事件函数,且关联可取,极其方便。反观VC,只能用宏关联,且需程序一开始就关联消息和消息函数,运行中不可取消关联。MFC如此包装很不优雅。在用代码创建控件和菜单,或想用一个消息函数处理多个消息时,我更愿意在代码中作消息映射。VC虽已老朽,但仍有不少公司在用,且还有旧VC项目需维护,因此有必要在此分享“如何用代码实现消息映射”。 MFC的消息...原创 2019-01-29 17:56:09 · 772 阅读 · 0 评论 -
VC 用一个函数处理所有菜单消息
当有多个菜单项,且菜单点击事件的执行代码都很短时,我就用一个函数来响应所有点击消息,不用为菜单逐个添加消息映射,代码显得简短而整洁。 当然,你可以用ON_COMMAND_RANGE方式,但这种方式的用起来很不便,因为菜单项ID必须要在一个范围内才便于处理,而这个ID是VS自动赋于的,手动改也麻烦,所以本文采用重载OnCommand函数的方法。 做法如下: 1.重载函数 B...原创 2019-02-01 17:16:55 · 533 阅读 · 0 评论 -
fatal error LNK1103: debugging information corrupt; recompile module
在网上搜此问题时,发现好多人都遇到过,有各个解决办法,而我的解决办法是,使用较新版的VS2013编译时就没此提示了.原创 2015-03-13 14:43:09 · 520 阅读 · 0 评论 -
MFC到wxWidgets移植笔
移植从最简单、最小的模块开始,MyMoney中有几个控件类比较独立,首先移植他们。CDoubleEdit是一个只能输入double的文本控件,其小数位置最多允许两位,在MyMoney中提供金钱输入的功能。在MFC中,CDoubleEdit从CEdit派生,为响应消息EN_CHANGE,实现了消息函数OnEnChange,当文本控件内容发生改变后,判断是否是合法值,如果不是则恢复成旧值m_c转载 2013-04-15 17:56:48 · 2494 阅读 · 0 评论 -
VC修改DLL名称出现错误
现象:I have two different kind of configurations for a project that will produce dll with different names. The files are generated ok, but I have to register the files manually afterwords or change th转载 2013-03-20 10:48:03 · 1269 阅读 · 0 评论 -
unresolved external symbol __错误解决
在用VC6.0写程序调试时,初学者总是会遇到一些错误,比如,从网上下载的源代码,编译通过了,连接却出错误了。针对这些错误主要是因为MFC类库没有引用所出现的问题。类似错误提示:nafxcwd.lib(thrdcore.obj) : error LNK2001: unresolved external symbol __endthreadexnafxcwd.lib(thrdcor转载 2013-02-28 13:48:55 · 14561 阅读 · 1 评论 -
VC编写vista或win7下需要管理员权限运行的程序
/////////////////////VC编写vista或win7下需要管理员权限运行的程序VC编写vista或win7下需要管理员权限运行的程序 程序有com,需要注册,但是在win7上面如果不是管理员权限的话,执行就会失败。先是通过代码提升用户权限的。代码如下:view plaincopy to clipboardBOOL UpgradeProcessP转载 2012-12-14 11:24:15 · 2955 阅读 · 0 评论 -
VC中获取桌面工作区与任务栏大小
VC获得桌面工作区与任务栏大小1、全屏显示int full_x = GetSystemMetrics(SM_CXSCREEN);int full_y = GetSystemMetrics(SM_CYSCREEN);::SetWindowPos(hWnd,HWND_TOPMOST,0,0,full_x,full_y,0 ); 2、工作区显示 RECT rt;转载 2012-12-07 14:30:47 · 4360 阅读 · 2 评论 -
程序无法运行,系统并行配置不正确
我的程序在VS2005下编译的,但未使用MFC,在XP下可以运行,但在Win7下出现提示:程序无法运行,系统并行配置不正确.1.最后在在链接选项里面讲“嵌入清单文件”给去掉,就OK了.2.网络上说产生这个问题的原因可能是未装运行库. 在微软网站下载运行库就可以了,http://download.microsoft.com/download/7/9/8/798325b7-8993-4e原创 2012-11-29 16:57:26 · 1983 阅读 · 0 评论 -
抛开IDE编译程序
题目:抛开IDE编译程序作者:vbcs来自:http://hi.baidu.com/vbcs003不知道大家在去一下开源站点上下载程序的时候当打开下载下来的程序的程序的时候,你们很奇怪的发现里面没有我们想要的工程文件(一般指VC的工程文件)或者是C语言的,这时如果我们想编译的时候就会感觉无从下手,但是大家没有没注意过里面一般会有一个相应的makefile文件,所以这就是问题的关转载 2012-09-05 09:41:29 · 1100 阅读 · 0 评论 -
运行VC++自带的Nmake
转自:http://cyinger-smiling.blogbus.com/logs/16826664.html 1.Dos下运行VC++自带的Nmake,设置路径==========================================注:摘录侯俊杰--在 console mode 中使用 C/C++ 编译器,更多参照http://jjhou.csdn.转载 2012-09-05 09:40:24 · 5525 阅读 · 0 评论 -
_AFXDLL
经常发现有#ifdef _AFXDLL.......#else......这样的语句我也在网上找了找答案,得知:定义这个符号表示动态连接MFC。 在用VC编程时,1新建-》2MFC APPWIZARD-》3....-》4...-》到 STEP 3 OF 4这一步有个选项 1 D当共享DLL 2 S当STATICALLY连接库 我选“1 D当共享DLL”再“确定”,这时,框架生转载 2012-08-23 22:43:32 · 5386 阅读 · 0 评论 -
VC的预编译机制
所谓的预编译头就是把一个工程中的那一部分代码,预先编译好放在一个文件里(通常是以.pch为扩展名的),这个文件就称为预编译头文件这些预先编译好的代码可以是任何的 C/C++代码--------甚至是inline的函数,但是必须是稳定的,在工程开发的过程中不会 被经常改变。如果这些代码被修改,则需要重新编译生成预编译头文件。注意生成预编 译头文件是很耗时间的。同时你得注意预编译头文件通常很大,通常有转载 2012-08-23 14:26:02 · 701 阅读 · 0 评论 -
CFile 如何判断文件已关闭
if(f.m_hFile == CFile::hFileNull){ //表示文件已经被关闭了 }原创 2012-07-24 15:00:39 · 1333 阅读 · 0 评论 -
nmake使用
makefile教程---nmake命令编译器的使用一 简介大家已经习惯于微软提供的功能强大的IDE,已经很少考虑手动编连项目了,所谓技多不压身,有空的时候还是随我一块了解一下命令行编译。C/C++/VC++程序员或有Unix/Linux编程经验应该很熟悉,以前我曾写过一篇文章描述用csc/vbc来进行命令行编译,今天再介绍一下MS提供的更加快捷有效的编译工具NMake。MSD转载 2012-08-30 23:16:34 · 577 阅读 · 0 评论 -
VS2005手动编译链接C++文件
在命令行窗口使用cl命令,不链接用/cCL.exe 是控制 Microsoft C 和 C++ 编译器与链接器的 32 位工具。编译器产生通用对象文件格式 (COFF) 对象 (.obj) 文件。链接器产生可执行文件 (.exe) 或动态链接库文件 (DLL)。注意,所有编译器选项都区分大小写。 若要编译但不链接,请使用 /c。以下是一个完整的编译器选项分类列表。优化转载 2012-07-18 13:18:09 · 2549 阅读 · 0 评论