欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

常見(jiàn)問(wèn)題解答 (FAQ)

這一部分將列出在 論壇 里經(jīng)常會(huì)被問(wèn)到的問(wèn)題。如果您在此處仍不能找到想要的答案,那么 論壇 將會(huì)是您第一個(gè)應(yīng)該去的地方。

問(wèn)題

1. 為什么AutoIt v2.64的舊版腳本不能運(yùn)行在v3下呢?

2. v3版本是不是會(huì)比前一版本更難掌握?

3. 怎樣把v2.64版的腳本文件轉(zhuǎn)換到v3版本?

4. “goto”命令哪去了?

5. 怎樣在AutoIt中運(yùn)行DOS程序?

6. 為什么只能用Run()命令來(lái)執(zhí)行.exe 和 .com 文件?對(duì)于.msi / .txt 還有其它格式的文件該怎樣做呢?

7. 為什么當(dāng)我嘗試使用雙引號(hào)(")的時(shí)候會(huì)發(fā)生錯(cuò)誤?

8. 究竟窗口“標(biāo)題”和“文本”參數(shù)的意思是什么?

9. 為什么不能使用"我的變量是 $variable"來(lái)輸出變量?

10. 當(dāng)我使用Send()命令來(lái)輸出變量時(shí)發(fā)生古怪的事情?

11. 返回值和@error究竟有什么不同?

12. 怎樣使用熱鍵來(lái)退出腳本?

13. 編譯腳本時(shí)怎樣自定義圖標(biāo)?

14. 怎樣才能確保只有一個(gè)腳本實(shí)例運(yùn)行?

15. 目前AutoIt v3有什么技術(shù)上的局限嗎?

 

1. 為什么AutoIt v2.64的舊版腳本不能運(yùn)行在v3下呢?

v3 具有不同于v2.64的語(yǔ)言結(jié)構(gòu)。

AutoIt的前一個(gè)版本能夠很好地應(yīng)付它被設(shè)計(jì)用以滿足的需求——編寫(xiě)簡(jiǎn)單的腳本來(lái)實(shí)現(xiàn)軟件的自動(dòng)安裝。但是隨著發(fā)展人們開(kāi)始需要使用它來(lái)進(jìn)行更加常見(jiàn)且更為復(fù)雜的腳本任務(wù)。舊有的語(yǔ)法和結(jié)構(gòu)雖然還是可以實(shí)現(xiàn)這些,但編寫(xiě)起來(lái)卻非常的困難而且麻煩。于是我們決定要改進(jìn) AutoIt 使其更加適合常見(jiàn)的自動(dòng)化任務(wù)并且可以成為更標(biāo)準(zhǔn)且類似BASIC的語(yǔ)言。這就意味著如果您已經(jīng)懂得腳本語(yǔ)言的編寫(xiě)的話,那么您就能很快地掌握AutoIt v3。

 

回到頂部

2. v3版本是不是會(huì)比前一版本更難掌握?

當(dāng)然不是。事實(shí)上在很多情況下它比起前一版本更加容易學(xué)習(xí),因?yàn)槟恍枰賴L試強(qiáng)迫讓此語(yǔ)言去完成它原本未被設(shè)計(jì)實(shí)現(xiàn)的工作。此外它還使用了我們所熟悉的類BASIC的語(yǔ)言,而B(niǎo)ASIC正是由于它的...呃...簡(jiǎn)單性和易用性而聞名:)

 

絕大多數(shù)的AutoIt腳本都是用在軟件安裝以及在許多對(duì)話框中點(diǎn)擊“下一步”。大部分的這些腳本都可以簡(jiǎn)單地通過(guò)添加一對(duì)小括號(hào)到特定字符串即可轉(zhuǎn)換為v3版本。下面就是一個(gè)示例,分別演示了在v2和v3中的腳本(模擬了一系列帶有 下一步(N)完成(F) 按鈕的對(duì)話框的軟件安裝)

 

