<b>获得信息的有关Windows API</b>[VC/C++编程]
本文“<b>获得信息的有关Windows API</b>[VC/C++编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
1.窗口信息
MS为我们供应了翻开特定桌面和列举桌面窗口的函数.
hDesk = OpenDesktop(lpszDesktop, 0, FALSE, DESKTOP_ENUMERATE);
// 翻开我们默许的Default桌面;
EnumDesktopWindows(hDesk,(WNDENUMPROC)EnumWindowProc, 0);
// 列举翻开桌面上的全部窗口,由回调函数实现.
BOOL __stdcall EnumWindowProc(HWND, LPARAM);
// 在回调函数中,我们可以得到窗口的标题和相关进程,线程信息;
GetWindowText(hWnd, szWindowText, dwMaxCount);
GetWindowThreadProcessId(hWnd, &dwPID);
2.设备驱动器信息(服务和设备驱动器差不多,在此不做反复)
设备驱动信息有服务掌握管理器(SCM)来管理的,我要翻开服务掌握管理器,并列举全部的设备驱动器.
OpenSCManager(NULL, NULL, SC_MANAGER_ALL_ACCESS);
// 以全部权限翻开服务掌握管理器;
EnumServicesStatus(schManager, dwDeviceType, dwDeviceState,
EnumStatus, dwBufSize, &dwBytesNeeded, &dwDevicesReturned, &dwResumeHandle))
// 列举全部设备的当前状况;
CloseServiceHandle(schManager);
// 记着,在完毕拜候后要关闭服务句柄;
OpenService(schManager, szDeviceName, SERVICE_ALL_ACCESS);
// 翻开特定的设备驱动器;
QueryServiceConfig(schDevice, lpDeviceConfig, 1024 * 8, &dwBytesNeeded);
// 查询驱动器的服务配置信息;
QueryServiceStatus(schDevice, &DeviceStatus);
// 查询设备驱动器的当前状况;
QueryServiceConfig2(schDevice, SERVICE_CONFIG_DESCRIPTION, (LPBYTE)lpDeviceDescription, 8*1024, &dwBytesNeeded)
以上是“<b>获得信息的有关Windows API</b>[VC/C++编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
本文地址: | 与您的QQ/BBS好友分享! |