自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 收藏
  • 关注

原创 COM组件开发(六)——使用ATL开发COM组件

使用ATL开发COM组件          使用ATL开发COM组件之前,要对几个重要的类进行说明:          CComModule          这是ATL的中心模块类,它的作用有点像MFC中的CWinApp,但没有后者那么庞大。它和它导出的类主要负责处理引用技术、在本地服务器内的类厂注册以及管理自动注册和自动反注册的注册表管理程序间的协调。若要创建进程内组件,只需直接使

2015-02-27 10:10:14 5716 3

原创 COM组件开发(五)——使用MFC开发COM组件

使用MFC创建一个进程内组件          这里使用的VS2008,新建一个MFC DLL项目,项目名称为“MFCCOM”,点击“确定”后进入MFC DLL向导,如下图所示:            DLL类型选择“使用共享的MFC DLL的规则DLL”,附加功能勾选“自动化”(自动化是一种支持弱类型语言调用的特性),然后点击“完成”即可,生成的项目文件目录如下图:   

2015-02-26 17:21:37 7359

原创 COM组件开发(四)——VC++调用COM组件的方法

ActiveX 控件         对于ActiveX控件,可以在Visual Studio中使用ClassWizard的方法引入,在MFC项目中选择菜单“项目”——> “添加类”——>“ActiveX控件中的MFC类”,然后可以分别从注册表和文件两种方式中选择自己想要的组件。选择注册表中的方式获取的都是在本系统中注册了的组件,而文件则是从磁盘目录下获取COM组件。代

2015-02-16 15:15:35 19590 1

原创 COM组件开发(三)——类厂对象

COM类厂对象的实现        COM客户程序要使用COM对象是通过COM库创建而来的,而实际上COM库是调用COM对象的类厂来创建的。COM类厂对象也是一个COM对象,所以它也从IUnknow继承而来,而它又支持IClassFactory接口:class IClassFactory:public IUnknow{ public: virtual HRESUL

2015-02-04 19:32:20 4240

原创 COM组件开发(二)——COM应用模型及COM库

C/S模型        COM对象与客户程序之间是基于C/S(客户端/服务器)的模型在运行的,COM服务器是组件对象的容器,由组件对象向COM客户提供服务,所以COM的应用模型继承了C/S模型的优点:高可靠与稳定性、很强的拓展性并且性能高等。包容与聚合        COM不是简单的C/S模型,有时客户可以反过来提供服务,COM对象提供服务的同时也可以向其他组件寻求服务,所以

2015-01-31 11:34:40 3552

原创 COM组件开发(一)—— 对象与接口

一.前言       在COM规范中,最基本的两个要素就是对象与接口,因为COM就是由这两者来共同实现的。COM对象在组件中是被封装起来的,客户代码只能通过接口来访问COM对象并享受其,由于客户与COM直接打交道的是COM接口,所以COM接口是COM最关键的要素。二.COM对象         COM对象其实就类似于C++中的对象,也就是说某个类的实例,包含了一组数据和操作。在CO

2015-01-19 23:08:13 10633

原创 C/C++的显式类型转换

C/C++的显式类型转换        在C/C++中,我们可以显式地将某个值、变量或对象强制转换成某种特定的类型。C         C语言中的显示类型转换非常简单,直接用括号把所需要转换的数据类型括起来放在值的左边即可:int a = 100;long b = (long)a;        但是,还有一种是把值(变量)用括号括起来放在类型前面的做法:int a

2015-01-11 16:02:15 4323

原创 使用Acrobat SDK开发Adobe Acrobat&Reader插件

一、前言          由于本人工作需求,需要对Acrobat与Adobe Reader的SDK进行研究,并开发与其相关的插件。但是问题来了,我搜索了一遍网上的资料,无论是百度还是谷歌都找不到 一篇比较正式的入门教程。无奈之下我也只能到官网下载最新版的Acrobat SDK,然后自己阅读文档并一步步地做出来。相信也有很多像我这样的新手对于第一次开发Adobe的插件一头雾水,同时又为网上

2014-10-14 16:52:49 19977 5

原创 C++读写文件

C++读写文件须先包含头文件 #include         C++中用3个类来进行文件读写:文件流fstream, 输入文件流ifstream, 输出文件流ofstream,后两者是从前者派生出来的,ifstream默认读出文件,ofstream默认写入文件。例子,使用输入文件流来打开一个文件:#include #include using namespace st

2014-03-14 15:39:02 799

原创 Windows窗体程序

最近在重新复习Windows的窗体程序,所以现在开始把一个Win窗体程序的基本要素和代码都记录下来: #include  LRESULT CALLBACK WndProc(HWND , UINT , WPARAM , LPARAM ); int WINAPI WinMain(    HINSTANCEhInstance,     //程序实例句柄,用以标识本应用程序

2014-03-14 13:50:31 718

原创 GetMessage与PeekMessage的区别

首先来看来GetMessage与PeekMessage这两个API的函数原型:BOOL WINAPI GetMessage(LPMSG lpMsg,HWND hWnd,UINT wMsgFilterMin,UINT wMsgFilterMax); BOOL WINAPI PeekMessage(LPMSG lpMsg,HWND hWnd,UIN

2014-03-14 13:36:07 1056

原创 C语言读写文件

C语言库函数包括文件的打开、关闭、读、写、 定位等各种操作要操作文件,首先要声明一个文件指针变量FILE* fp;打开文件调用fopen打开文件文件指针名=fopen(文件名,使用文件方式);  PS:这里文件路径必须是带双斜杠\\其中,1.文件使用方式        意 义“rt”      只读打开一个文本文件

2014-03-14 12:41:19 2884

空空如也

空空如也

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

TA关注的人

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