; v2.64 腳本
WinWaitActive, 歡迎, 歡迎使用XSoft安裝程序
Send, !n
WinWaitActive, 選擇安裝目標(biāo)文件夾, 請(qǐng)選擇
Send, !n
WinWaitActive, 已準(zhǔn)備好安裝所需信息, 點(diǎn)擊[下一步]開(kāi)始進(jìn)行安裝
Send, !n
WinWaitActive, 安裝完成, 點(diǎn)擊[完成]退出安裝程序
Send, !f
WinWaitClose, 安裝完成

; v3 腳本
WinWaitActive("歡迎", "歡迎使用XSoft安裝程序")
Send("!n")
WinWaitActive("選擇安裝目標(biāo)文件夾", "請(qǐng)選擇")
Send("!n")
WinWaitActive("已準(zhǔn)備好安裝所需信息", "點(diǎn)擊[下一步]開(kāi)始進(jìn)行安裝")
Send("!n")
WinWaitActive("安裝完成", "點(diǎn)擊[完成]退出安裝程序")
Send("!f")
WinWaitClose("安裝完成")

 

看來(lái)還不是太難!:)由于所有的“字符串”都附上了引號(hào),因此您再也不用受到由文本頭部和尾部的空格引起的問(wèn)題的困擾了。同時(shí)還有個(gè)非常爽的好處就是可以支持許多 文本編輯器 ,因此在編寫(xiě)v3腳本時(shí)就可以有語(yǔ)法高亮提示了,這使得腳本的編寫(xiě)更加容易。

 

回到頂部

3. 怎樣把v2.64版的腳本文件轉(zhuǎn)換到v3版本?

其實(shí)您要先問(wèn)自己一個(gè)問(wèn)題“有必要轉(zhuǎn)換腳本嗎?”。我們將繼續(xù)提供v2.64的下載和支持,因此不必僅僅為了升級(jí)而升級(jí)——除非您非要這么做:)

本幫助文檔中專門(mén)有一節(jié)說(shuō)明了v2和v3版本命令的不同點(diǎn)——請(qǐng)點(diǎn)擊 這里 查看該頁(yè)。

 

AutoIt v3的一個(gè)作者已經(jīng)編寫(xiě)了一個(gè)用來(lái)自動(dòng)轉(zhuǎn)換v2腳本為v3版本的工具。這一轉(zhuǎn)換是非常完美的,除非您的代碼到處都含有g(shù)oto指令:)您可在“Extras”目錄找到此轉(zhuǎn)換工具(開(kāi)始 \ 所有程序 \ AutoIt v3 \ Extras——或者到AutoIt v3的安裝目錄中尋找)。

 

回到頂部

4. “goto”命令哪去了?

失蹤了,呵呵。很不幸。噢不,您不能問(wèn)為什么——反正就是這樣。這就像是在電影 時(shí)間劫匪(Time Bandits)結(jié)尾時(shí)他們?cè)谖⒉òl(fā)現(xiàn)的那塊石頭:)

AutoIt v3 以使用現(xiàn)今大部分常用的“循環(huán)”為特色,因此Goto不再是必需的。請(qǐng)查看 While, Do, For, ExitLoop, ContinueLoop 以及 函數(shù) 了解更加先進(jìn)的解決方式:) 另外當(dāng)你看幫助文檔的時(shí)候,請(qǐng)查看 循環(huán)(loops), 條件語(yǔ)句函數(shù) 部分的說(shuō)明。我向您保證,一旦您熟悉了它們的用法,實(shí)際上您將能在幾分鐘內(nèi)用其它語(yǔ)言編寫(xiě)程序。

為了讓你開(kāi)始了解這一點(diǎn),下面演示在2.64版中Goto的最基本用法,同時(shí)也是個(gè)無(wú)限循環(huán):

:mylabel
...執(zhí)行一些任務(wù)...
...其它任務(wù)...
goto, mylabel

v3 版中一個(gè)總是“true(表達(dá)式成立)”的簡(jiǎn)單的While循環(huán)

While 1 = 1
   ...執(zhí)行一些任務(wù)...
   ...其它任務(wù)...
Wend

如果v3版發(fā)布之后(因?yàn)槿∠鹓oto而)引起了大規(guī)模的抗議的話,我或許會(huì)考慮再次把它(goto)加入到AutoIt中,但將僅僅是幫助大家轉(zhuǎn)換腳本。

 

回到頂部

