自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(90)
  • 资源 (2)
  • 问答 (8)
  • 收藏
  • 关注

转载 使用C#和Excel进行报表开发(二)-操作统计图(Chart)

下面的代码使用一个现有的统计图Excel文件,加载这个文件,设置某一项的值和统计图的表示方式,然后保存到另一个Excel文件里。如果是VS2005+Office2003,也可以选择使用Visual Studio Tools for Office来作。Excel.Application m_objExcel = null;Excel._Workbook m_objBook = n

2012-11-06 10:53:26 1178 1

转载 将Excel应用于报表开发中(一)--开始

目前的商业工具如水晶报表,ActiveReport等,都提供了灵活,强大的功能,但是对于比较特殊化的表格,特别是国内的一些应用,都是一个个的格子组成的,这样要是用线来一根根画就比较麻烦,但是这类工具还都不提供表格化的报表布局定义方式。一个很好的选择是VS2005的客户端报表(RDLC),但是在某几个方面还是不够灵活,例如,灵活性有限制,要想自己编码实现一些复杂逻辑还是有困难;要VS2005,对于一

2012-11-06 10:52:35 904 1

转载 两种VC操纵EXCEL的方法

第一种方法,简单的,用CDatabase实现. 程序是一个基于对话框的,步骤:    A,为了避免代码重复,设置下面几个全局变量(类范围的),要引入头文件              CDatabase m_db;                     //数据库             CString m_dbdriver;                 //要生成的EXCEL

2012-11-03 17:10:47 840 1

转载 VC之Office自动化开发(三)

二 EXCEL篇及命名空间说明1 Excel组件对象模型     Microsoft Office Excel 2003文档中的数据是高度结构化的,因此Excel对象模型也具有层次结构并且简单明了。Excel 提供了数百个您可能需要与之交互的对象,但是最为重要的是以下四个对象:Application 对象、Workbook 对象、Work

2012-11-03 16:58:47 956 1

转载 VC之Office自动化开发(二)

1  Word组件对象模型   Microsoft Office Word 2003 对象是按层次顺序排列的,层次结构顶端的两个主类是 Application 类和 Document 类。这两个类非常重要,因为在大部分时间里,您要么是在使用 Word 应用程序本身,要么是以某种方式处理 Word 文档。Word 对象模型严格遵循用户界面。Application 对象提供整个应用程序的包装,每个

2012-11-03 16:57:30 1089 1

转载 VC之Office自动化开发(一)

去年底老板临时交给一个任务,为一个试验数据管理系统编写一个电子报告生成程序。因为老板也不怎么重视这个项目(钱少啊,呵呵),所以这个任务只好落在我这种小硕身上了。我也是两眼瞎,万事从头干。三个月的苦斗,还算圆满交差。用VC进行office自动化开发,网上有很多文章,我本不想在此画蛇添足。只是感于自己查资料时的苦痛,所以就厚着脸皮把一些心得拿出来见见阳光,有一些技术还是自己摸索出来的。最后,offic

2012-11-03 16:56:15 840 1

转载 _variant_t、CComVariant与COleVariant、CDBVariant

目前计算机语言多种多样,如C++、Java、Basic、Pascal等,此外还有JavaScript、VBScript、ActionScript等脚本语言,它们各自维护自己的数据类型,当使用C++这样强类型的语言来读取数据库或者与其他语言之间来交换数据时,它很有可能不知道获取到的数据的具体类型,这个时候必须借助于变体类型读取数据。VARIANT数据类型就具有跨语言的特性,同时它可以表示(存储)任意

2012-11-02 16:19:24 4184

转载 OnPaint和OnDraw有什么区别

OnPaint和OnDraw有什么区别?CPaintDC和CClientDC又有什么区别? --------------------------------------------------------------------------------1) 在mfc结构里 OnPaint是CWnd的成员函数. OnDraw是CView的成员函数.2) OnPai

2012-10-30 15:12:01 960

转载 列表控制的主要功能

