资源简介

老外写的sockethook代码 实现socket钩子,提供hook代码和测试例程序-Written by foreigners sockethook hook socket code to provide hook procedure code and test cases

资源截图

代码片段和文件信息

// socket_hook.cpp : Defines the entry point for the console application.
//

//#include “stdafx.h“

//int main(int argc char* argv[])
//{
// printf(“Hello World!\n“);
// return 0;
//}

// Test.cpp : Defines the entry point for the console application.   
//  
#include “windows.h“
#include 
#include 
using namespace std;
typedef BOOL (FAR PASCAL DLLHOOKINIT)(HINSTANCE hInstance);   
typedef BOOL (FAR PASCAL DLLHOOKDONE)();   
   
typedef DLLHOOKINIT *LPDLLHOOKINIT;   
typedef DLLHOOKDONE *LPDLLHOOKDONE;   
   
int main(int argc char* argv[])   
{   
   
   cout << “WepMetering sample by Bjarke Viksoe.“ << endl;   
   cout << “http://www.viksoe.dk/code“ << endl;   
   cout << endl;   
   
   HINSTANCE hHookDll;         
   // add system-wide hook   
   hHookDll = ::LoadLibrary(“Hook1.Dll“);
   if( hHookDll==NULL ) 
   {
   cout<<1<    return 1;   
   }
   LPDLLHOOKINIT lpHookInit;   
   LPDLLHOOKDONE lpHookDone;   
   lpHookInit = (LPDLLHOOKINIT) ::GetProcAddress(hHookDll “HookInit“);   
   if( lpHookInit==NULL ) 
   {
   cout<<“2.1“<    return 2;
   }
   lpHookDone = (LPDLLHOOKDONE) ::GetProcAddress(hHookDll “HookDone“);   
   if( lpHookDone==NULL ) 
   {
   cout<<“2.2“<    return 2;   
   }
   // Initialize   
   BOOL res;   
   res = (*lpHookInit)(hHookDll);   
   if( !res )
   {
   cout<<“3.1“<    return 3;   
   }
   cout << “Open IE or Netscape and enter an URL which contains the string ‘baidu‘.“ << endl;   
   cout << “Press ‘x‘ to quit.“ << endl;   
   
   while( TRUE ) {   
      if( _kbhit() ) {   
         char c = _getch();   
         if( c==‘x‘ ) break;   
      };   
      ::Sleep(1000L);   
   };   
   
   // Done   
   res = (*lpHookDone)();   
   ::FreeLibrary(hHookDll);   
   cout << “Done.“ << endl;   
   getchar();
   return 0;   
}   


 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件     214118  2014-03-27 23:30  socket_hook\Debug\Hook1.dll

     文件     215142  2014-03-27 23:30  socket_hook\Debug\Hook2.dll

     文件     536678  2014-03-27 23:34  socket_hook\Debug\socket_hook.exe

     文件     214118  2014-03-27 23:30  socket_hook\Hook1\Debug\Hook1.dll

     文件       2274  2014-03-27 23:30  socket_hook\Hook1\Debug\Hook1.lib

     文件       5795  2014-03-27 22:20  socket_hook\Hook1\Hook1.cpp

     文件        204  2014-03-27 22:54  socket_hook\Hook1\Hook1.def

     文件        202  2014-03-27 22:54  socket_hook\Hook1\Hook1.def.bak

     文件       4175  2014-03-27 23:38  socket_hook\Hook1\Hook1.dsp

     文件        276  2014-03-27 23:27  socket_hook\Hook1\Hook1.h

     文件        838  2014-03-27 23:30  socket_hook\Hook1\Hook1.plg

     文件     215142  2014-03-27 23:30  socket_hook\Hook2\Debug\Hook2.dll

     文件       2266  2014-03-27 23:30  socket_hook\Hook2\Debug\Hook2.lib

     文件      14465  2014-03-27 23:31  socket_hook\Hook2\Hook2.cpp

     文件        198  2014-03-27 22:57  socket_hook\Hook2\Hook2.def

     文件        204  2014-03-27 22:57  socket_hook\Hook2\Hook2.def.bak

     文件       4115  2014-03-27 23:38  socket_hook\Hook2\Hook2.dsp

     文件       1422  2014-03-27 23:30  socket_hook\Hook2\Hook2.plg

     文件       1238  2014-03-27 22:18  socket_hook\ReadMe.txt

     文件       1921  2014-03-27 23:36  socket_hook\socket_hook.cpp

     文件       4465  2014-03-27 23:38  socket_hook\socket_hook.dsp

     文件        933  2014-03-27 22:55  socket_hook\socket_hook.dsw

     文件       1485  2014-03-27 23:34  socket_hook\socket_hook.plg

     文件        298  2014-03-27 22:18  socket_hook\StdAfx.cpp

     文件        769  2014-03-27 22:18  socket_hook\StdAfx.h

     目录          0  2014-03-27 23:37  socket_hook\Hook1\Debug

     目录          0  2014-03-27 23:37  socket_hook\Hook2\Debug

     目录          0  2014-03-27 23:37  socket_hook\Debug

     目录          0  2014-03-27 23:38  socket_hook\Hook1

     目录          0  2014-03-27 23:38  socket_hook\Hook2

............此处省略6个文件信息

评论

共有 条评论

相关资源