5. 怎樣在AutoIt中運(yùn)行DOS程序?

如果您想要執(zhí)行類似“dir”這樣的DOS命令,那么您必須通過(guò)命令解釋程序(command.com 或 cmd.exe,決定于您使用的操作系統(tǒng))來(lái)執(zhí)行。@Comspec(指向命令解釋器的全路徑) 這個(gè)宏指示了此文件的準(zhǔn)確位置。您應(yīng)該使用 RunWait() 函數(shù)來(lái)令腳本在DOS程序結(jié)束后才繼續(xù)執(zhí)行下一行指令。下面是一個(gè)示例,演示了使用DOS的Dir命令來(lái)顯示C:驅(qū)動(dòng)盤(pán)下的文件(等效于使用 command.com /c Dir C:\ 命令)

    RunWait(@COMSPEC & " /c Dir C:\")

 

回到頂部

6. 為什么只能用Run()命令來(lái)執(zhí)行.exe 和 .com 文件?對(duì)于.msi / .txt 還有其它格式的文件該怎樣做呢?

只有少數(shù)文件擴(kuò)展是“可運(yùn)行”的——通常這些文件是.exe, .bat, .com, .pif。其它類型的文件如.txt 和 .msi實(shí)際上是借助其它程序來(lái)執(zhí)行的。比如當(dāng)您雙擊“myfile.msi”文件的時(shí)候,實(shí)際上在后臺(tái)執(zhí)行的命令是“msiexec.exe myfile.msi”。所以要在AutoIt中運(yùn)行一個(gè).msi文件就需要這樣做:

    RunWait("msiexec myfile.msi")

 

或者用更簡(jiǎn)單的方法,就是使用“start”命令,它會(huì)自動(dòng)為您處理這個(gè)文件:

    RunWait(@COMSPEC " /c Start myfile.msi")

 

回到頂部

7. 為什么當(dāng)我嘗試使用雙引號(hào)(")的時(shí)候會(huì)發(fā)生錯(cuò)誤?

如果您想要在字符串里面使用雙引號(hào),那么您必須連續(xù)使用兩次雙引號(hào)。也就是說(shuō)每次您要使用引號(hào)就應(yīng)該使用兩對(duì)。例如,如果您想要設(shè)置一個(gè)變量為這樣的字符串:此句中"這個(gè)詞"是有引號(hào)的!  那么您應(yīng)該做的是:

    $var = "此句中""這個(gè)詞""是有引號(hào)的"

或者使用單引號(hào)也可以:

    $var = '此句中"這個(gè)詞"是有引號(hào)的'

 

回到頂部

8. 究竟窗口“標(biāo)題”和“文本”參數(shù)的意思是什么?

關(guān)于這個(gè)問(wèn)題 這里 有詳細(xì)的描述。

 

回到頂部

9. 為什么不能使用"我的變量是 $variable"來(lái)輸出變量?

如果有個(gè)變量名為$msg而您想要在對(duì)話框(MsgBox)中輸出這一變量,那么下面這種做法是錯(cuò)誤的:

    MsgBox(0, "示例", "我的變量是 $msg")

實(shí)際上它會(huì)輸出 我的變量是 $msg 。您要做的應(yīng)該是使用 & 操作符 把字符串和變量連接起來(lái)(成為新的字符串):

    MsgBox(0, "示例", "我的變量是" & $msg)

 

注意:如果您有很多變量需要添加到某個(gè)字符串當(dāng)中,那么您會(huì)發(fā)現(xiàn) StringFormat() 函數(shù)將是非常有用的。例如,如果我想要在某個(gè)字符串中插入$var1 到 $var5 這五個(gè)變量,那么更簡(jiǎn)單的方法就是這樣了:

     $msg = StringFormat("變量1是 %s, 變量2是 %s, 變量3是 %s, V變量4是 %s, 變量5是 %s", $var1, $var2, $var3, $var4, $var5)
     MsgBox(0, "示例", $msg)

 

回到頂部

10. 當(dāng)我使用Send()命令來(lái)輸出變量時(shí)發(fā)生古怪的事情?

如果您要 輸出 變量的內(nèi)容,那么請(qǐng)小心檢查它是否含有 ! ^ + {SPACE} 這樣的特殊的發(fā)送字符,因?yàn)樗鼈儗?huì)被解釋為特殊的鍵擊動(dòng)作——而這很少會(huì)是我們希望它做的。要克服這一問(wèn)題,請(qǐng)使用 Send() 函數(shù)的原文模式,這樣就不會(huì)解釋這些特殊按鍵了:

    Send($myvar, 1)

 