(一)列表控制的主要功能  列表控制和视(List Control&View) 主要用来以各种方式显示一组数据记录供用户进行各种操作,Windows98/95 中资源管理器中的“ 查看” 标签下的 “ 大图标|小图标|列表|详细资源” 就是一个非常好的典型应用。列表中的记录可以包括多个数据项,也可以包括表示数据内容的大小图标,用来表示数据记录的 各种属性。  列表控制提供了对Windo

2012-10-18 10:57:04 946

转载 林锐:我的大学十年

作者:林锐写此文使我很为难,一是担心读者误以为我轻浮得现在就开始写自传,二是担心朋友们误以为我得了绝症而早早留下遗作。不论是落俗套还是不落俗套地评价,我在大学十年里都是出类拔萃的好学生。并且一直以来我对朋友们和一些低年级的学生们都有很大的正面影响。这十年是一个从幼稚到成熟的过程,交织着聪明与蠢笨、勤奋与懒散、狂热与怯懦、成功与失败。做对了的事可树立为榜样,做错的事可挂作为警钟。我写下经

2012-10-04 00:00:13 14839 1

转载 堆和栈的区别在哪里?

哪些变量会在栈中分配空间,哪些变量会在堆中分配空间?         ---------------------------------------------------------------         1、申请方式             stack:             由系统自动分配。     例如,声明在函数中一个局部变量     int     b;

2012-09-24 18:23:02 522

转载 VC多线程编程

一、问题的提出编写一个耗时的单线程程序:  新建一个基于对话框的应用程序SingleThread,在主对话框IDD_SINGLETHREAD_DIALOG添加一个按钮,ID为IDC_SLEEP_SIX_SECOND,标题为“延时6秒”,添加按钮的响应函数,代码如下: void CSingleThreadDlg::OnSleepSixSecond() {       Sleep(

2012-09-24 17:39:40 633

转载 在CTreeCtrl中捕获复选框选中消息,父子节点选中状态联动 .

转自:http://apps.hi.baidu.com/share/detail/22849017[cpp] view plaincopyprint?void CMyDlg::OnClickTree1(NMHDR* pNMHDR, LRESULT* pResult)   {  // TODO: Add your control notification handle

2012-09-11 11:02:17 2769

转载 给ctreectrl添加图标

ASSERT(pmyTreeCtrl-> GetImageList(TVSIL_NORMAL)   ==   NULL); pmyTreeCtrl-> SetImageList(pmyImageList,   TVSIL_NORMAL); ASSERT(pmyTreeCtrl-> GetImageList(TVSIL_NORMAL)   ==   pmyImageList); 段

2012-09-10 18:54:17 5384

转载 sendmessage和postmessage的区别

BOOL   PostMessage(         HWND   hWnd,             //   handle   of   destination   window         UINT   Msg,               //   message   to   post         WPARAM   wParam,     //   first

2012-08-22 11:19:10 760

转载 业务流程图制作方案

(1)" border="0" alt="" src="http://www.ideadn.com/wp-content/uploads/auto_save_image/2012/07/143753nMN.jpg">图1:用即时贴与白板做的简单流程图关注我请点击:http://weibo.com/heidixie前言:近来一段时间,忙于整理业务流程图,期间,关于流程图的绘制方法和工具也

2012-08-20 14:28:19 7768

转载 虚拟仪器系统I/O接口软件——VISA(3)

3.3.4 VISA仪器控制组织器资源       VISA仪器控制组织器资源在资源模板的基础上,扩展了自己的属性、事件与操作,实现多仪器控制资源的管理机制,使多个仪器合理地分配通信通道,进行多对话通道操作。组织器所定义的资源即为VISA仪器控制组织器资源。n   VISA仪器控制组织器资源(VI_RSRC_VISA_IC_ORG):1.  资源概述:为多仪器的控制资源提供存取能力。

2012-08-18 14:08:23 5662

转载 虚拟仪器系统I/O接口软件——VISA(2)

3.3.2 VISA资源管理器资源VISA资源管理器(VI_RSRC_VISA_RM)是VISA各资源的中间调度器,其在VISA各子系统元件在整个系统中配合工作中起着重要作用。资源管理器的基本功能包括:1) 分配资源地址2) 分配资源识别号(ID)3) 进行操作调用4) 进行事件管理图3.3体现了VISA资源管理器在系统配置中的中间调度作用。图3.3 VISA资源管理器

