學(xué)會(huì)用按鍵精靈制作腳本:用腳本運(yùn)行可執(zhí)行程序
Runapp命令,看上去是不是覺得so easy?不就是runapp某個(gè)程序的路徑,然后就可以打開這個(gè)程序了嗎?老話怎么說來著,越簡(jiǎn)單的東西越是不簡(jiǎn)單。Runapp使用起來也是處處暗藏殺機(jī)滴。 1.
Runapp命令,看上去是不是覺得so easy?不就是runapp某個(gè)程序的路徑,然后就可以打開這個(gè)程序了嗎?老話怎么說來著,越簡(jiǎn)單的東西越是不簡(jiǎn)單。Runapp使用起來也是處處暗藏殺機(jī)滴。
1. Runapp命令是個(gè)啥?
命令名稱RunApp,運(yùn)行命令功能啟動(dòng)一個(gè)程序或者打開一個(gè)文件。
2. 重頭殺機(jī)——你所要啟動(dòng)的程序是帶參數(shù)的
Runapp不支持啟動(dòng)帶參數(shù)的程序。首先,我們可以使用進(jìn)程查看工具,查看下我們要啟動(dòng)的程序是否是帶有參數(shù)的。然后,我們打開進(jìn)程查看工具,然后點(diǎn)擊我們要查看的程序,例如QQ程序。如果是帶有參數(shù)的程序,用進(jìn)程工具打開之后,彈出的界面,在程序路徑后面會(huì)出現(xiàn)參數(shù)。例如:F:桌面程序目錄 ot.exe $-fl$。
3. 解決方法之一
鼠標(biāo)右鍵,創(chuàng)建快捷方式。右擊創(chuàng)建好的快捷方式,選擇屬性。在“目標(biāo)內(nèi)容”填寫目標(biāo)文件路徑及參數(shù),如F:桌面程序目錄 ot.exe $-fl$。在“起始位置”填寫目標(biāo)文件夾,如F:桌面程序目錄(用進(jìn)程查看工具查看,有的情況下會(huì)發(fā)現(xiàn),程序所在的位置并不是程序的目錄,這里要注意確認(rèn),一定要填寫程序的起始位置,程序所在的目標(biāo)文件夾的位置)。
如圖所示:
使用RunApp啟動(dòng)這個(gè)快捷方式,例如在此快捷方式在桌面時(shí)。Call RunApp("C:UsersDeathDesktop
ot.exe.lnk")
經(jīng)過上面的兩步就可以達(dá)到預(yù)想的目的了。
4. 解決方法之二
使用命令庫(kù)里的Call Lib.API.運(yùn)行程序(程序路徑)這條命令來運(yùn)行,這條命令里使用了ShellExecute函數(shù)來運(yùn)行程序,據(jù)說這函數(shù)十分流弊,可以運(yùn)行所有可執(zhí)行文件。
5. 殺機(jī)之——粗心犯下的錯(cuò)
例如:寫路徑的時(shí)候,路徑前后多加了肉眼很難注意到的空格。RunApp " G:清理垃圾"和RunApp "G:清理垃圾 "上面的兩句代碼,前后分別多出了一個(gè)空格,出現(xiàn)了空格是無法運(yùn)行起來的。所以要特別注意,不能因?yàn)槭侄抖啻蛄藥讉€(gè)空格,不然調(diào)試那么幸苦,結(jié)果發(fā)現(xiàn)是敗在了小小空格的手上,會(huì)忍不住想要掐自己的。
正確的:RunApp "G:清理垃圾"
如果是先把地址賦值給變量,再runapp變量的話,要注意下變量復(fù)制過程中有沒有多了點(diǎn)什么或者少了點(diǎn)什么。
再例如,在自定義UserVar里定義程序運(yùn)行地址后:
UserVar YX"D:QQQQProtectBinQQProtect.exe"; "QQ地址:" RunApp(YX)
這樣的情況,要注意下自定義界面里的QQ地址這項(xiàng),是不是已經(jīng)被修改并且保存成了其他的值。
如圖:QQ地址的值已經(jīng)變化了,這時(shí)候運(yùn)行的話,就不能運(yùn)行之前設(shè)置的路徑里的程序。
6. 拓展知識(shí):Runapp打開文件,如何選擇打開方式?
例如我要用畫圖打開一張bmp圖片。我們可以這樣:RunApp "mspaint.exe G:圖片"
效果:
RunApp "mspaint.exe G:圖片"
mspaint.exe是畫圖軟件的運(yùn)行路徑,空格之后輸入圖片路徑G:圖片。
Runapp(notepad)和Runapp("notepad")調(diào)試后為什么結(jié)果會(huì)不同?Runapp(notepad)打開的是按鍵精靈的目錄文件夾,而Runapp("notepad")打開的是記事本,這個(gè)引號(hào)的作用是什么呢?Runapp(notepad)里的notepad是一個(gè)變量,變量沒賦值默認(rèn)為0,函數(shù)默認(rèn)運(yùn)行按鍵精靈目錄文件夾。Runapp("notepad")里的"notepad"是字符串型,是記事本的相對(duì)路徑。函數(shù)則運(yùn)行記事本。
Runapp為什么不能執(zhí)行cmd里的MD命令?例如:
path"md f:a" runapp(path)
并不能在F盤新建A文件夾。為什么呢?因?yàn)閙d不是一個(gè)程序,而是CMD.exe里面的一個(gè)創(chuàng)建文件夾的命令,所以需要用cmd打開運(yùn)行。
正確的應(yīng)該是這樣:
path"cmd /c md f:a" runapp(path)