系统
taianmonkey
这个作者很懒,什么都没留下…
展开
-
获取进程模块的信息
一、实现原理: 首先通过CreateToolhelp32Snapshot函数创建一个进程的快照,然后通过调用Process32First使用快照返回的句柄对进程进行遍历,相关的信息存放在PROCESSENTRY32结构类型的实例中,通过调用内部的一个函数GetProcessModule,获取对应的进程的模块名称,然后通过对进程地址空间信息的读取,从而获取相应的线程的ID等的信息。二、主要原创 2004-03-23 09:48:00 · 2489 阅读 · 0 评论 -
枚举当前系统中的所有用户的名称
First, you should let the application support the UNICODE 。 Next , I will tell you what to do in your application: Create a project named EmuteUser of the MFC AppWizard(exe) based dialog. Next, you原创 2004-06-24 22:35:00 · 1438 阅读 · 0 评论 -
枚举当前打开的所有窗口
一、原理 其原理是利用GetWindowLong(hWnd,GWL_STYLE)& WS_VISIBLE对打开的窗口进行查找,并将窗口的句柄存放在一个HWND的数组中,结合EnumWindows进行窗口的枚举,从而得到响应的窗口名称;二、主要函数介绍: BOOL EnumWindows( WNDENUMPROC lpEnumFunc, // callback function L原创 2004-06-02 09:59:00 · 1979 阅读 · 0 评论 -
获得当前进程所有者的信息
主要设计代码如下:#include ....... CListCtrl m_strList; CString m_strValue;.......//获取当前进程的所有者的信息void OnGetUser() { // TODO: Add your control notification handler code here UpdateData(); if(m_st原创 2004-05-27 18:06:00 · 1577 阅读 · 0 评论 -
枚举系统中已经安装的所有硬件设备
实现的主要部分代码:#include #include #include #pragma comment(lib,"Setupapi.lib") CListBox m_strList;........枚举所有硬件设备的主要实现代码: m_strList.ResetContent(); HDEVINFO hDevInfo; SP_DEVINFO_DATA De原创 2004-05-29 16:01:00 · 1591 阅读 · 0 评论 -
获取程序本身的版本号
Hello,guys! During your programing , you could meet how to get your applications version sometimes,now I will tell you how to get the applications version from the VS_VERSION_INFO resource. First ,y原创 2004-06-29 17:08:00 · 3937 阅读 · 2 评论 -
通过对系统分派表的直接还原,防御内核本地API钩子(翻译)
通过对系统分派表的直接还原,防御内核本地API钩子介绍win32内核rootkit通过挂钩本地内核的API去修改系统的行为。这项技术通常是通过修改内核中的系统服务分派表(System Service Dispatch Table)来实现的。这样的修改确保了通过rootkit安装的一个钩子函数先于本地原始的API被调用。钩子函数通常调用本地原始的API并在返回给用户空间程序之前修改其输出。这原创 2008-04-18 21:29:00 · 2428 阅读 · 0 评论