2012-08-18 14:06:35 6303

转载 虚拟仪器系统I/O接口软件——VISA(1)

VISA是虚拟仪器系统的I/O接口软件,为虚拟仪器系统的统一性和扩展性奠定了基础。本章介绍了VISA的概念和特点,论述了VISA的结构模型,重点分析了VISA资源与资源类的定义与描述,并结合实例,详细讨论了各资源的属性、事件与操作规范与软件实现。在本章结束,还讨论了VISA的实际设计思路与方法。3.1 VISA的概念与特点3.1.1 VISA的由来随着虚拟仪器系统的出现与发展,I/O接

2012-08-18 14:04:57 7592

转载 VISA操作

VISA操作表操作表: 1、VISA资源模板: viClose(vi):关闭特定的对话通道。 viGetAttribute(vi,attribute,attrState):获取资源属性状态值。 viSetAttribute(vi,attribute,attrState):设置资源属性状态值。 viStatusDesc(vi,status,desc):获取返回状态描述

2012-08-18 13:37:07 8913

转载 sscanf() .

sscanf() - 从一个字符串中读进与指定格式相符的数据.   函数原型:   int sscanf( const char *, const char *, ...);   int sscanf(const char *buffer,const char *format,[argument ]...);   buffer 存储的数据   format

2012-08-18 11:28:51 652

转载 揭开正则表达式的神秘面纱

