vc
文章平均质量分 86
吴安
大漠孤烟直,长河落日圆。 C++ C# Halcon openCV
展开
-
vc操作Excel保存 和Excel的退出
公司给了我一个任务,用excel调用模版生成结帐单并进行打印。我在努力的n天以后终于完成了。现在总结一下: 1.速度问题,vc读写excel的时候速度是很慢的,如果一个一个单元格的读写,能把你给急死。所以在读取和写入excel的时候,我使用了安全数组,这样能够将对应的数据一次性从文件中读出或者是写入。 2.关于屏蔽掉最后“确定改变文件”的对话框,用Book的close方转载 2014-04-16 17:39:24 · 12302 阅读 · 0 评论 -
原子性和volatile
所谓原子操作,就是"不可中断的一个或一系列操作" , 在确认一个操作是原子的情况下,多线程环境里面,我们可以避免仅仅为保护这个操作在外围加上性能昂贵的锁,甚至借助于原子操作,我们可以实现互斥锁。很多操作系统都为int类型提供了+-赋值的原子操作版本,比如 NT 提供了 InterlockedExchange 等API, Linux/UNIX也提供了atomic_set 等函数。 前转载 2016-08-16 13:47:58 · 395 阅读 · 0 评论 -
提高window的实时性
1 提高线程的优先级//定时器处理函数,空函数void WINAPI onTimeFunc(UINT wTimerID, UINT msg,DWORD dwUser,DWORD dwl,DWORD dw2){}main(){//多媒体定时器,提升内核时间精度MMRESULT timer_id;tim原创 2016-06-04 11:19:50 · 1611 阅读 · 0 评论 -
timeSetEvent
MMRESULT timeSetEvent( UINT uDelay, UINT uResolution, LPTIMECALLBACK lpTimeProc, WORD dwUser,转载 2016-06-06 11:36:33 · 967 阅读 · 0 评论 -
VC 读取usb相机
使用vfw# include //加入视频采集所需头文件 需要用到Vfw32.lib库,在project->setting->link->object/library modules中添加 char achDeviceVersion[80] ; // 设备版本信息 char achDeviceAndVersion[160]; //设备名及版本信息转载 2016-10-10 17:39:26 · 4157 阅读 · 0 评论 -
VC控件的子类化
子类化一个Windows控件与子类化一个C++类不同,子类化一个控件要求你把一个窗口的一些或所有的消息映射都替换成自己的函数来响应,这样你就有效的阻止了控件去做系统默认的行为,而按自己的想法去做。子类化有两种类型: 实例子类化(instance subclassing)和全局子类化(global subclassing)。实例子类化是子类化一个窗口中的单一实例,全局子类化是把整个窗口子类化为一个特转载 2016-12-05 10:34:33 · 353 阅读 · 0 评论 -
vc控件子类的例子
#pragma once// CMyButtonclass CMyButton : public CButton{ DECLARE_DYNAMIC(CMyButton)public: CMyButton(); virtual ~CMyButton();protected: DECLARE_MESSAGE_MAP()public: afx_msg void OnDrawI原创 2016-12-05 10:39:50 · 323 阅读 · 0 评论 -
VC++中的子类化与超类化
如果你曾经在 Windows 环境下编过程序,有时候就会发现:有一个现成的窗口,几乎有你所需要的全部功能,但还不完全一样。如果你需要一个具有过滤特殊字符功能的 Edit 控件。当然最直接的方法就是自己用代码来实现,但这的确是一个费时又很困难的任务,而子类化就可以用来做这种事情。子类化允许你接管被子类化的窗口,使你对它有绝对的控制权。举个例子了来阐明一下:例如你需要一个只接受十六进制数字输入转载 2016-12-05 11:04:01 · 492 阅读 · 0 评论 -
消息机制
摘要:Windows编程和Dos编程,一个很大的区别就是,Windows编程是事件驱动,消息传递的。所以,要学好Windows编程,必须对消息机制有一个清楚的认识,本文希望能够对消息的传递做一个全面的分析。一、什么是消息?消息系统对于一个win32程序来说十分重要,它是一个程序运行的动力源泉。一个消息,是系统定义的一个32位的值,他唯一的定义了一个事件,向Windo转载 2016-12-05 13:34:59 · 279 阅读 · 0 评论 -
LNK1123: 转换到 COFF 期间失败: 文件无效或损坏
用VS2010编译C++项目时出现这样的错误:LNK1123: 转换到 COFF 期间失败: 文件无效或损坏方案一:(这个方法比较好,在用qt运行时出现问题也能解决)复制 C:\Windows\winsxs\x86_netfx-cvtres_for_vc_and_vb_b03f5f7f11d50a3a_6.1.7601.17514_none_ba1c770af0b2031b转载 2017-03-26 17:30:03 · 214 阅读 · 0 评论 -
C++ 中超类化和子类化
超类化和子类化没有具体的代码,其实是一种编程技巧,在MFC和WTL中可以有不同的实现方法。参考 :http://www.360doc.com/content/10/1115/13/3972135_69517213.shtml窗口子类化:原理就是改变一个已创建窗口类的窗口过程函数。通过截获已创建窗口的消息,从而实现监视或修改已创建窗口类的行为属性。可以用来改变或者扩展一个已存在的窗口的行为,而不用重...转载 2018-04-08 08:45:00 · 1001 阅读 · 0 评论 -
编写DLL所学所思(1)——导出函数
编写DLL所学所思(1)——导出函数2010.8.31~2010.9.1总结2011.9.28~30整理烛秋动态链接库的使用有两种方式,一种是显式调用。一种是隐式调用。(1) 显式调用:使用LoadLibrary载入动态链接库、使用GetProcAddress获取某函数地址。(2) 隐式调用:可以使用#pragma comment(lib, “XX.lib”)的方式,也可以...转载 2018-05-08 21:51:18 · 216 阅读 · 0 评论 -
加快编译
在使用VS2010编译C++程序的时候,每次修改工程中的某一个文件,点击“生成-仅用于项目-仅生成**”时,往往都是整个工程都需要重新编译一遍。由于这个工程代码量太大,每次编译完成都需要将近10分钟左右的时间编译。最烦人的时候是当编译完了出错,修改了错误再次编译,浪费很多时间。那么怎么配置VS2010像VC6.0那样默认的可以只编译修改后的文件呢?针对这个问题的解决办法网络上也有不少,在这里我整理...转载 2018-05-17 09:57:39 · 128 阅读 · 0 评论 -
VS加快程序编译速度——以VS2013为例
前言由于当前项目包含了很大.cpp文件,以至于无法享受到DLL动态编译的快感,所以就在网上找了很多方法,将试用后的方法介绍给大家。亲测”多处理器加速“,可以将编译速度至少提升一倍以上,而且没有对源程序生成.exe文件造成阉割。方法介绍:第一步:项目属性->配置属性->C/C++->代码生成->启用最小重新生成:否(/Gm-)第二步: 分debug模式和release模式,...转载 2018-05-15 11:42:29 · 1555 阅读 · 0 评论 -
LINK : warning C4727
>LINK : warning C4727: 具有相同时间戳的名为 xxx.pch 的 PCH 已存在于 aaa.obj 和 bbb.obj 中。 使用第一个 PCH。MSDN 官方文档:https://msdn.microsoft.com/zh-cn/library/cfahxw6k.aspx前面运行的时候一直是没有这个警告的,(哈哈哈)后面手痒,将 stdafx.h stdafx.c...转载 2018-06-12 17:11:28 · 833 阅读 · 0 评论 -
volatile关键字
大家都知道C语言中volatile这个关键字,它是“易变”的意思,其实把它理解成“直接存取原始地址”比较确切;1.直接修饰C函数,方便编译器进行优化我们会在一些代码中用volatile关键字来修饰函数,如linux0.12的源代码中就有这样的语句:在linux的source code(linux/mm/memory.c)中有这样两句:volatile voi转载 2016-08-16 11:02:05 · 225 阅读 · 0 评论 -
VC6.0和VS2005查看查看C或者C++文件汇编代码的方法
转:http://zhangyongbluesky.blog.163.com/blog/static/18319416201203101960/方法一:生成asm文件1)VS2005:项目 ---》属性 ---》 配置属性 ---》 c/c++ ---》 输出文件 ---》 右边内容项:汇编输出 ---》带源代码的程序集(/FAs )。这样在项目里面生成后缀转载 2016-08-16 10:40:42 · 3212 阅读 · 0 评论 -
vc操作excel
1。在view-classwizad-autometion中点击add class-from a type library,选择execl。exe(office2003)。2。从列表中选取_Application/_Workbook/_WorkSheet/Range/Workbooks/Worksheets 6项,确定,工程目录下会加入excel.cpp和excel.h。3。在你转载 2014-04-04 11:46:20 · 580 阅读 · 0 评论 -
vc操作excel
这些天做个软件,需要读取 Excel 并导入到数据库中,所以研究了一下在 VC 下操作 Excel 的方法,这里做个总结,以作备忘。 一、最常用的 OLE 自动化方式这个方式应该说是功能最全的方式,可能也是应用的最多的方式。由于这种方式采用的是隐藏启动 Office Excel 的方式,所以几乎是全能,任何功能都可以完成。不过缺点也是比较明显的:1、采用 OLE 方转载 2014-04-04 11:50:09 · 808 阅读 · 2 评论 -
vc 操作excel
1:导入excel.h和excel.cpp(可以从系统中找出的)2:在当前文件夹中加头文件#include "excel.h"3:在StdAfx.h中加入 #import "C:\Program Files\Common Files\System\ado\msado15.dll" no_namespace rename("EOF","rsEOF")4:在初始化中加转载 2014-04-04 11:52:02 · 779 阅读 · 0 评论 -
excel
登录 | 注册每天进步一点点... VC中操作excel表格摘要:使用Microsoft Office所带的控件来实现代码操作excel表格。 操作系统是Microsoft XP,办公套装是Microsoft Office 2003,编程环境是Microsoft Visual Studio 6.0,一切都是转载 2014-04-08 09:07:57 · 737 阅读 · 0 评论 -
在工作者线程中操作Excel要初始化OLE
Microsoft技术社区联盟成员,全球领先的Excel门户,Office培训学习的最佳社区 加关注繁體中文切换到窄版123456帐号:记住帐号 找回密码密码: 免费注册转载 2014-04-08 18:50:39 · 2493 阅读 · 0 评论 -
vs2005 生成安装文件的方法
我们经常看到应用程序是要通过安装原创 2014-05-21 00:10:23 · 694 阅读 · 0 评论 -
window 绘图
目录转载网址:http://www.cnblogs.com/kzloser/archive/2012/11/01/2747565.html#c0GUI作图概述描绘图形位图文本输出设置画刷/画笔/字体MFC 资源句柄的获得与释放(本章节中例子都是用 VS2005 编译调试的)GUI作图概述作图步骤获得设备描述表资源句柄绘图操转载 2015-02-06 10:14:12 · 513 阅读 · 0 评论 -
window 绘图实例
篇一: VC实现波形不闪烁动态绘图 (转载) 作者:重庆大学通信工程学院 吴华转载网址为:http://blog.csdn.net/xuyongbeijing2008/article/details/8064284一、程序运行时波形效果二转载 2015-02-06 10:16:15 · 799 阅读 · 0 评论 -
CTypedPtrList
template class CTypedPtrList : public BASE_CLASS参数: BASE_CLASS 类型指针列表类的基类;必须是一个指针列表类(CObList或CPtrList)。TYPE 保存在基类列表中的元素的类型。说明:CTypedPtrList类为类CPtrList的对象提供了一个类型-安全的“包装”。当你使用CTypedPtrList转载 2016-01-06 11:17:53 · 1420 阅读 · 0 评论 -
CArray的用法
CArray的用法2007-05-23 10:01templateclass CArray:public CObject 参数 TYPE 模板参数指定存储在数组中的对象的类型。TYPE是一个由CArray返回的参数。ARG_TYPE 模板参数指定用于访问存储在数组中对象的参数类型。通常是一个对TYPE的参考。ARG_TYPE是一个传递给CArray的转载 2016-01-06 16:24:53 · 349 阅读 · 0 评论 -
MFC数组类CArray的使用的操作详解
MFC数组类CArray的使用的操作详解[转] MFC的数组类支持的数组类似于常规数组,可以存放任何数据类型。常规数组在使用前必须将其定义成能够容纳所有可能需要的元素,即先确定大小,而MFC数组类创建的对象可以根据需要动态地增大或减小,数组的起始下标是0,而上限可以是固定的,也可以随着元素的增加而增加,数组在内存中的地址仍然是连续分配的。 MFC定义了数组模板类CArray,并针对转载 2016-01-06 16:25:58 · 8821 阅读 · 1 评论 -
提供一个对话框供用户选择一个文件夹路径。
版权声明:本文为博主原创文章,未经博主允许不得转载。目录(?)[+]1,目的提供一个对话框供用户选择一个文件夹路径。2,原理&实现先贴上这个工具类的源码:在你的程序中使用静态方法 CSelectFolderDlg::Show() 就能显示一个选择文件夹的对话框啦,返回的CString就是所选文件夹路径。[c转载 2016-05-27 10:40:27 · 1154 阅读 · 0 评论 -
获取光标的位置
版权声明:本文为博主原创文章,未经博主允许不得转载。 获取控件的焦点方法为 Getforce一: 实现方法:主要在WM_MouseMove消息内部实现坐标的获取 使用函数:GetCursorPos(&p) 二:测试代码 void CGetPointDlg::OnMouseMove(UINT nFlags, CPoint point){ /*转载 2016-05-28 06:58:35 · 3335 阅读 · 0 评论 -
多线程
(一) MFC对多线程编程的支持 MFC中有两类线程,分别称之为工作者线程和用户界面线程。二者的主要区别在于工作者线程没有消息循环,而用户界面线程有自己的消息队列和消息循环。 工作者线程没有消息机制,通常用来执行后台计算和维护任务,如冗长的计算过程,打印机的后台打印等。用户界面线程一般用于处理独立于其他线程执行之外 的用户输入,响应用户及系转载 2016-06-06 13:33:15 · 280 阅读 · 0 评论 -
Debug 和 Release 的区别
Debug 和 Release 并没有本质的区别,他们只是VC预定义提供的两组编译选项的集合,编译器只是按照预定的选项行动。如果我们愿意,我们完全可以把Debug和Release的行为完全颠倒过来。当然也可以提供其他的模式,例如自己定义一组编译选项,然后命名为MY_ABC等。习惯上,我们仍然更愿意使用VC已经定义好的名称。 Debug版本包括调试信息,所以要比Release版本大很多(可能...转载 2018-07-13 17:43:42 · 286 阅读 · 0 评论