ϷƼ֢̽| վҳ |  | ƽ̳ | ͼ | ڿͻ | վ |  | վ | ѵӰ |  
| 60̳ |  60ȡѧ԰WWW.60DU.COM| Ƶҳ | ڻ | ڿͷ | ȫ |  | QQר | ڿ 
| ʹ | ڿͱ | 缼 | ϵͳ  ڵλã 60 Eadren  >> ڿͻ >> ڿͱ >>  Ŀ 
      ڻ
      ڿͷ
      ȫ
      
      QQר
      ڿ
      ʹ
      ڿͱ
      缼
      ϵͳ
      ֽ̳

 Ƽ  QQ°뱾֤ QQɱ°¼ӹ˵ κQQΪ ӳѧߵ̸֣ QQβ͡ VBдּ 
Windows API ѧϰʼ дһűȡWind ϷƼ̽ ASPSQLע win2003/XP3389 
ƽACCESSݿ ̣Ŀ¼/ ƽע ײ㣺Windowsڿͱ̹... ϷƼ֢̽... 
... һ ǰ 

νϷңʵһϷ⸨ЭԶϷ޸ϷݰԼ޸ϷڴݵȣʵٵʱͽǮȥɹ͹նȻڶϷҳġϷ˵硣ҲԴ˷κθʱȥ˵һаɡ

ϷҳǲǡϷݣȴǾһļģЩССʹ߶˼SockAPIģ꼼ֱ޸ĳڴ漼ȵȡĽԳϷʹõļȫ

ʶ

Ϸҵʷ׷ݵϷʱֻʱʹһͨ׶??Ϸ޸Ϸ׷Ϸ˹ĸֵϷпԴﵽǲѪķħĽǮĿġϷѶȣʹҸͨء

Ϸʱ٣ϷԭеĹ֮ϽµķչøӶֶܸǿ󣬲Ӽ򵥣ЩϷѾΪһϵ硶ʯʱƷִﵽ˼ʮ֣ԶսԶߡԶԶѪ١СԭСӾֵ顭

ϷҵҪĳϷģǿԸԵϷͿɴ¿ɽҷΪִࡣ

һǽϷдĵĹʹԶɣ԰ɸ㶨󲢿Կٵҵľֵڡ塷һֹ趨ҵĹȼԽߣͿԼԦԽõװӹȼȴһȤ飬˵ظĻеͶʦõȣҪ--?ķܼ򵥣һôǰͣĵͿˣÿ10000ľһζҪڴǰͣĵ꣬ĵͨ""ͿԽҵ""ܿҰȤĵĹ

һҳƭԵϷЩ͵ϷЩϢƭϷֵ޸ģﵽ޸ĽɫֵĿġҳԺǿһʱĳϷĳ汾ģΪÿϷͻ˽ݰͬҳҪƭϷݰзܲʶݰҳҲǵǰһϷҳ

⣬ںܶҳǿ󣬲ʵԶͷܣһṩ˶ϷĿͻ˳ݽ޸ģԴﵽƭϷĿġţϷ̼ҵķҼĽչϷҽļڴſս......

Ҽ

ԽϷҳĹ̴ϻΪ֣

ǰڲֹǶҵϷзͬ͵ҷϷҲͬΪ̸еĵһʱ̳ϷĳеĹλúͷֲзʵԶйԼλƶΪеĵڶʱ̳Ϸͻ֮ͨѶݵĽṹԼ㷨ķϷ˾һ㶼ṫϷƷͨѶݵĽṹݺͼ㷨ϢԶڿڶҳɹĹؼǷȷϷݵĽṹԼ㷨ȻʹһЩ߸⻹һּӵĹ

ڲֹҪǸǰڶϷķʹôĳ򿪷дҳʵֶϷĿƻ޸ġҳΪһʱͨʹõģ⼼ʵϷɫԶλƶʹüģ⼼ʵϷɫԶҳΪڶʱͨʹõSock͵APIԵϷݰݰ޸ĺ󴫸Ϸ⣬ʹöϷͻ˳ڴ޸ļԼϷټ

ҪԿϷҳʹõĳ򿪷֣̽صܵ¼Ϸгʹõĳ򿪷

 ģ⼼Ҫģ⼼ģ⼼

 ҪSock͵API
ġģ⼼

ǰܹеϷдĵĹҵĹЩԹЩѾΪ˽ɫϷĴʡڣҿ԰ҴЩĵĹаѳרעϷڵĽչҳΪʵԶɫλƶԶȹܣҪʹõģ⼼ģ⼼ǽصЩдһ򵥵ʵ⶯ģ⼼ʵֹ̡

 ģ⼼

еϷжʹıɫλúͷҽһСС꣬Ϳʹɫ¡ôʵûҵĲ½ɫҲԶءʵʵѣWindows 
APIͿԸ㶨ʶʶЩAPI

(1) ģ궯APImouse_eventʵģ갴ºͷſȶ

VOID mouse_event(
DWORD dwFlags, // 궯ʶ
DWORD dx, // ˮƽλá
DWORD dy, // 괹ֱλá
DWORD dwData, // ת
DWORD dwExtraInfo // һ궯Ϣ
); 

