ATL
文章平均质量分 72
宇龍_
有些白嫖党连个赞都不点甚至直接抄走了说原创,新发布的都写到专栏里吧,哎。
私聊给群号,可进Q群咨询问题。
展开
-
通过ATL库CRegKey读、写、遍历注册表(简单方便)
CRegKey读、写、遍历注册表原创 2022-07-18 22:16:03 · 531 阅读 · 0 评论 -
CString在多线程中的问题
闲来没事,聊聊CString在多线程中很容易踩的坑,这个坑很可能存在于你现在的项目中。举例:int main(){ CString str = L"test"; CString strThread1 = str; CString strThread2 = str; //将两个参数传递到各自的线程中,以下使用伪代码 CThread thread1(strThread1); CThread thread2(strThread2); thread1.wait();原创 2022-05-17 22:28:46 · 505 阅读 · 11 评论 -
VC下Unicode和ANSI互转,CStringW和std::string互转
前言众所周知,CString有两种,分别是使用ANSI编码的CStringA和使用Unicode编码的CStringW,其中CStringA和std::string的转化非常简单,毕竟都是使用的ANSI编码,这里就不谈了,只谈CStringW和std::string的转化。正文微软有提供宽窄字节转换的API函数,但稍显麻烦了一些,这里使用的是微软在ATL中提供的几个宏,使用非常的简单。常用的有如下转换宏:1、W2A和A2W2、CW2A和CA2W一、W2A和A2W的使用方法原创 2022-05-07 22:53:29 · 1049 阅读 · 0 评论 -
CString的GetBuffer和ReleaseBuffer使用说明
先看一段代码:#include <atlstr.h>//测试CStringint main(int argc, _TCHAR* argv[]){ CStringA strTemp = "555"; //这里输出为3,不包含结束符 printf("str=%s,len=%d\n",strTemp.GetBuffer(),strTemp.GetLength()); LPSTR lpStr = strTemp.GetBuffer(10); //这里输出为3,因为对GetBu原创 2022-05-06 22:34:32 · 681 阅读 · 0 评论 -
编写Windows系统服务(通过ATL实现)支持xp系统
前言C++通过ATL可以很容易的实现Windows系统服务,这里以VS2017为例,其他版本的VS基本上都一样操作。编写TestService1、新建项目新建项目——ATL项目——命名为TestService2、选择应用程序类型为服务.exe3、生成源代码4、修改服务的名称在资源视图下可以修改服务的名称5、实现接口: 实现以下几个接口,以隐藏父类的同名函数(注意这里不是重写...原创 2022-04-14 21:52:48 · 1252 阅读 · 1 评论 -
ATL容器——CAtlArray,CAtlList,AtlMap,CRBMap,CRBMultiMap
ATL容器——CAtlArray,CAtlList,AtlMap,CRBMap,CRBMultiMap原创 2022-03-29 21:41:38 · 1012 阅读 · 0 评论