摘要:本文實例講述了C++取得本機IP的方法,分享給大家供大家參考。具體方法如下:核心代碼如下:復制代碼代碼如下://取得本機IPc語言獲取本機ip,在狀態欄中顯示...
本文實例講述了C++取得本機IP的方法,分享給大家供大家參考。具體方法如下:
核心代碼如下:
復制代碼 代碼如下://取得本機IP,在狀態欄中顯示
char [] = {0};
::(, );
*pHost = ();
if (pHost != NULL)
{
strIP;
* addr = (*)*pHost->;
strIP.("本機IP:%s",(addr[0]));
m_bar.(strIP, 0, 0);
}
但是 在核心代碼之前要有:
復制代碼 代碼如下://初始化套接字
;
WORD = (2,0);
::(, &);
在核心代碼之后要有:
復制代碼 代碼如下://釋放套接字
::();
希望本文所述對大家的C++程序設計有所幫助。
本文實例講述了C++實現修改函數代碼HOOK的封裝方法,分享給大家供大家參考。具體實現方法如下:
一、對外的接口如下:
1. 類初始化時對函數HOOK
2. 取消掛鉤:
void ();
3. 重新掛鉤:
void ();
在初始化時HOOK的代碼:
復制代碼 代碼如下:*(DWORD*)(+1) = (DWORD);
8個字節的代碼地址 0xB8, 0x00, 0x00,0x40,0x00,0xFF,0xE0,0x00 只要把第二位和第三位的數據改成函數的地址,調用原先的函數時就會調到自定義的函數執行.
二、實現方法:
.h頭文件如下:
復制代碼 代碼如下:#
#
#
# once
class
{
:
(LPSTR , LPSTR , PROC );
~(void);
//取消掛鉤
void ();
//重新掛鉤
void ();
:
PROC ;
BYTE [8];
BYTE [8];
;
};
#endif
.cpp源文件如下:
復制代碼 代碼如下:# ".h"
::(LPSTR , LPSTR , PROC )
{
BYTE [] = {0xB8, 0x00, 0x00,0x40,0x00,0xFF,0xE0,0x00};
(, , 8);
*(DWORD*)(+1) = (DWORD);
= ::();
if (NULL == )
{
= NULL;
;
}
= (PROC)::(, );
if (NULL != )
{
TION mbi = {0};
DWORD ;
::(, &mbi, (mbi));
::(, 8, , &);
(, , 8);
::((), (VOID*), , 8, NULL);
::(, 8, , NULL);
}
}
::~(void)
{
();
if (!=NULL)
{
::();
}
}
void ::()
{
if ( != NULL)
{
TION mbi = {0};
DWORD ;
::(, &mbi, (mbi));
::(, 8, , &);
::((), (VOID*), , 8, NULL);
::(, 8, , NULL);
}
}
void ::()
{
if ( != NULL)
{
TION mbi = {0};
DWORD ;
::(, &mbi, (mbi));
::(, 8, , &);
::((), (VOID*), , 8, NULL);
::(, 8, , NULL);
}
}
希望本文所述對大家的C++程序設計有所幫助。
本文實例講述了C++獲取本機MACc語言獲取本機ip,IP,MASK地址的方法,分享給大家供大家參考。具體方法如下:
復制代碼 代碼如下:# ".h"
#
#
# (lib, ".lib")
[6];
DWORD ;
DWORD ;
DWORD ;
BOOL ()
{
= NULL;
ULONG = 0;
//為結構申請內存
::(, &);
= ()::(GPTR, );
if ( == ::(, &))
{
if ( != NULL)
{
(, ->, 6);
= ::(->..);
= ::(->..);
= ::(->..);
}
}
//表示IP的結構
in;
in.S_un. = ;
(" IP :%-30sn", ::(in));
in.S_un. = ;
(" :%-30sn", ::(in));
in.S_un. = ;
(" MASK :%-30sn", ::(in));
* p = ;
(" MAC:X-X-X-X-X-Xn", p[0], p[1], p[2], p[3], p[4], p[5]);
::();
= NULL;
TRUE;
}
void main()
{
;
();
("*******************************");
();
}
希望本文所述對大家的C++程序設計有所幫助。