欢迎来到Heck's Blog,专业承接拿站、企业建站、仿站、网上商城架构、门户网站搭建、空间域名注册、软件定制等项目。关注网络安全,因为专注,所以专业,懂得放弃,才能收获。有事请发邮件至i@heckjj.com,请记住本站网址:http://www.heckjj.com,多谢。
10月27

截获系统函数

10:54编程杂谈  From: 本站原创
         系统函数重定位的例子,从<<计算机世界日报>>上Copy出来的.

    //源程序 relocate.c
    #include <WINDOWS.H>
    #include <dos.h>
    BOOL WINAPI MyExtTextOut(HDC hDC, int x, int y, UINT nIn
t1, const RECTFAR*p Rect,LPCSTR lpStr, UINT nInt2, int FAR*
lpInt);
    WORD FAR PASCAL AllocCStoDSAlias(WORD code_sel);
    typedef struct tagFUNC
    {
    FARPROC lpFarProcReplace;  //替代函数地址
    FARPROC lpFarProcWindows;  //Windows函数地址
    BYTE    bOld;        //保存原函数第一字节
    LONG    lOld;        //保存原函数接后的四字节长值
    }FUNC;
    FUNC  Func={MyExtTextOut,ExtTextOut};
    //Windows主函数
    int PASCAL WinMain(HINSTANCE hInstance,HINSTANCE hPrevIn
stance,LPSTR lpCmdi ne,int nCmdShow){
    HANDLE hMemCode;  //代码段句柄
    WORD hMemData;    //相同基址的可写数据段别名
    WORD   wOffset;   //函数偏移
分页: 1/1 第一页 1 最后页 [ 显示模式: 摘要 | 列表 ]