自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(17)
  • 资源 (1)
  • 收藏
  • 关注

原创 通过对系统分派表的直接还原,防御内核本地API钩子(翻译)

通过对系统分派表的直接还原,防御内核本地API钩子介绍win32内核rootkit通过挂钩本地内核的API去修改系统的行为。这项技术通常是通过修改内核中的系统服务分派表(System Service Dispatch Table)来实现的。这样的修改确保了通过rootkit安装的一个钩子函数先于本地原始的API被调用。钩子函数通常调用本地原始的API并在返回给用户空间程序之前修改其输出。这

2008-04-18 21:29:00 2403

原创 获取当前登录用户的window station个数和Desktop对象的个数

原理很简单,一看便知,主要的实现代码如下:#include "stdafx.h"#include #include using namespace std;static int i = 0;BOOL CALLBACK EnumWindowsProc(  HWND hwnd,         LPARAM lParam){ if(::GetWindowLong(hwnd,GWL_ST

2007-07-04 16:25:00 2022

原创 一次亲手清除病毒的过程

今天一打开电脑,要进D盘的工程,但发现双击后,D盘没有反应?真是奇怪了!再双击一次,还是没有反应!难道鼠标有问题了?右单击试试。右单击后,在菜单中发现,默认的打开方式变成了“自动播放”!真是见鬼了!下意识的感觉,可能是中病毒了! 一般做过安装盘的人都只到,只要在盘的根目录下放置一个AUTORUN.INF的文件,就可以实现了。右单击打开D盘后,发现目录下并没有这个文件!肯定是隐藏了。于是,进

2006-09-06 11:22:00 1454 1

原创 在win32汇编中动态链接库的使用

引子: 如果你的程序足够的长,你会发现你所写的程序通常有一些通用的代码例程。在你重新写一个新程序时每次重新写这些代码时都很浪费你的时间。返回到先前的DOS,程序员将通用的例程存放到一个或多个库文件中。当他们想使用这些函数时,他们就把库文件连接到目标文件中并且链接器从链接库中导出这些

2006-08-25 11:26:00 1279

原创 How to create mdb dynamic(vc6.0+ado)?

In csdn bbs, I found there was a lot of programmer to ask how to   create mdb dynamic?Now I give my resolvent!here is the main code(vc6.0+ado): #import "c:/Program Files/Common Files/system/ad

2006-04-12 15:14:00 1512 1

原创 获取WAV文件的相关信息

主要实现代码: HMMIO m_hmmio; MMCKINFO m_MMCkInfoParent; WAVEFORMATEX m_PCMWaveFmtRecord; MMCKINFO m_MMCkInfoChild;   TCHAR bigBuff[2048] = "";  // maximum common dialog buffer size   TCHAR szFilter[] =     

2005-07-10 09:37:00 1276

原创 How to get the media length use directshow

Hello ,guys! Glad to see you again! Now, I will tell you how to get the media length by driectshow! First ,you should install DirectX SDK! When you installing the Directx SDK, we can step the next! Le

2004-07-26 17:33:00 1418

原创 获取程序本身的版本号

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 3899 2

原创 枚举当前系统中的所有用户的名称

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 1425

原创 获取ACCESS2000数据库中的所有表的名称(vc + ado)

原理就是通过枚举数据库中的表的类型,用户建立的表的类型一般是TBALE。所以通过判断当前数据库中表的类型,就可以获取表的名称了。  初始化部分在stdafx.h中添加:#include #include #include #import "c:/Program Files/Common Files/System/ADO/msado15.dll" /no_namespace

2004-06-04 14:56:00 2210 1

原创 枚举当前打开的所有窗口

一、原理     其原理是利用GetWindowLong(hWnd,GWL_STYLE)& WS_VISIBLE对打开的窗口进行查找,并将窗口的句柄存放在一个HWND的数组中,结合EnumWindows进行窗口的枚举,从而得到响应的窗口名称;二、主要函数介绍:   BOOL EnumWindows(  WNDENUMPROC lpEnumFunc,  // callback function  L

2004-06-02 09:59:00 1957

原创 枚举系统中已经安装的所有硬件设备

实现的主要部分代码:#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 1572

原创 获得当前进程所有者的信息

主要设计代码如下:#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 1562

原创 通过写入注册表添加ODBC数据源

 主要代码如下:void RegisterDBSource(CString strDSName, CString strDBPath){ HKEY hKey;    DWORD nLabel;  CString strBaseKey = _T("SOFTWARE//ODBC//ODBC.INI"); CString strMid = strBaseKey + _T("//ODBC Da

2004-05-22 12:40:00 1865

原创 获取Divx的版本号(测试中)

 HKEY hKey; TCHAR szProductVersion[128]; DWORD dwBufLen; LONG lRet; int iLen = 0;  RegOpenKeyEx( HKEY_LOCAL_MACHINE,  _T("SYSTEM//CurrentControlSet//Control//MediaResources//icm//vidc.DIVX"),  0, KEY_

2004-05-19 22:32:00 1019

原创 ado方式访问带密码数据库的方法

主要代码: CString strSql; TCHAR FileName[MAX_PATH],errMsg[MAX_PATH]; ::CoInitialize(NULL); //初始化Com IADORecordBinding   *picRs = NULL; _RecordsetPtr pRs("ADODB.Recordset"); _ConnectionPtr pConn("ADO

2004-04-26 12:39:00 1072

原创 获取进程模块的信息

一、实现原理:  首先通过CreateToolhelp32Snapshot函数创建一个进程的快照,然后通过调用Process32First使用快照返回的句柄对进程进行遍历,相关的信息存放在PROCESSENTRY32结构类型的实例中,通过调用内部的一个函数GetProcessModule,获取对应的进程的模块名称,然后通过对进程地址空间信息的读取,从而获取相应的线程的ID等的信息。二、主要

2004-03-23 09:48:00 2450

C++ Templates

精通C++模板编程的最佳选择,我在工作中遇到的问题,在本书中都有答案!

2009-06-28

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除