6233


AppleScriptで”ワイヤレス診断.app”を起動させようとしていますが、うまく起動せず困っております。  
OSはYosemite10.10.2、スクリプトエディタはバージョン 2.7 (176)です。

書いたコード：

[code]

    tell application "System/Library/CoreServices/Applications/ワイヤレス診断.app"
        activate
    tell application "System Events" to keystroke "6" using {command down}
    end tell
    
[/code]

エラー：

[code]

    error "application \"System/Library/CoreServices/Applications/ワイヤレス診断.app\" を取り出すことはできません。"
     number -1728 from current application
    
[/code]


CC BY-SA 3.0
2015-02-10T04:27:21.130
6227
2015-02-10T05:14:50.013
2015-02-10T05:07:07.197
7590
7590
question
macos applescript
アプリケーション名が日本語のアプリをAppleScriptで起動させたい


ローカライズ用のファイルを参照して  
OS が「ワイヤレス診断」と表示しているので、もとの英語のアプリ名で叩けば起動する。

Finder からワイヤレス診断.appを右クリックし、「パッケージの内容を表示」し、  
InfoPlistを開く。

”Wireless Diagnostics”という名前だと分かるので、下記のようにコードを修正。

[code]

    tell application "System/Library/CoreServices/Applications/Wireless Diagnostics.app"
        activate
        tell application "System Events" to keystroke "6" using {command down}  
    end tell
    
[/code]


CC BY-SA 3.0
2015-02-10T05:10:49.227
6231
2015-02-10T05:10:49.227
7590
6227
answer


ローカライズされていないアプリ名なら、名称だけでOKです。

[code]

    tell application "Wireless Diagnostics"
        activate
    end tell
    
[/code]

「本来」のアプリ名は、「情報を見る」で調べられます。

![画像の説明をここに入力](https://i.stack.imgur.com/baRyV.png)

余談：  
基本、AppleScriptは、UNIX式のパス書式（/System/Library/CoreServices/Applications...）を使いません。使うときは、「POSIX
file」とします。

[code]

    tell application "Finder"
        set filePath to POSIX file "/Users/(username)/Desktop/info.png"
        open filePath
    end tell
    
[/code]


CC BY-SA 3.0
2015-02-10T05:14:50.013
6233
2015-02-10T05:14:50.013
7362
6227
answer