windows API
文章平均质量分 74
边缘计算机
这个作者很懒,什么都没留下…
展开
-
Windows进程间同步方法使用Event
Event是windows操作系统的一种内核对象,它不但可以用于进程间同步,还可以用于线程间同步。这里介绍的是进程间同步的使用。在windows所提供的内核对象中,Event内核对象比其他(信号量,互斥量)简单的多,只有是否触发的属性下面是使用事件内核对象的所要使用的函数接口:(1)CreateEvent()HANDLE WINAPI CreateEvent( _In_opt_ LPSECURITY_ATTRIBUTES lpEventAttributes, _In_ ...原创 2021-09-22 14:44:55 · 3565 阅读 · 0 评论 -
CreateMutex用法
CreateMutexCreateMutex()函数用来创建一个有名或无名的互斥量对象,其函数原型为: HANDLE CreateMutex( LPSECURITY_ATTRIBUTES lpMutexAttributes, BOOL bInitialOwner, LPCTSTR lpName ); 参数lpMutexAttri...原创 2021-09-17 10:18:27 · 10894 阅读 · 0 评论 -
获取进程的信息
使用 NtQueryInformationProcess 函数Retrieves information about the specified process.Windows NT/2000系统的NTDLL.DLL包含了许多未公开的API函数。NtQueryInformationProcess就是微软 NTDLL.DLL包含的未公开 的一个 API。NTDLL.DLL中有一个函数叫NtQueryInformationProcess,用它可以指定参数,获得指定结构体类型的进程信息,拷贝到...原创 2021-08-08 19:28:19 · 2774 阅读 · 0 评论 -
windows操作系统的Event
创建事件:函数原型:HANDLECreateEvent(LPSECURITY_ATTRIBUTESlpEventAttributes, //SDBOOLbManualReset,//resettypeBOOLbInitialState,...原创 2021-06-21 20:54:04 · 1828 阅读 · 0 评论 -
线程不结束进程不退出
发现程序在退出后而聊天进程没有退出,等待了很长时间也没有退出。开发人员在调试的时候,已经在debug版本下重现了这个bug,跟踪代码出错部分的流程如下:发送WM_QUIT消息给一个工作线程让其退出;用WaitForSingleObject等待那个线程的句柄有信号;如果有信号,就直接CloseHandle掉这个线程句柄;如果超时没有信号,就直接用_endthreadex()杀死线程。开发人员跟踪了好多次发现消息发送过去后线程并没有退出,每次都要超时进入强杀流程,但强杀调用确没有杀死线程,从th原创 2021-06-18 23:14:21 · 930 阅读 · 0 评论 -
Com组件
COM组件,就是模块化对象的思想,只在windows上用。首先它它是一个 二进制对象,可以是进程内的DLL,也可以是exe,COM编程需要满足这套规范,COM要有一个 GUID标识;为了说明我是放在系统的什么位置,别人用我的时候,要初始化一下,然后在注册表里填写好我自己这个COM的所在的路径,Linux/MacOS上是没有注册表的,所以COM就只在windows上存在了,但是对象实例模块化的思想,其它的平台都是可以借鉴的。Windows一直遵循开发工程师只要拿着微软提供的API手册或者文档,让用户主原创 2021-03-15 02:14:50 · 273 阅读 · 0 评论 -
VC 的API简单的下载函数URLDownloadToFile
//使用API函数PathFileExists()检查路径文件是否存在//请注意:为了使用API函数PathFileExists(),需要加入//#include "Shlwapi.h"//#pragma comment(lib,"shlwapi.lib")if(PathFileExists(str)){ CString strTemp; strTemp.Format("%s已存在!",str); AfxMessageBox(strTemp); return ;...原创 2020-08-20 18:38:21 · 1057 阅读 · 0 评论