❶ au3獲取txt文件的行數
#Include <File.au3>
$a = _FileCountLines( "c:\che.txt");獲得文件有多少行,並且賦值給a
$t = 1
While $t <= $a
msgbox(1,"",FileReadLine("C:\che.txt",$t))
$t = $t+1
Wend
❷ au3怎樣獲取滑鼠坐標
你需要用到MouseGetPos() 函數,這個函數的作用是返回當前滑鼠的坐標,坐標是一個數組
給你舉個簡單的例子
#include <Array.au3>
Case $Button2 ;按下按鈕
$a=MouseGetPos() ;返回當前滑鼠位置的坐標,$a的坐標是一個數組
_ArrayDisplay($a) ;顯示數組
❸ au3如何添加文件夾內的圖片
GUICtrlCreatePic(文件名,左側,頂部[,寬度[,高度[,樣式[,擴展樣式]]]])
其中,「文件名」可以使用相對路徑。
注意:此方法支持的類型只有 BMP, JPG, GIF(不帶有動畫效果的)。其他格式的圖片要通過轉換為點陣圖來實現。
下面是一個例子:
GUICtrlCreatePic(".pictures est.jpg",50,50,200,50)
點號.就代表了腳本當前路徑。
或者,你可以使用AutoIt內置宏@ScriptDir來獲取腳本所在的絕對路徑:
GUICtrlCreatePic(@ScriptDir&"pictures est.jpg",50,50,200,50)
❹ 在au3中獲取本地連接的名稱
以下程序:如果只有一個,賦值給變數str;如果有多個,賦值給數組arr。
#include<Array.au3>
Local$str=""
$objwmiservice=ObjGet('winmgmts:\localhost ootCIMV2')
$colitems=$objwmiservice.ExecQuery('SELECT*FROMWin32_NetworkAdapter','WQL',0x10+0x20)
IfIsObj($colitems)Then
For$objitemIn$colitems
If$objitem.netconnectionid<>''Then
$str&=$objitem.netconnectionid&'|'
EndIf
Next
EndIf
$str=StringTrimRight($str,1)
IfStringInStr($str,'|')=0Then;Onlyone
MsgBox(0,"Localconnectionname",$str)
Else;Multi-connection
Local$arr=StringSplit($str,'|',2)
_ArrayDisplay($arr)
EndIf
該程序使用了系統自帶的WMI服務來查詢,但有些操作系統可能會裁減掉該服務,所以最好在前面首先使用下述代碼判斷該服務是否存在。
;函數功能:查詢系統WMI服務是否存在,不存在便退出;
;如果存在但沒有啟動,那麼設為自動運行並啟動它。
FuncQueryWmiStatus()
$foo=Run(@ComSpec&"/cscquerywinmgmt",@SystemDir,@SW_HIDE,2)
$lines=""
While1
$line=StdoutRead($foo)
If@errorThenExitLoop
$lines&=$line
WEnd
Select
CaseStringInStr($lines,"1060")
MsgBox(32,"錯誤","本軟體運行所需的服務不存在")
Exit
CaseStringInStr($lines,"STOPPED")
RunWait(@ComSpec&'/cscconfigwinmgmtstart=auto',@SystemDir,@SW_HIDE)
RunWait(@ComSpec&'/cscstartwinmgmt',@SystemDir,@SW_HIDE)
EndSelect
EndFunc;==>QueryWmiStatus
當然,正常系統都還是會帶有此服務的,所以不加此段代碼問題也不大。
❺ AU3中IE對象的屬性如何獲得
fileCreateddate是Document對象的一個屬性。
Document這個對象本身就是在JavaScript腳本語言中描述的,可能IE.au3這個源文件也是與JavaScript相結合的。
document.fileCreatedDate //獲取文件創建的日期
具體參考下面的鏈接。
❻ AU3如何激活打開在系統托盤的程序
用這個UDF(User Defined Function) -SysTray_UDF.au3
可能用到下面兩個中的一個:
_SysTrayIconTitles - 返回一個數組,包含所有有托盤圖標的窗口標題
_SysTrayIconProcesses -返回一個數組,包含所有有托盤圖標的進程名
鑒於有些托盤圖標不含窗口名稱,用後一種相對安全一些。
如果能獲取窗口標題,就可以用 WinSetState 來設置窗口狀態。
❼ AU3獲取窗口的隱藏文本來識別窗口
您好,很高興回答,希望能幫助您。
在開頭添加 Opt('WinDetectHiddenText', 1) 即可,
WinExists("標題"[, "隱藏文本"]) ;這樣就可以抓到了。
❽ autoit如何獲取js動態載入的網頁對象,這是個au3腳本問題
你可以用網頁快捕試試
具體可以去這里下載http://www.autoitx.com/viewthread.php?tid=29196&highlight=%CD%F8%D2%B3%BF%EC%B2%B6
ps:au3問題還是去www.autoitx.com提問吧,那裡是au3學者聚集的地方
❾ 如何用AU3獲取系統變數的真實路徑
大多數常用的變數在au3裡面都有宏。
如:
@HomeDrive = 當前用戶的帳號目錄所在驅動器盤符(例: C:)
@TempDir = 臨時文件夾
等等,更多請查看幫助文件。
❿ au3 如何將名稱部分相同的進程終止掉,並將終止的進程,並刪除這個可執行文件~如何改呢
$list = ProcessList() ;獲得所有進
$inStrProcessName = "123" ;引號內為進程名所包含的特定字元串
for $i = 1 to $list[0][0] ;遍歷進程
If StringInStr($list[$i][0],$inStrProcessName) Then
$ProcessPath = Processpath($list[$i][1]) ;獲取將關閉進程的儲存路徑
ProcessClose($list[$i][0]) ;如果進程名中包含QvodUpdate5就關閉該進程。
Sleep(1000) ;等待進程關閉
If $ProcessPath <> "" Then FileDelete($ProcessPath) ;刪除進程源文件,慎用哈!
Endif
Next
Func Processpath($iPID)
Local $aProc = DllCall('kernel32.dll', 'hwnd', 'OpenProcess', 'int', BitOR(0x0400, 0x0010), 'int', 0, 'int', $iPID)
If $aProc[0] = 0 Then Return SetError(1, 0, '')
Local $vStruct = DllStructCreate('int[1024]')
DllCall('psapi.dll', 'int', 'EnumProcessMoles', 'hwnd', $aProc[0], 'ptr', DllStructGetPtr($vStruct), 'int', DllStructGetSize($vStruct), 'int_ptr', 0)
Local $aReturn = DllCall('psapi.dll', 'int', 'GetMoleFileNameEx', 'hwnd', $aProc[0], 'int', DllStructGetData($vStruct, 1), 'str', '', 'int', 2048)
If StringLen($aReturn[3]) = 0 Then Return SetError(2, 0, '')
Return $aReturn[3]
EndFunc
還是我來回答你的問題哈!
以上代碼本機測試通過,還請慎用,刪除就沒法恢復了哈!
代碼沒有加無限循環,如果需要,那麼就在最上面加while(1),最下面加Wend。
全手寫,希望對你有幫助,就問題就追問,如果能解決問題還望及時採納哈!