资源描述:
《perl win32 process&gui》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、PerlWin32process&guiIntroductionJingguoChen1/20/2011OutlineWin32::Process:CreateWaitWindowFindWindowLikeSendKeysSetForegroundWindow&GetForegroundWindowSetActiveWindow&GetActiveWindowGetDesktopWindowGetWindowTextWMGetTextWMSetText&WMGetTextGetWindowRectGetClassName2OutlineGetMenuGetMenuIte
2、mCountGetMenuItemInfoGetMenuItemIndex&GetSubMenuMenuSelectMouseClickIsWindowVisible3Win32::Process:CreateWin32::Process::Create($obj,$appname,$cmdline,$iflags,$cflags,$curdir)Explanation:Createandmanipulateprocesses$obj:containerforprocessobject$appname:fullpathnameofexecutablemodule$cmd
3、line:commandlineargs$iflags:inheritcallingprocesseshandlesornot$cflags:flagsforcreation(seeexportedvarsbelow)$curdir:workingdirofnewprocessWin32::Process::Create(my$ProcessObj,"C:\windows\system32\Notepad.exe","",0,NORMAL_PRIORITY_CLASS,".")Returnvalue:non-zeroonsuccess,0onfailure4Wait
4、WindowWaitWindow($wndtitle,[$wait])Explanation:MinimalversionofWaitWindowLike.Onlyrequiresthewindowtitleregexp.Youcanalsospecifythewaittimeoutinseconds.DifferencelowercaseorcaptialReturnvalue:Handleofafoundwindow5FindWindowLikeFindWindowLike($parent,$titleregex,$classregex,$childid,$maxle
5、vel)Explanation:Functionwhichallowsonetowaitforawindowtoappearvs.usinghardwaits(e.g.sleep2)@hwnds=FindWindowLike($parent,undef,"Button",123,2);Returnvalue:Foundwindowhandles6SendKeysSendKeys($keys,$delay);Explanation:Sendskeystrokestotheactivewindowasiftypedatthekeyboardusingtheoptionalde
6、laybetweenkeystrokes(defaultis50msandshouldbeOKformostuses).Specialcharandgroupseveralcharactersetc.~meansENTER+meansSHIFT^meansCTRL%meansALTSendKeys("ABC")7SetForegroundWindow&GetForegroundWindowSetForegroundWindow($hwnd)Explanation:Foregroundwindow'spriorityishigherthanactive,TheForegro
7、undassignsaslightlyhigherprioritytothethreadthatcreatestheforegroundwindowthanitdoestootherthreadsReturnvalue:ReturnsTRUEifwindowwasmovedtoforeground,FALSEotherwiseGetForegroundWindow()Explanation:GetForegroundWindowfunctionreturnsahandletotheforegroundwindowReturnv