2014-09-26 89 views
-1

有時當我運行我的腳本時,出現「File some object was not found」的錯誤,但它在大多數情況下工作(我根本沒有改變路徑)。爲什麼此腳本在運行時不能偶爾工作?

display dialog "Virus is downloading." buttons "Stop Download" with title "Malware Initiating" with icon alias ((path to me) & "Contents:Resources:Spy.icns" as string) 

錯誤是圖標,它突出((路對我來說)作爲錯誤

誰能告訴我爲什麼會這樣,感謝

回答

1

我看到你所做的:?

((path to me) & "Contents:Resources:Spy.icns" as string) 

我在網上找到了一個正確的解決方案:

((path to me as text) & "::") 

不同之處在於,你的腳本決定使用什麼樣的數據類型(我的路徑),然後將其轉換爲字符串,而網絡的版本在代碼中決定它應該是事先提供的文本。

通常你的版本順利。系統有足夠的時間來解釋需要的東西。我在applescript中注意到的是,如果系統忙於做東西,它通常會自行掛斷。因此,將算法(如類型轉換)放入算法會使其更加穩定。

所以爲了更清楚地瞭解幕後發生了什麼。 您的代碼:

  1. 採取的路徑腳本「路徑類型」
  2. 採取文本「內容:資源:Spy.icns」
  3. 添加1和2一起
  4. 採取的選擇,使其文本

淨代碼:

  1. 採取的路徑腳本爲 '路徑類型'
  2. 製作路徑腳本文本
  3. 採取文本 「內容:資源:Spy.icns」
  4. 添加2和3一起

細微的差別,但有時確實明顯。

我希望這對你的作品:)

+0

感謝偉大的答案:) – 2014-09-26 13:23:11

+0

所以會是適合這個命令以及 '-set appLocation到路徑我作爲字符串 \t \t \t \t -set theFile到appLocation和 「內容:Troll.mp3」 \t \t \t \t - 告訴應用程序 「發現者」 打開文件theFile' 所以我要改變字符串TEX t – 2014-09-26 13:26:39

+0

字符串和文字在AppleScript中是同義詞:) – 2014-09-26 13:41:43

相關問題