[原创文章,转载请保留或注明出处:http://www.regexlab.com/zh/regref.htm]引言    正则表达式(regular expression)就是用一个“字符串”来描述一个特征,然后去验证另一个“字符串”是否符合这个特征。比如 表达式“ab+” 描述的特征是“一个 'a' 和 任意个 'b' ”,那么 'ab', 'abb', 'abbbbbbbbbb'

2012-08-18 10:56:29 477

转载 #if 0/#if 1 ... #endif”的作用

今看到一帖子,讨论“#if 0/#if 1 ... #endif”的作用,感觉不错,故拿来分享。原帖地址:http://www.ourdev.cn/bbs/bbs_content.jsp?bbs_sn=2028608&bbs_page_no=1005&bbs_id=99991、先说“#if 0/#if 1 ... #endif”的作用,楼上诸位或多或少都说到了一点,但都没有说到关键的地

2012-08-18 10:41:01 648

转载 VC操作注册表

注册表的操作,API为我们提供了大约25个函数。他提供了对注册表的读取,写入,删除,以及打开注册表及键值时所有函数,并且可以达到对注册表的备份,连接和对远端注册表进行查看等等。注册表对整个系统十分重要,你在进行操作时,一定要先考虑清楚。这些函数有:RegCloseKey RegConnectRegistry    RegCreateKey    RegCreateKeyEx    Re

2012-08-17 17:15:33 2114 1

转载 对“仅通过崩溃地址找出源代码的出错行”一文的补充与改进

读了老罗的“仅通过崩溃地址找出源代码的出错行”(下称"罗文")一文后,感觉该文还是可以学到不少东西的。不过文中尚存在有些说法不妥,以及有些操作太繁琐的地方 。为此,本人在学习了此文后,在多次实验实践基础上,把该文中的一些内容进行补充与改进,希望对大家调试程序,尤其是release版本的程序有帮助 。欢迎各位朋友批评指正。一、该方法适用的范围 在windows程序中造成程序崩溃的原因很多

2012-08-13 17:25:02 1213 1

转载 仅通过崩溃地址找出源代码的出错行

作为程序员,我们平时最担心见到的事情是什么?是内存泄漏?是界面不好看?……错啦!我相信我的看法是不会有人反对的——那就是,程序发生了崩溃!“该程序执行了非法操作,即将关闭。请与你的软件供应商联系。”,呵呵,这句 M$ 的“名言”,恐怕就是程序员最担心见到的东西了。有的时候,自己的程序在自己的机器上运行得好好的,但是到了别人的机器上就崩溃了;有时自己在编写和测试的过程中就莫名其妙地遇到了非法

2012-08-13 17:18:31 625

转载 Window关机函数ExitWindowsEx详解

“系统ShutDown”属于Windows系统的一种基本服务。功能上有“关闭系统”,“注销用户”,“锁定工作站”3中操作。SDK中提供了几个函数,来对此服务进行调用。“关闭系统”功能使计算机可以被安全的关闭。所有在文件系统里缓冲的内容都被强制写入磁盘。然后,显示相应的对话框,提示用户计算机将被关闭或者已经准备好被关闭。可选的情况一般是计算机在关闭后重起,而不是直接切断电源。如果一个进程调用

2012-08-13 09:45:37 5878

转载 WM_CLOSE WM_DESTROY WM_QUIT 区别

在发送 WM_QUIT消息时,要使用PostMessage发送,否则,窗口已经关闭,但任务管理器中进程还存在。可以通过 pDlg->PostMessage(WM_QUIT);或DWORD dwThreadId = GetWindowThreadProcessId(pDlg->GetSafeHwnd(),NULL);PostThreadMessage(dwThreadId,WM_QUIT

2012-08-07 11:29:10 1919

转载 vector的用法

vector是C++标准模板库中的部分内容,中文偶尔译作“容器”,但并不准确。它是一个多功能的,能够操作多种数据结构和算法的模板类和函数库。vector之所以被认为是一个容器,是因为它能够像容器一样存放各种类型的对象,简单地说,vector是一个能够存放任意类型的动态数组,能够增加和压缩数据。简单的使用方法如下:  vector test;//建立一个vector  test.push

2012-08-04 15:25:08 476

转载 Service如何利用RegisterDeviceNotification监控Volume的装载和卸载 .

windows提供了以下api来向系统注册一个函数,当有volume增删(比如U盘插拔、新建分区)的时候,通知应用程序:HDEVNOTIFY WINAPI RegisterDeviceNotification(  __in  HANDLE hRecipient,// 可以是窗口句柄或者服务句柄  __in  LPVOID NotificationFilter,  __in  D

2012-08-02 13:03:11 3053

转载 文件系统

一、概述1.基本概念(1)磁盘分区(Partitions)(2)卷(Volumes):是存储设备上有文件系统管理区域的一块区域,是在逻辑上的相互隔离的存储单元。2.文件系统的主要API(1)磁盘和驱动器管理类API(2)文件和目录管理(3)高级文件系统操作二、磁盘和驱动器管理1.遍历卷并获取属性获取一个主机上的所有驱动器列表有两种方法,一种是使用GetLog

2012-08-01 10:39:29 2255

转载 GetLogicalDrives|GetLogicalDriveStrings|GetDriveType-穷举系统所有驱动器

驱动器是通过某个文件系统格式化并带有一个驱动器号的存储区域.存储区域可以是软盘、CD,硬盘或其他类型的磁盘.单击”Windows 资源管理器”或”我的电脑”中相应的图标可以查看驱动器的内容.这里会用到三个函数:一个是GetLogicalDrives, 调用后会返回DWORD的位掩码(bitmask)值,通过判断该DWORD位上1的数量可以获得系统内有多少个驱动器,(当然通过GetLogic

2012-08-01 10:38:02 1898

转载 位运算符

一、位运算符C++语言提供了六种位运算符: & 按位与| 按位或^ 按位异或~ 取反<< 左移                                              >> 右移用法:1.按位与运算符 &按位与运算符是双目运算符,其功能是将参与运算的两操作数各自对应的二进制为进行于操作。只有对应的两个二进制位均为1 是,结果对应的二进制

2012-08-01 09:27:54 567

转载 U盘插入时复制

U盘插入时复制 以前写过的一篇文章,写作水平差了点~~版权说明:欢迎转载,但转载时请注明作者及出处!这个程序的作用就是当USB可移动设备插入电脑的时候,USB_COPY会提示是否拷贝所有文件到指定目录。这个程序的主要思路就是当USB设备插入时,系统会发送WM_DEVICECHANGE消息,只要对这个消息进行处理,添加拷贝函数就完成了框架。其他的地方还得细化,下面就来分析

2012-07-31 15:22:28 1975

转载 获取USB设备插拔消息的备忘

获取USB设备插拔消息的备忘先记录要点,有空再整理成文。1、可根据dbch_devicetype(DBT_DEVTYP_DEVICEINTERFACE和DBT_DEVTYP_VOLUME),分别得到PID/VID/SN和盘符号。2、当USB设备不是存储设备时,只出发一次WM_DEVICECHANGE,devicetype是DBT_DEVTYP_DEVICEINTERFA

2012-07-31 14:40:04 1128

转载 硬件检测:安装、停用

简介现在对于IT的安全来说,热插拨设备是个很大的威胁。在这篇文章中,我将试着开发一个用户应用程序来检测本机系统上的设备改变。例如:插入一个USB设备、Ipod、USB无线网卡等等。这个程序同样也可以停用任何支持插拔的设备。在文章的后面,我会简述一下程序的工作原理和它的局限性。怎么来检测硬件设备的改变?事实上,Windows操作系统会对上层程序发送WM_DEVICECHANGE消息来通知

2012-07-30 11:19:22 1069

转载 U盘小偷,我要更完美——活用消息机制

文/图 灰狐(D.S.T&&E.S.T) 以前经常看到有人做出一些蛮有意思的小工具,其中最多的似乎就是所谓的U盘小偷了——偷偷地把你U盘里的东西copy出来的东西。根据以前的《黑客防线》来看,就这一类的工具已经N多了,有脚本或批处理的、有VC的、有BCB的、有Delphi或VB的,五花八门。虽然每个实现的技术含量大不相同,但大多数都是采用最常规的做法实现的。注入进程的我见过不少,但很少

2012-07-27 13:24:25 3399

转载 VC中TRACE()的用法

个人总结:最近看网络编程是碰到了TRACE语句,不知道在哪里输出,查了一晚上资料也没找出来,今天终于在CSDN上找到了,真是个高地方啊,方法如下:1.在MFC中加入TRACE语句2.在TOOLS->MFC TRACER中选择 “ENABLE TRACING”点击OK3.进行调试运行,GO(F5)(特别注意:不是执行‘!’以前之所以不能看到TRACE内容,是因为不是调试执行,而是‘!’了

2012-07-26 15:24:07 697

转载 WINDOWS SDK 检测U盘插入

工作需要,需要随时检测U盘的插入或拔出状态,然后根据状态做出相关操作。在网上搜索到下列方法: 今天一位老兄要我帮忙做一个软件,需要把在U盘插入USB接口激活之后自动把U盘里的内容拷贝到硬上。拷贝文件不难,麻烦的就是不知道怎么检测U盘是否激活,激活后又是哪个盘符。google了一下,在MSDN上看了几个例子,找到了检测U盘插入,并确定其盘符的方法。 下面给出窗口的回调函数:

2012-07-26 15:16:53 10685

转载 VC 检测U盘 C++

#include  #include  #include  #include  #include    #pragma comment(lib,"shlwapi.lib")  #define TIMER 1//计时器  //function  LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM);//窗

2012-07-24 16:54:08 10482 1

翰纬ITIL_v3_白皮书

ITIL 翰纬ITIL_v3_白皮书

2012-03-06

UNIX网络编程(第2版)第1卷_套接口API和XOpen.传输接口API

UNIX网络编程(第2版)第1卷_套接口API和XOpen.传输接口API

2012-03-06

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

TA关注的人

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