« [AppleScripts]ドロップレットの作法を考える その1 open (choose file) | トップページ | [AppleScripts]ドロップレットの作法を考える その2 on error »

[AppleScripts]error number -10004

error number -10004

–10004 A privilege violation occurred.
Apple Events特権違反エラー

ただし、処理を中断〜途中終了するようなエラーではありません。

Error_number10004_20130105_02


10.6からこうなったようです。(気がつきませんでしたw)

【AppleScript Release Notes: 10.6 Changes】


Source:【AppleScript Release Notes: 10.6 Changes】

Source:AppleScript Release Notes: 10.6 Changes


  

 

 

tell application "Finder"から呼び出すとエラーになるので

tell current applicationで実行している事がわかります

 

do shell script で処理を実行する場合のセキュリティへ上の配慮ですかね?

 

 

このサンプルの場合なら

以下のようにする事でエラーにりません。

 

 

Error_number10004_20130105_01

 
Finderや他のアプリケーションからsshを呼び出さないようにする事で
エラーになりません。

別にするパターン

Website_image20130105_172138


tell application "Finder"内で
FInderではなく
tell current applicationで実行させる

Website_image20130105_172150
 
 

エラーになりませんね。
  

tell application "Finder"
-------前処理


tell current application
do shell script "touch /tmp/test.txt"
end tell



--------後処理
end tell


 

error number -10004は
処理を中断〜途中終了するようなエラーではありません。
try
on error
の中で発生しても、処理は継続されます。

Website_image20130105_173409

tell application "Finder"
-------前処理


try
do shell script "touch /tmp/test.txt"
on error theErrorMsg number theErrorNum
activate
display alert (theErrorMsg & "" & theErrorNum) as informational
end try



--------後処理
end tell

|

« [AppleScripts]ドロップレットの作法を考える その1 open (choose file) | トップページ | [AppleScripts]ドロップレットの作法を考える その2 on error »

AppleScriptErrorNum」カテゴリの記事