C++
奔流的江
这个作者很懒,什么都没留下…
展开
-
VC 获取磁盘盘符剩余空间,CJSON格式输出
void GetPlace(char *datajson){ ULARGE_INTEGER nFreeBytesAvailable; ULARGE_INTEGER nTotalNumberOfBytes; ULARGE_INTEGER nTotalNumberOfFreeBytes; DWORD msg = 1; DWORD statue = 0;...原创 2018-10-13 10:35:53 · 648 阅读 · 0 评论 -
VC 获取本地Appdata完整路径
CString GetLocalAppdataPath(){ wchar_t m_lpszDefaultDir[MAX_PATH] = {0}; wchar_t szDocument[MAX_PATH] = {0}; LPITEMIDLIST pidl = NULL; SHGetSpecialFolderLocation(NULL, CSIDL_LO...原创 2018-11-08 13:47:11 · 6781 阅读 · 0 评论 -
RegOpenKeyEx成功,RegDeleteValue总是返回2解决方案
注册表打开成功,也能回去注册表键值,当删除的时候返回2.原因是删除需要更高或者更明确的权限,所以,在用RegOpenKeyEx打开时,权限参数处加入KEY_WOW64_64KEY...原创 2018-11-20 11:33:33 · 2309 阅读 · 0 评论 -
SVN 更新失败
https://blog.csdn.net/u013441805/article/details/80519100转载 2018-12-24 18:32:20 · 257 阅读 · 1 评论 -
对同步和异步的理解
同步就是一步步的运行程序,倘若当前有操作正在处理,则卡死主线程。异步就相反了,可以存在不同的操作,不会阻塞其它操作,即是不同的路线执行程序。...原创 2018-12-29 17:02:19 · 887 阅读 · 0 评论 -
单处理器下的多线程?
今天阅读《Windows核心编程》时,产生一个疑问。编程的时候使用多线程本意是想异步执行程序,但是一个处理器每次给线程分配20ms后,则,这个线程的时间片运行结束前或者主动退出线程,就不能给其它线程继续分配了。其实,我开始这样的理解是错误的,因为,多线程的异步主要体现在,计算,IO操作,一个线程在使用CPU的时候,另一个线程就可以使用io。总结:1、单核CPU上,同一时刻只能有一条线程运行...原创 2019-01-02 10:48:40 · 1676 阅读 · 0 评论 -
swtich case标签
C++中的case标签只是行标签,而不是选项之间的界限。也是说,程序跳到switch中特定代码行后,将以此执行之后所有语句,除非有明确的其它只是。程序不会在执行到下一个case处自动停止,要让程序执行完一组特定语句后停止,就必须使用break语句。这将导致程序跳到switch后面的语句处执行。...原创 2019-01-24 14:28:23 · 222 阅读 · 0 评论 -
指针的危险
危险更容易发生在那些使用指针不仔细的人身上。及其重要的一点是:在C++中创建指针时,计算机将分配用来存储指针地址的内存,单不会分配用来存储指针所指向的数据的内存。为数据提供弓箭是一个独立的步骤,忽略这一步五一是自找麻烦,如下所示:long* fellow;*fellow = 110;fellow确实是一个指针,但是它指向哪里呢?上述代码没有将地址赋给fellow。那么110将被存放在...原创 2019-01-14 16:47:47 · 961 阅读 · 1 评论 -
数组名和指针的根本区别
指针是个变量,可以point = point +1;数组名不能这样操作。原创 2019-01-14 17:25:00 · 156 阅读 · 0 评论 -
C++文件读写详解
https://blog.csdn.net/kingstar158/article/details/6859379/转载 2019-01-23 09:14:18 · 4518 阅读 · 0 评论 -
C++ 一次性读取文件所有内容
void read_file(const string& filename, string & filedata){ ifstream infile; char *fileBuffer = NULL; infile.open(filename,ios::binary); if(infile.is_open()) { infi...原创 2019-01-23 11:01:49 · 2824 阅读 · 0 评论 -
C++高级hook
https://bbs.pediy.com/thread-228669.htm转载 2019-02-21 18:36:13 · 3053 阅读 · 0 评论 -
应用程序如何访问注册表
应用程序如何访问注册表(经常使用VS是创建的是win32应用程序)64位程序如何访问64位的注册表(HKEY_LOCAL_MACHINE/Software)Ø 64位程序访问64位的注册表,直接到 HKEY_LOCAL_MACHINE/Software。 32位程序如何访问32位的注册表(HKEY_LOCAL_MACHINE/Software/Wow6432Node...原创 2019-02-12 18:24:41 · 1307 阅读 · 0 评论 -
Windows C++ 下开发
https://blog.csdn.net/farrellcn/article/details/77258699转载 2019-03-12 15:15:40 · 715 阅读 · 0 评论 -
DLL 注入,全过程,运行后直接注入
总结:DLL注入主要有几个步骤1,提升当前进程的权限(提升权限后才能获取宿主进程的句柄)2,通过进程IP 获取宿主进程的句柄3,在宿主进程内申请足够的空间4,把DLL地址写入到宿主进程里5,在宿主进程里创建线程(创建远程线程)6,运行线程7, 注入成功//进程提权bool enableDebugPriv(){ HANDLE hToken...原创 2019-04-22 11:36:15 · 4916 阅读 · 0 评论 -
Hook 详细原理
https://bbs.pediy.com/thread-228669.htm转载 2019-04-24 14:31:11 · 454 阅读 · 0 评论 -
终端续传 C++
https://blog.csdn.net/zhang_sinner/article/details/47113979转载 2019-05-15 14:12:03 · 209 阅读 · 0 评论 -
TCP网络编程步骤图
原创 2019-05-21 11:14:20 · 576 阅读 · 0 评论 -
VC 通过进程ID获取完整路径
BOOL GetProcessPathByPId( const DWORD dwProcessId, TCHAR *cstrPath ){ HANDLE hProcess = NULL; BOOL bSuccess = FALSE; hProcess = OpenProcess( PROCESS_QUERY_INFORMATION | PROCES...原创 2018-11-07 16:15:09 · 2263 阅读 · 0 评论 -
MFC 清空文件夹
BOOL ClearDir(CString path){ if (!IsDirectory(path)) //不是目录 return FALSE; if (path.Right(1) != _T('\\')) { path += _T("\\"); } path += _T("*.*"); CFileFind f...原创 2018-11-07 16:10:56 · 1050 阅读 · 0 评论 -
vc从固定字符串任意截取 子字符串,可直接使用
//"henanshengname=yangzhenjiang&huashengdou"; "name=" "&" 返回"yangzhenjiang"string FindString(const string strContent,LPCSTR szBegin,LPCSTR szEnd){ std::string strResult = "";原创 2018-10-13 10:39:37 · 1334 阅读 · 0 评论 -
VC GTK的 计算,独立函数
void GetGTK(const string& strSkey, string& strGtk){ int hash = 5381; for (size_t i = 0; i < strSkey.length(); i++) hash += (hash << 5) + (int)(strSkey[i]); hash &...原创 2018-10-15 13:35:58 · 130 阅读 · 0 评论 -
windows VC对注册表项值的增,删,查,改,以及对注册表子项的增加和删除
#include <iostream>#include <Windows.h>#include <Shlwapi.h>using namespace std;#pragma comment(lib,"Shlwapi.lib")void regedit(LPCTSTR path);int main(){ regedit(L"Software...原创 2018-09-30 15:32:57 · 1205 阅读 · 0 评论 -
Windows 输入进程路径,打开进程
BOOL Chook_from_libDlg::open_Steam( TCHAR szExe[]){ STARTUPINFO si; PROCESS_INFORMATION pi; si.cb = sizeof(STARTUPINFO); GetStartupInfo(&si); if(!CreateProcess(szExe, NUL...原创 2018-09-30 15:38:41 · 230 阅读 · 0 评论 -
VC 代码页,字符集,字符转换
第1章代码页1 代码页代码页也叫字符集,它有两个特点:1、它是一个字符集合;2、为了便于计算机处理。这个字符集合里,每个字符都有编码。可用一个字符串表示代码页,如:GB2312、GBK、GB18030、Big5……也可以用一个整数表示代码页,如:20936表示GB2312、936表示GBK、54936表示GB18030、950表示Big5……1.1 单字节字符集代码页里...原创 2018-10-16 14:05:49 · 2366 阅读 · 1 评论 -
VC 宽字节与窄字节字符串的默认编码
VC :char* Str = “yangzhenj”;此时Str是ANSI编码。 wchar_t Lstr = L"我的小可爱";此时Lstr是UNicode编码(UTF-16);原创 2018-10-16 14:31:33 · 621 阅读 · 0 评论 -
vc 多线程处理临界数据,
#include <iostream>#include <Windows.h>using namespace std;int sum = 100;DWORD WINAPI threadfun(LPVOID lpParameter);int temp =1;HANDLE m_mutex;HANDLE handle1;HANDLE handle2;HANDLE...原创 2018-10-22 09:45:38 · 224 阅读 · 1 评论 -
VC时间戳获取
time_t timep; time(&timep); printf("time():%d\n",timep);原创 2018-10-22 11:09:45 · 3986 阅读 · 0 评论 -
VC 线程加锁,互斥信号量Mutex
https://blog.csdn.net/chexlong/article/details/7051193转载 2018-10-17 14:31:21 · 3209 阅读 · 1 评论 -
VC CreateThread(),创建线程时为什么线程函数一定需要static修饰
因为,当把线程函数封装在类中,this指针会作为默认的参数被传进函数中,从而和线程函数参数(LPVOID lpParameter)不能匹配,不能通过编译。此时,就需要把线程函数在定义的时候,最前面加上static。当线程函数不在类里面时,就不会出现此类问题。...原创 2018-10-17 17:24:13 · 1595 阅读 · 0 评论 -
字符串操作方法
https://www.cnblogs.com/zona/p/5851413.html转载 2018-10-22 15:32:19 · 148 阅读 · 0 评论 -
VC线程锁原理
https://blog.csdn.net/vking_wang/article/details/9952063转载 2018-10-17 18:58:26 · 614 阅读 · 0 评论 -
VC 各种情况下的窗口获取接口
AfxGetMainWnd AfxGetMainWnd获取自身窗口句柄HWND hWnd = AfxGetMainWnd()->m_hWnd;GetTopWindow函数功能:该函数检查与特定父窗口相联的子窗口z序(Z序:垂直屏幕的方向,即叠放次序),并返回在z序顶部的子窗口的句柄。函数原型:HWND GetTopWindow(HWND hWnd);参数: hWn...原创 2018-10-29 11:38:46 · 394 阅读 · 1 评论 -
C C++ 和 windows 实现文件的读写操作,
#include <iostream>#include <Windows.h>#include <string>#include <fstream>using namespace std;// c++ API path " read.txt", name "write.txt"void readand_write(char*...原创 2018-10-26 17:31:05 · 6418 阅读 · 1 评论 -
VC 遍历文件夹所有文件名,代码简短。下面函数是获取YY账号,(对xml的解析操作)
#include <filesystem>#include <string>#include <vector>#include "tinyxml.h"using namespace std;using namespace std::tr2::sys;string ReadData(const char* str);BOOL DirectoryL...原创 2018-10-26 17:33:25 · 289 阅读 · 0 评论 -
VC 使用tinyxml库解析xml文件,节点切换,元素取值
////////////////////////////////////////////////c.xml 如下/////////////////////////////////<?xml version="1.0" encoding="x-cp20936"?><system> <fontname>ЫЮЬх</fontname> ...原创 2018-10-24 13:14:47 · 283 阅读 · 0 评论 -
vc MD5原理
https://blog.csdn.net/cp32212116/article/details/41479805转载 2018-11-02 18:13:19 · 276 阅读 · 0 评论 -
QT 系统性学习
https://blog.csdn.net/yuandevelo/article/details/82251624原创 2019-10-08 19:28:25 · 415 阅读 · 0 评论