回到頂部

11. 返回值和@error究竟有什么不同?

一般來(lái)說(shuō)返回值是用來(lái)指示某個(gè)函數(shù)的成功執(zhí)行。但是,如果某個(gè)函數(shù)因?yàn)槠渌男枰呀?jīng)返回了一些值(比如 WinGetText()),那么我們就需要找到一種方法來(lái)確定函數(shù)是否成功執(zhí)行,因此我們用 @error 來(lái)代替。

回到頂部

12. 怎樣使用熱鍵來(lái)退出腳本?

噢,總算遇到一個(gè)比較簡(jiǎn)單的問(wèn)題了。如果您想要在按下某個(gè)按鍵組合后可以退出腳本,那么請(qǐng)使用 HotKeySet() 函數(shù)來(lái)設(shè)置指定按鍵被按下后執(zhí)行的用戶函數(shù)。這個(gè)用戶函數(shù)應(yīng)該僅含有 Exit 關(guān)鍵字。

下面這些腳本演示的是在按下CTRL+ALT+x后退出腳本:

HotKeySet("^!x", "MyExit")
...
...
; 其它代碼
...
...
Func MyExit()
    Exit
EndFunc

 

回到頂部

13. 編譯腳本時(shí)怎樣自定義圖標(biāo)?

您需要運(yùn)行編譯程序(如果是右鍵點(diǎn)擊腳本然后選擇編譯則不行)來(lái)編譯腳本。關(guān)于這個(gè)問(wèn)題 這里 有更詳細(xì)的描述。

回到頂部

14. 怎樣才能確保只有一個(gè)腳本實(shí)例運(yùn)行?

最簡(jiǎn)單的方法是在腳本首次運(yùn)行時(shí)重命名(隱藏的)AutoIt窗口的標(biāo)題。然后在同一腳本中檢查該窗口標(biāo)題是否存在——如果存在則說(shuō)明另外一個(gè)腳本副本正在運(yùn)行。

; 請(qǐng)置于腳本頂部
$g_szVersion = "My Script 1.1"
If WinExists($g_szVersion) Then Exit ; 此腳本已經(jīng)運(yùn)行了
AutoItWinSetTitle($g_szVersion)
; 下面是腳本的其它代碼

 

回到頂部

15. 目前AutoIt v3有什么技術(shù)上的局限嗎?

下面詳細(xì)列出目前AutoIt在技術(shù)上的局限。要注意的是,一些所謂的限制其實(shí)是理論上的,因此往往在能達(dá)到實(shí)際限制之前您就會(huì)碰到有關(guān)性能和內(nèi)存的問(wèn)題。

 

最大單行腳本長(zhǎng)度: 4,095
最大字符串長(zhǎng)度: 2,147,483,647 個(gè)字符

數(shù)字范圍(浮點(diǎn)): 1.7E–308 到 1.7E+308 有 15 位的精確度
數(shù)字范圍(整數(shù)): 64 位帶符號(hào)整數(shù)
十六進(jìn)制數(shù)目: 32 位帶符號(hào)整數(shù)(0x80000000 到 0x7FFFFFFF)

數(shù)組: 最大64維 和/或 共1600萬(wàn)個(gè)元素
遞歸函數(shù)能夠調(diào)用的最大深度: 384 級(jí)

能夠同時(shí)打開(kāi)的最大文件數(shù)量: 64
能夠同時(shí)激活的最大熱鍵數(shù)量: 64

能夠同時(shí)使用的最大變量數(shù)量: 沒(méi)有限制
用戶定義函數(shù)的最大數(shù)量: 沒(méi)有限制

GUI窗口的最大數(shù)量: 1024
每個(gè)窗口中的GUI控件的最大數(shù)量: 4096

 

回到頂部