#include
using namespace std;
#include
#include
bool loaddll(dword dwprocessid, char* szdllpathname)
//2.計算dll路徑名字長度,並且要加上0結尾的長度
dwlength = strlen(szdllpathname) + 1;
//3.在被注入程序分配記憶體
lpallocaddr = virtualallocex(hprocess, null, dwlength, mem_commit, page_readwrite);
if (lpallocaddr == null)
//4.拷貝dll路徑名字到目標程序的記憶體 做引數做準備
//loadlibrarya("bret") 做路徑傳這個引數準備
bret = writeprocessmemory(hprocess, lpallocaddr, szdllpathname, dwlength, null);
if (!bret)
//5.獲取模組位址
hmodule hmoudle = getmodulehandle("kernel32.dll");
if (!hmoudle)
//6.獲取loadlibrarya函式位址
dwloadaddr = (dword)getprocaddress(hmoudle, "loadlibrarya");
if (!dwloadaddr)
//7.建立遠端執行緒,載入dll
thread = createremotethread(hprocess, null,0,(lpthread_start_routine)dwloadaddr, lpallocaddr, 0, null);
messageboxa(null, "a", "a", mb_yesno);
//8.關閉幾次呢控制代碼
closehandle(hprocess);
closehandle(thread);
return true;
} int main()
建立遠端執行緒
1 用virtualallocex函式在遠端程序的位址空間中分配一塊記憶體。2 用writeprocessmemory函式反映dll的路徑名複製到第1步分配的記憶體中 3 用getprocaddress函式來得到loadlibrary w 或a 函式在kernel32.dll的真實位址。4 用cre...
mysql建立遠端帳戶 mysql 建立遠端帳戶
linux上安裝的mysql。預設狀況下只有乙個帳戶 root 此帳戶只能進行本地鏈結 對外拒絕鏈結 mysql 咱們須要建立乙個容許遠端登陸的資料庫帳戶 這樣才能夠方便的進行遠端操做資料 linux 預設狀況下 linux內的mysql資料庫mysql,user表內的使用者許可權只是對localh...
執行緒 建立執行緒
重寫run public void run 例項化物件 類名 t new 類名 設定屬性 名字,優先順序 優先順序是1 10的整數,1最小,預設是5 優先順序越高,該執行緒占用cpu的時間 機會 越多。id是自動生成 t.setname 執行緒1 t.setpriority 4 啟動執行緒,預設呼叫...