УdwFlagsʾ˸ָ궯͵ĳȡֵ£

MOUSEEVENTF_MOVEʾģƶ¼

MOUSEEVENTF_LEFTDOWN ʾģⰴ

MOUSEEVENTF_LEFTUP ʾģſ

MOUSEEVENTF_RIGHTDOWN ʾģⰴҼ

MOUSEEVENTF_RIGHTUP ʾģſҼ

MOUSEEVENTF_MIDDLEDOWN ʾģⰴм

MOUSEEVENTF_MIDDLEUP ʾģſм

(2)úͻȡǰλõAPIȡǰλʹGetCursorPos()õǰλʹSetCursorPos()

BOOL GetCursorPos(
LPPOINTlpPoint // ĵǰλá
);
BOOL SetCursorPos(
int X, // ˮƽλá
int Y //Ĵֱλá
); 

ͨϷɫ߶ͨƶĿĵأȻһİť͸㶨ˡʹܵAPIģɫ߹̡

CPoint oldPoint,newPoint;
GetCursorPos(&oldPoint); //浱ǰλá
newPoint.x = oldPoint.x+40;
newPoint.y = oldPoint.y+10;
SetCursorPos(newPoint.x,newPoint.y); //Ŀĵλá
mouse_event(MOUSEEVENTF_RIGHTDOWN,0,0,0,0);//ģⰴҼ
mouse_event(MOUSEEVENTF_RIGHTUP,0,0,0,0);//ģſҼ 

2 ģ⼼

ںܶϷУṩĲһṩ˼̵ĲڶԹйʱʹÿݼΪʹЩܹԶУҳҪʹüģ⼼ģ⼼һWindows 
APIҲṩһϵAPIɶԼ̶ģ⡣

ģ̶APIkeydb_eventģԼϵĳĳЩа»ſĶ

VOID keybd_event(
BYTE bVk, // ֵ
BYTE bScan, // Ӳɨ롣
DWORD dwFlags, // ʶ
DWORD dwExtraInfo // ̶ĸϢ
); 

УbVkʾֵʵһBYTEֵĺ꣬ȡֵΧΪ1-254йֵMSDNʹùؼ֡Virtual-Key 
CodesϡbScanʾĳºͷſʱϵͳӲɨ룬ǿMapVirtualKey()ֵɨ֮תdwFlagsʾָļ̶ȡֵKEYEVENTF_EXTENDEDKEYKEYEVENTF_KEYUP

ʹһδʵϷаShift+RݼԹй

keybd_event(VK_CONTROL,MapVirtualKey(VK_CONTROL,0),0,0); //CTRL
keybd_event(0x52,MapVirtualKey(0x52,0),0,0);//R
keybd_event(0x52,MapVirtualKey(0x52,0), KEYEVENTF_KEYUP,0);//ſR
keybd_event(VK_CONTROL,MapVirtualKey(VK_CONTROL,0), 
KEYEVENTF_KEYUP,0);//ſCTRL 

3 

ܵͼģ⼼ʵ˶ϷɫĶֵģ⣬ҪܹϷ֮ϣҪϷĳϵʹһ󰴼ǸһǿGetWindowöٴڣҲFindwindowضĴڡ⻹һFindWindowExҵڵӴڣϷлʱǿFindWindowExȷһЩǰڵӶжǷܶˣGetWindowInfoȷһЩ統Ҳĳťʱ˵ϷѾл˵ȵȰ취ʹüйҪʹHookһȫּ̹ӣͲȫֹӵĿˣںʵǽʹõȫֹӣʱѧϰȫֹӵ֪ʶ

... ¼룺Ƭ    α༭Ƭ һƪ£ ӳѧߵ̸ֱ֣ѧı 
һƪ£ ƽACCESSݿ
 
û
壺С 󡿡ۡղءߺѡӡġرմڡ    ûκ 
              * Oicq 
             ҳ 
             ֣ 1  2  3  4  5 
            ݣ 
               



   QQ°뱾֤ƽ QQɱ°¼ӹ˵ wmiprvse.exe - Ϣ windowsı̡ ѴIC绰 VB 
㿪ʼ( ɨ豾ؼ򿪵Ķ ȡWindowsϵͳĽ κQQΪ ڿ̽ȡԭ ƽ ASP﷨ȫ 
[ͼ]QQ뱾ƽ ӳѧߵ̸֣ QQβ͡ ڹ߽ NTLDRRING0ķ VBдּ 
С󡪡IIS ͵ؿ:һ Windows API ѧϰʼ ټƽվȫ VBѧϰ:ȡü 
дһűȡWindow ϷƼ֢̽ һSQLServer֤ ѧҳľ ȽJSPASP javascriptʹ 
͸ѧϰC++ѵ5... 

|Ϊҳ | ղ | ϵվ |  | Ȩ | ICP05008239 

Ա:Ƭ| Eadren | δ𽫱վģĳǷ; | 60 Eadren  
All Rights Reserved (C) Copyright 2007 Email:admin@60du.com 
ģȺ:6019353 11395765 
