
C++
文章平均质量分 81
-yChen
熟悉windows c c++开发;
python开发;
展开
-
TCHAR,WCHAR,LPSTR,LPWSTR和LPCTSTR
在操作系统里面一般使用两种编码:ansi和unicode。我们在用记事本另存为一个文件的时候可以看到这两种编码,还有其他的比如UTF-8、UTF-16和GB2312都是他们的扩展。c/c++当然也支持这两种字符编码,ansi字符用char(1字节)表示,unicode用wchart_t(2字节)表示。用""包围的是ansi字符串,前面加个L,也就是用L""包围的就是unicode字符串。比如:原创 2015-01-13 15:55:08 · 665 阅读 · 0 评论 -
【整理】Windows 定时器 与自定消息
记录昨天写代码,没怎么注意。把自己绕了很久。写windows的 还是要多深入了解windows系统底层。很简单,其实就是定时器清空内存,开线程。线程发消息写内存。Created with Raphaël 2.1.0定时器定时器线程线程清空 开启线程写入内存完毕开启(第一次用这个画图,觉得不错) 就想用什么办法去达到互斥,CS EVENT都试过了。 搜索到一个以前的帖子,觉得应该是消息方面的问题。原创 2017-01-07 11:49:34 · 1289 阅读 · 0 评论 -
[32/64]关于DLL注入与Hook(minihook)的简单介绍与使用
因为工作有时候用到,简单的介绍下相关的知识,都是很基础的,部分在网上收集整理。0x01关于DLL注入 DLL注入技术的用途是很广泛的,这主要体现在: - 假如你要操纵的对象涉及的数据不在进程内;- 你想对目标进程中的函数进行拦截或者修改(API)。- 你想编写一些函数用于增强或增加目标进程功能,比如可以给目标进程的某个窗口插入个消息循环增加其响应能力。(Mfc Windows程原创 2016-07-17 12:56:46 · 12747 阅读 · 0 评论 -
【整理】ANSI和UNICODE字符串处理函数
字符串处理函数常用函数对照ANSIUNICODE通用说明数据类型(char.h)(wchar.h)(tchar.h) charwchar_tTCHAR char *wchar_t *TCHAR* LPSTRLPWSTRLPTSTR LPCSTRLP原创 2016-07-17 10:41:20 · 5922 阅读 · 1 评论 -
关于获取系统信息,CPUID,硬盘ID,网卡MAC地址的VS2008实现
前段时间,总是要获取一些系统的相关信息。在MSDN和各种论坛找了好久,暂时用如下办法解决了。(有网上相关的代码)参考过使用WMI,速度不敢恭维。就使用了别的方法。获取的包括: 操作系统信息:基本支持2000-win8.1 (xp win7 64 测试过); CPUID:网上的汇编老办法了,也不知道原创 2015-02-03 10:36:03 · 6401 阅读 · 1 评论 -
C++ FTP相关,简单实现
ps:做个简单的上传FTP处理要用,做个记录。FTP使用vsftpd实现。part1: 使用afxinet.h提供的来完成,这个是属于MFC的。刚好我需要完成程序还不能使用MFC头文件:当然是#include 简单使用MSDN例程,CInternetSession sess(_T("My FTP Session"));CFtpConnection* pConnect = N原创 2015-04-03 14:24:38 · 2012 阅读 · 0 评论 -
C++ ZIP压缩文件,使用zlib库和codeproject上的zip_utils
PS; zlib库比较老了,好像是Version 1.01e。基本功能也差不多。part1:使用codeproject上的完整的库,大牛弄的是真的方便简单。地址:http://www.codeproject.com/Articles/7530/Zip-Utils-clean-elegant-simple-C-Win下载下来就四个文件,zip.h zip.cpp原创 2015-04-03 14:51:20 · 11628 阅读 · 0 评论 -
关于malloc与free的一些
1.综述1,malloc与free是C++/C语言的标准库函数,new/delete是C++的运算符。它们都可用于申请动态内存和释放内存。2,对于非内部数据类型的对象而言,光用maloc/free无法满足动态对象的要求。对象在创建的同时要自动执行构造函数,对象在消亡之前要自动执行析构函数。由于malloc/free是库函数而不是运算符,不在编译器控制权限之内,不能够把执行构造函数和析构函数原创 2015-07-11 20:27:40 · 531 阅读 · 0 评论 -
c++ struct 初始化相关的问题分析
struct在平常应用中使用的广泛。使用中还是需要几点注意的。0x01 首先,说一下结构体中指针初始化的问题。 平常的使用中,可能不怎么注意结构体的初始化问题,因为不去初始化也不见得会有什么问题。但是,但凡指针要使用它前就必须保证指针变量的值是一个有效的值;否则,它指向的内存一定是垃圾数据。也许会中后面程序中出现问题。 比如;struct T原创 2015-08-15 12:36:11 · 4906 阅读 · 0 评论 -
几个转载。VC相关
http://www.cnblogs.com/CheeseZH/archive/2012/04/28/2475637.htmlhttp://www.cnblogs.com/liping13599168/archive/2011/03/10/1979692.html1. 结构Struct和共用体Union 共用体是一种数据格式,它能够存储不同的数据类型,单只能同时存转载 2015-04-24 21:42:03 · 799 阅读 · 0 评论 -
winnet http上传实现
//一个HTTP上传 wininet实现//很是奇怪为何直接HttpSendRequest方式会不成功,而用这种InternetWriteFile 可以完成int UploadFile(char* szPath){ HINTERNET hSession=0,hConnect=0,hRequest=0; DWORD dwNumberOfBytesWritten=0;原创 2015-04-22 16:37:47 · 744 阅读 · 0 评论 -
关于Windows 开发遇到的字符转换问题
Windows程序开发过程中,有时候会遇到一些字符转换的问题。这边在网上收集了些,自己整理做了个汇总。其实无外乎两个windows api MultiByteToWideChar和WideCharToMultiByte 还有函数wcstombs与mbstowcs。具体代码如下实现:#include #include #include #define BUFF_SIZE 1024原创 2016-03-22 16:36:31 · 577 阅读 · 0 评论 -
使用C++的map容器遇到的bug(map/set iterator not dereferencable)
FROM:http://blog.youkuaiyun.com/mrknight/article/details/9418469刚好自己也遇到了。这个错误。其实很低级啦、最近使用C++,程序中使用了map容器,提示错误map/set iterator not dereferencable。刚开始很是疑惑,迭代器未解除引用。。。最后发现是迭代器指示的元素为空(即end),但程序在使用迭代器的原创 2014-03-07 11:04:21 · 8705 阅读 · 1 评论 -
C++中关于&的一些。int i 与 int &i 注意事项
1.int i 传值,int & i 传引用int i不会回带参数,而int &i可以回带参数,如[cpp] view plaincopy#include void test1(int i) { i = 7; } void test2(int &i) //要限制参数改动,可以加const限制 { i = 7; } in原创 2015-01-29 14:26:51 · 1262 阅读 · 0 评论 -
什么是ANSI,什么又是UNICODE呢?
转载:http://www.cppblog.com/lapcca/archive/2010/05/06/114649.html什么是ANSI,什么又是UNICODE呢?其实这是两种不同的编码方式标准,ANSI中的字符采用8bit,而UNICODE中的字符采用16bit。(对于字符来说ANSI以单字节存放英文字符,以双字节存放中文等字符,而Unicode下,英文和中文的字符都以双字节存放转载 2015-01-13 15:31:34 · 2615 阅读 · 0 评论 -
关于 wchar_t*和char*的互转。
最近在看一写PE文件格式的东西,想做一个读取PE文件信息的小工具,中间遇到将LPVOID格式无法转换到LPTSTR格式,强制转换屡试屡败,多显示乱码。我们知道LPVOID格式可以直接转换到char *,最后发现一篇写char*与wchar_t*格式互相转换的文章,引用文中代码转换成功。原帖地址http://www.cnblogs.com/yyxr/archive/2009/10/06/15784转载 2015-01-13 11:05:55 · 697 阅读 · 0 评论 -
关于代理
关于代理@ 需求这部分知识,收集整理于网上先说VPNVPN(Virtual Private Network),即虚拟专用网或虚拟私用网,是指利用开放的公共网络资源建立私有专用传输通道。而我们提供的VPN就是使客户利用internet互联网这个公共网络建立建立客户的个人电脑-VPN服务器之见的私有专用传输通道。连接VPN后客户的所有网络数据都将通过这个通道进行传输。严格来说VPN并不是代理,但大家都原创 2017-12-16 09:44:51 · 754 阅读 · 0 评论