C/C++ &与&& |与|| 的区别
摘要:&& 表示逻辑与的意思,即为and。当运算符两边的表达式的结果都为true时,整个运算结果才为true,否则,只要有一方为false,则结果为false。 比如 12&&23的结果就是1,12&&-1 的结果是1,123&&0的结果就是0 &&还具有短路的功能,即如果第一个表达式为false,则不再
阅读全文
posted @
2021-11-29 15:38
一杯清酒邀明月
阅读(619)
推荐(0)
C++ 多线程同步之Mutex(互斥量)
摘要:一、互斥量Mutex同步多线程 1、Win32平台 相关函数和头文件 1 #include <windows.h> 2 HANDLE CreateMutex( 3 LPSECURITY_ATTRIBUTESlpMutexAttributes, // 指向安全属性的指针 4 BOOLbInitialO
阅读全文
posted @
2021-09-22 15:27
一杯清酒邀明月
阅读(506)
推荐(0)
C++ 多线程同步之临界区(CriticalSection)
摘要:一、Win32平台 1、相关头文件和接口 1 #include <windows.h> 2 3 CRITICAL_SECTION cs;//定义临界区对象 4 InitializeCriticalSection(&cs);//初始化临界区 5 EnterCriticalSection(&cs);//
阅读全文
posted @
2021-09-22 15:21
一杯清酒邀明月
阅读(1335)
推荐(0)
MFC 输出信息
摘要:一、目的: 1、MFC中需要输出一些信息进行查看 一、方法 1、定义的数字 :输出(再输出框中能看到) 方法1:wsprintf、OutputDebugString 1 //①成功:新建字符串,让其打印出来 2 int b=123; 3 wchar_t a[MAX_PATH]={0}; 4 wspr
阅读全文
posted @
2021-09-22 11:26
一杯清酒邀明月
阅读(963)
推荐(0)
C++ error C2678: 二进制“+”: 没有找到接受“const char [22]”类型的左操作数的运算符(或没有可接受的转换)没有与这些操作数匹配的“+”运算符...
摘要:错误:没有与这些操作数匹配的“+”运算符,操作数类型为const char [20]+CString 分析原因:其提示操作数类型为const char [20]+CString 可见是类型有问题 故加上L! 但在哪里加是个问题~ 要在最前面加! bstr_t strCmd = L"update n
阅读全文
posted @
2021-09-10 16:42
一杯清酒邀明月
阅读(623)
推荐(0)
C++ 解决:错误 1 error MSB8031: Building an MFC project for a non-Unicode character set is deprecated
摘要:MFC 生成解决方案时报错: 错误 1 error MSB8031: Building an MFC project for a non-Unicode character set is deprecated. You must change the project property to Unic
阅读全文
posted @
2021-09-10 09:44
一杯清酒邀明月
阅读(1165)
推荐(0)
C++ SafeArrayAccessData,SafeArrayUnaccessData使用
摘要:SafeArray是VB中的数组存储方式。通过SafeArray,可以在VC++和VB间相互调用。SafeArray也是Automation中的标准数组存储方式。 1. SafeArrayAccessData 函数原型: 1 HRESULT SafeArrayAccessData( 2 3 SAFE
阅读全文
posted @
2021-08-18 10:15
一杯清酒邀明月
阅读(554)
推荐(0)
C++ 实现 COM → IUnknown → 接口
摘要:COM:对象组件模型 和语言无关,可以在 C++ 中用类的方式来定义。一个 COM 对象可以实现多个接口。 IUnknown:未直接口 一个特殊的接口,所有COM接口都继承IUnKnown这个接口。 1 interface IUnknown{ 2 HRESULT QueryInterface( //
阅读全文
posted @
2021-08-16 15:54
一杯清酒邀明月
阅读(471)
推荐(0)
C++ COM编程之IUnknown接口
摘要:COM组件其实是一种特殊的类,遵循一个统一的标准,使到各个软件都可以通过某种方法访问这个类的函数和方法,也就可以做到组件通用. com就是统一的标准--通过接口来调用com组件.接口是你的com组件能被外界所感知的部分,实际就是一组方法(虚函数). IUnknown是所有接口的基础,他负责两项工作:
阅读全文
posted @
2021-08-16 13:52
一杯清酒邀明月
阅读(1058)
推荐(0)
C++ COM三大接口:IUnknown、IClassFactory、IDispatch。
摘要:COM组件有三个最基本的接口类,分别是IUnknown、IClassFactory、IDispatch。 COM规范规定任何组件、任何接口都必须从IUnknown继承,IUnknown包含三个函数,分别是 QueryInterface、AddRef、Release。这三个函数是无比重要的,而且它们的
阅读全文
posted @
2021-08-16 13:48
一杯清酒邀明月
阅读(907)
推荐(0)
C++ COM组件QueryInterface函数
摘要:前言 组件对外公布的是接口;一个组件可以实现多个接口,也就是说可以对外公布多个接口,之前也总结过了,你很少会100%的去完全了解一个组件的所有接口,就像你去学习编程一样,你几乎不可能去成为编程中的全才。那么,既然我们不能去完全的了解一个组件提供的所有接口,那么我们在实际开发中,如何去判断一个组件是否
阅读全文
posted @
2021-08-16 13:26
一杯清酒邀明月
阅读(551)
推荐(0)
C++ COM组件的AddRef和Release()方法使用
摘要:AddRef和Release实现的是一种名为引用计数的内存管理技术,这种技术是使组件能够自己将自己删除的最简单同时也是效率最高的方法。COM组件将维护一个称作是引用计数的数值。当客户虫组件取得一个接口时,此数值增1,当客户使用完某个接口后,此数值将减1。当此数值为0时,组件即可将自己从内存中删除。
阅读全文
posted @
2021-08-16 13:24
一杯清酒邀明月
阅读(735)
推荐(0)
C++ COM编程-IConnectionPoint和IConnectionPointContainer接口介绍
摘要:0. 基本介绍头文件:ocidl.hIConnectionPointContainer和IConnectionPoint接口都继承自IUnknown接口。 可连接对象支持以下功能: 传出接口,如事件集枚举传出接口的IID的能力连接和断开接收器与这些传出IID的对象的连接的能力枚举存在于特定传出接口的
阅读全文
posted @
2021-08-16 10:04
一杯清酒邀明月
阅读(583)
推荐(0)
C++ COM编程-IDispatch介绍
摘要:1. 基本详情IDispatch是由OLE自动化协议暴露出来的接口。IDispatch可以由IUnknown得到,并且在IUnknown本身所含有三个方法(AddRef,Release和QueryInterface)上增加另外四个方法(GetTypeInfoCount,GetTypeInfo,Get
阅读全文
posted @
2021-08-16 10:01
一杯清酒邀明月
阅读(3217)
推荐(0)
C++ COM编程-COM编程入门实践
摘要:1. COM编程基础COM是一种规范,而不是实现。 当使用C++来实现时,COM组件就是一个C++类,而COM接口就是继承至IUnknown的纯虚类,COM组件就是实现相应COM接口的C++类。 COM规范规定,任何组件或接口都必须从IUnknown接口中继承而来。IUnknown定义了3个重要函数
阅读全文
posted @
2021-08-16 09:59
一杯清酒邀明月
阅读(4646)
推荐(1)
C++ COM编程-什么是接口
摘要:1. 什么是接口说到COM,就不得不说接口了;在进行COM开发的过程中,可以说,一直都在和各种各样的接口打交道。那接口是什么?对于COM来说,接口是一个包含一个函数指针数组的内存结构,每一个数组元素包含的是一个由组件所实现的函数的地址;所以,对于COM,接口就是这样的一个内存结构,其它东西都是一些C
阅读全文
posted @
2021-08-16 09:50
一杯清酒邀明月
阅读(1182)
推荐(0)
C++ COM编程-什么是组件
摘要:1. 什么是组件一个组件同一个微型应用程序类似,即都是已经编译、链接好并可以使用的了,应用程序就是由多个这样的组件打包而得到的。各定制的组件可以在运行时同其他组件连接起来以构成某个应用程序。在需要对应用程序进行修改或改进时,只需要将构成此应用程序的组件中的某个用新的版本替换掉即可。 2. COM组件
阅读全文
posted @
2021-08-16 09:44
一杯清酒邀明月
阅读(662)
推荐(0)
C++ STDMETHOD介绍
摘要:STDMETHOD_是一个宏,用于定义指定返回类型的接口方法,包含virtual关键字。可用于定义方法声明。 #define STDMETHOD_(type,menthod) virtual type STDMETHODCALLTYPE menthod 例如: STDMETHOD_ (ULONG,
阅读全文
posted @
2021-08-16 09:40
一杯清酒邀明月
阅读(648)
推荐(0)
C++如何响应COM事件处理
摘要:要在C++中处理COM的事件,首先查询IConnectionPointContainer接口。然后调用接口上的FindConnectionPoint查找你需要的事件接口。然后使用IConnectionPoint::Advise将事件函数绑定到你自己的事件接口上去。如果不在使用。通过调用UnAdvic
阅读全文
posted @
2021-08-16 09:39
一杯清酒邀明月
阅读(263)
推荐(0)
C++ COM连接点事件event
摘要:COM 中的典型方案是让客户端对象实例化服务器对象,然后调用这些对象。然而,没有一种特殊机制的话,这些服务器对象将很难转向并回调到客户端对象。COM 连接点便提供了这种特殊机制,实现了服务器和客户端之间的双向通信。使用连接点,服务器能够在服务器上发生某些事件时调用客户端。 有了连接点,服务器可通过定
阅读全文
posted @
2021-08-13 15:59
一杯清酒邀明月
阅读(1396)
推荐(0)