win32 编程
sukhoi27smk
学习是为了探索这个世界的本质
展开
-
TLS回调函数的两种写法
【代码】TLS回调函数的两种写法。原创 2023-06-28 19:11:07 · 345 阅读 · 0 评论 -
获取进程名称与ID
HANDLE hProceessnap = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0); if (hProceessnap == INVALID_HANDLE_VALUE) { printf_s("创建进行快照失败\n"); return -1; } else { PROCESSENTRY32 pe32; pe32.dwSize = sizeof(pe32); BOOL hProcess = Process32Fir...原创 2021-08-10 08:55:52 · 319 阅读 · 0 评论 -
FindWindowEx 遍历所有窗口
FindWindowEx 唯一麻烦是第2个参数的指定 .Explore 下窗口是Z序的 , 实际上就是根据 第一个参数 和 第2个参数 来找 第2个参数后的一个窗口:HWND child = 0;child = FindWindowEx ( NULL , child ,NULL,NULL);这样 , child 就是一个Explore ,然后 , 通过循环能够找到child 的下一个窗口//遍历所有子窗口的子窗口 , Z序遍历void print_window2(HWND ...转载 2021-03-29 23:14:39 · 2257 阅读 · 0 评论 -
RegOpenKeyEx 返回值 2
RegOpenKeyEx 返回值 2 x64 系统:32bit 应用程序调用RegOpenKeyEx (HKEY_LOCAL_MACHINE, "SOFTWARE\\Microsoft", 0, KEY_WOW64_64KEY | KEY_READ, &hKey );注意 KEY_WOW64_64KEY 权限值必须使用否则将查找不到指定的路径。转载 2017-03-10 10:58:08 · 2017 阅读 · 0 评论 -
DllMain详解
1 DLL的进入/退出函数 1.1 DllMain简介 跟exe有个main或者WinMain入口函数一样,DLL也有一个入口函数,就是DllMain。以“DllMain”为关键字,来看看MSDN帮助文档怎么介绍这个函数的。 The DllMain function is an optional method of entry into a dynamic-link library转载 2013-11-25 06:51:25 · 915 阅读 · 0 评论 -
获取磁盘类型
1. GetLogicalDriveStrings获取所以的分区字符串2. GetDriveType("C:\\"); 对每个分区字符串分别调用GetDriveType获得分区所在磁盘的磁盘类型。0 DRIVE_UNKNOWN未知的磁盘类型 1 DRIVE_NO_ROOT_DIR说明lpRootPathName是无效的 2 DRIVE_原创 2013-11-15 10:12:41 · 803 阅读 · 0 评论 -
操作系统真实的虚拟内存是什么样的
1. 内存及虚存基本布局提起虚存,大都能说出几条来。对于32位系统,大多数操作系统都会将4GB的内存空间的一部分挪给内核使用,应用程序无法直接访问这一段内存,这部分内存空间称为内核空间。Windows默认情况下会将高地址的2GB分配给内核(也可配置为1GB),而Linux默认情况下将高地址的1GB空间分配给内核。参考阅读:《程序员的自我修养—链接、装载与库》第10章--转载 2012-12-13 15:20:35 · 569 阅读 · 0 评论 -
突破select的FD_SETSIZE限制
前言: 在很多比较各种网络模型的文章中,但凡提到select模型时,都会说select受限于轮询的套接字数量,这个数量也就是系统头文件中定义的FD_SETSIZE值(例如64)。但事实上这个算不上真的限制。 C语言的偏方: 在C语言的世界里存在一个关于结构体的偏门技巧,例如: typedefstruct _str_type{ int _len;转载 2013-09-17 17:13:22 · 2868 阅读 · 0 评论 -
Select模型的 单服务器多客户端示范代码
#include #include #include using namespace std;int main(){ WORD version = MAKEWORD(2,2); WSADATA wsaData; SOCKET listenSocket; SOCKET acceptSocket; SOCKET clientSocket转载 2013-09-17 10:01:41 · 945 阅读 · 0 评论 -
m_pMainWnd = &dlg错误解决方法
这两天在写MFC程序的时候经常碰到这种情况,开始真的很让我速手无策呀。在网上的我看到有两种可以解决这种问题的方法:一是,直接把这句话注释掉,然后你再运行也就可以通过了。还有一种就是,你重新‘全部重建‘(REBUILD ALL)’,重建之后也同样可以了。我个人还是赞同大家用第二种会比较好点转载 2013-09-29 23:25:54 · 2257 阅读 · 0 评论 -
[vc]如何对radio按钮分组
如何使用多组?多组和一组是一样的使用,只要搞清楚哪个是哪一组的就行了。再为对话框添加Radio3和Radio4。很简单,先为这些RadioButton排个顺序,就是排列他们的TABORDER。在对话框资源面板上Ctrl+D,然后按你自己的理想顺序用鼠标逐个点击就可以了。不妨假设Radio1、Radio2、Radio3、Radio4分别是1、2、3、4。Radio1和Radi转载 2013-09-30 00:36:05 · 6932 阅读 · 0 评论 -
深入浅出VC++串口编程之基于Win32 API
1、API描述 在WIN32 API中,串口使用文件方式进行访问,其操作的API基本上与文件操作的API一致。 打开串口 Win32 中用于打开串口的API 函数为CreateFile,其原型为:HANDLE CreateFile ( LPCTSTR lpFileName, //将要打开的串口逻辑名,如COM1 或COM2 DWORD dw转载 2013-07-18 06:22:47 · 798 阅读 · 0 评论 -
WSAGetLastError
WSAGetLastError (Wsapiref_2tiq.asp) 函数返回了可能的错误代码。 错误错误宏按字母顺序列出。 不从任何函数返回在 Winsock2.h 中定义一些错误代码。 本文中不包括这些错误代码。更多信息WSAEINTR (10004) 翻译: 中断函数调用。 说明: A 阻塞操作已被 WSACancelBlockingCall (Wsapiref_704y.a.转载 2013-03-15 15:43:30 · 886 阅读 · 0 评论 -
Windows Sockets 错误码及出错原因
Windows Sockets在头文件winsock.h中定义了所有的错误码,它们包括以“WSA”打头的Windows Sockets实现返回的错误码和Berkeley Sockets定义的错误码全集。定义Berkeley Sockets错误码是为了确保原有软件的可移植性。A.1 Windows Sockets错误码列表 表A.1列出了WSAGetLastError()函数返转载 2013-03-15 14:28:12 · 2228 阅读 · 0 评论 -
win32 API函数大全
1. API之网络函数 WNetAddConnection 创建同一个网络资源的永久性连接 WNetAddConnection2 创建同一个网络资源的连接 WNetAddConnection3 创建同一个网络资源的连接 WNetCancelConnection 结束一个网络连接 WNetCancelConnection2 结束一个网络连接 WNetCloseEnum 结转载 2013-02-25 17:54:06 · 823 阅读 · 0 评论 -
win32 api 文件操作!
CreateFile打开文件要对文件进行读写等操作,首先必须获得文件句柄,通过该函数可以获得文件句柄,该函数是通向文件世界的大门。ReadFile从文件中读取字节信息。在打开文件获得了文件句柄之后,则可以通过该函数读取数据。WriteFile向文件写入字节信息。同样可以将文件句柄传给该函数,从而实现对文件数据的写入。CloseHandle关闭文件转载 2013-02-22 14:50:01 · 667 阅读 · 0 评论