• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:AppleScriptでアプリケーション再起動)

AppleScriptでアプリケーション再起動

このQ&Aのポイント
  • VNCアプリケーションが接続できなくなる問題についての質問です。
  • メール受信時に実行するAppleScriptでアプリケーションを再起動する方法がわかりません。
  • 実行すると「接続が無効です」とエラーメッセージが表示され、activateがハイライトされます。修正方法を教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • chieffish
  • ベストアンサー率44% (1149/2554)
回答No.5

Automatorでもできましたよ。  アプリケーションを終了  アプリケーションを起動 だけのフロー?をアプリケーションとして適当な名前を付けて保存。 AppleScriptで、今作ったアプリを起動するスクリプトを作って保存。 メールのルールにこのスクリプトを指定。

yus8132
質問者

お礼

あーなるほど!組み合わせれば良いのですね! 自分は発想が固くていかんなーと思い知らされました。 今回はこの方法を選択しようと思います。 どうも有難うございます。

すると、全ての回答が全文表示されます。

その他の回答 (5)

  • chieffish
  • ベストアンサー率44% (1149/2554)
回答No.6

念のためお断りしておきますが 私はki073さんの回答には付いていけないAutomator/AS素人です(;_;) MailのルールでASが起動出来るのも初めて知って、役立ちそうなので 参加しました。勉強させていただきます。

すると、全ての回答が全文表示されます。
  • ki073
  • ベストアンサー率77% (491/634)
回答No.4

No1, 3です。 Macを外部からコントロールする方法を書いておきます。標準で用意されていてWindowsからも可能となるものは 1) sshでログインしてshellを使う方法(No.3に記載した方法) 2) VNC標準でインストールされています。システム環境設定」「共有」「リモートログイン」で「コンピュータ設定」ボタンを押してVNC設定が可能になります。普通のVNCですのでWindows側でクライアントを用意すれば使えます。 3) ファイル共有 smbの設定をonにするとWindowsからも使えます。 一般的にはこのあたりです。 それと shellからAppleScriptを使う方法はNo.3に書きましたが、逆にAppleScriptからshellを使う方法として do shell script "open '/Applications/Preview.app'" があります。これでPreviewが起動します。シングルクォーテーションとダブルシングルクォーテーションを使い分けていますので注意してください。 AppleScript側で同じ様に書いておけば、No.3で書いたsshを使わなくてもAppleScriptから起動できます。起動だけならこの方が簡単です。

すると、全ての回答が全文表示されます。
  • ki073
  • ベストアンサー率77% (491/634)
回答No.3

一つの方法として、 相手側のMacを「システム環境設定」「共有」の「リモートログイン」を有効にしておきます。 そうするとsshで接続可能になります。 Windowsにはsshが使えるTeraterm http://sourceforge.jp/projects/ttssh2/ をインストールしておき、 (Macの場合だと標準で入っているターミナルでssh ユーザid@IPアドレスと入力) Teratermにログイン先を設定します。 (Macの「リモートログイン」を有効にしたときにssh ユーザid@IPアドレスの入れ方が画面表示されます) パスワードを聞いてきますので、それを入力するコマンド入力ができるようになります。 AppleScriptで終了させられるようですので、コマンドとして osascript -e 'tell application "SplashtopStreamer" to quit' これでAppleScriptをコマンドラインから実行できます。 つぎに open "/Applications/SplashtopStreamer.app" で立ち上がるはずです。SplashtopStreamerがアプリケーションフォルダにあることが前提ですが、アプリケーションのフルパスを入れば起動します。AppleScriptに対応している必要はありません。 相手につながればUNIXですので、基本的なコマンドは使えます。

yus8132
質問者

お礼

ご丁寧な回答どうも有難うございます。 こういうスクリプトとかコマンドとか込み入ったことは得意ではないので、 自分の能力不足でご説明についていけていないところがあるんですが、 自分の勉強のためになりそうなことなので、明日teratermを入れるところからちょっとトライしてみようと思います。 sshは別なことにも使えそうなので。 ただこの方法だと特定のwin機からしか再起動をかけられないという事になりそうですね。 実際家庭内LANでの運用を考えていたのでそれでも問題ないのですが、 ちょっと出先から、といったようなことも考えられなくもないので… 別のVNCを使えばいいのですが、Lionにしてから、なぜかwin→MacでのVNC接続が不安定になった気がします。 teamviewerは操作ラグが酷く切断されまくり、RealVNCはログイン画面が表示されるのみで先に進まない、、、等 splashtop~は相談内容の通り、何故か再接続出来ない問題はあるものの、繋がってしまえば安定するので消去法での選択です。 macの画面共有のwin版があるといいんですけどね。 私の家庭内の環境のせいかもしれませんが。 どうもありがとうございました。

すると、全ての回答が全文表示されます。
  • chieffish
  • ベストアンサー率44% (1149/2554)
回答No.2

tell application "アプリケーション名" quit delay 5 launch end tell としたらどうですか。終了後5秒待ってから起動という意味です。

yus8132
質問者

お礼

No1の方へのお礼でも書いたのですが、そもそもAppleScriptへの対応の問題があったようです。 一応お教えいただいたスクリプトを入力して実行してみましたが、 やはりquitまでは実行しますが、立ち上がってくれませんでした。 どうもありがとうございました。

すると、全ての回答が全文表示されます。
  • ki073
  • ベストアンサー率77% (491/634)
回答No.1

状況がつかめませんが、質問者さんが、相手側のMacをVNCで操作していて不安定ということでしょうか。 「システム環境設定」共有の「画面共有」でVNCを設定して使っているのでしょうか。それとも他のVNCサーバーを使っているのでしょうか? まずはVNCの不安定から解消するほうが良いように思います。 さて、AppleScriptの方ですが、アプリケーションを終了、再起動させるスクリプトですよね。 まず、そのアプリケーションはAppleScriptに対応しているのでしょうか? AppleScriptエディタのメニュー「用語説明を開く」に現れ、quitが使えることが確認できますか? 用語説明に現れるのであれば、quitやactivateが最低でも使える場合が多いのですが、まったく現れないのなら別の方法 System Eventsを使う必要があります。アプリケーション自体がフリーズしたような状態(メニューから終了できない)場合は、また別の方法をとる必要があります。

yus8132
質問者

お礼

説明不足ですみません。 おっしゃるとおり相手側MacにVNCサーバソフトが入っていて、 それをwin7のクライアントソフトで操作したいのですが、 接続をOFFにするたびに何故か繋がらなくなります。 ちなみにSplashtopStreamerというアプリケーションです。 これらの不安定解消のために色々と調べてみたのですが、 有効な解決策は見つけられず、どっちのアプリ側の問題なのかネットワークの問題なのか、 問題を切り分けることも出来ず、とりあえずサーバ側アプリを再起動すると 接続できることがわかったので、上記のような対策を取ることにしたわけです。 そんなに使用頻度が高いわけでもなかったので、妥協策を取りました。 Applescriptは完全に初心者ですので、色々と知りませんでした。 そもそもAppleScriptに対応しているかという問題があるんですね。 そしてご指摘の通り[用語説明を開く]には表示されず、 またブラウズから当該アプリを見てもグレーで選択できないようです。 ということはAppleScriptに非対応ということなんですね。 ただ、quitまでで試すと、アプリは終了してくれます。 SystemEventsというのはまた全然考えてなかった方法ですので、ちょっと調べてみます。 それとAutomatorも使ってみたのですが、これは上手く動かせませんでした。

すると、全ての回答が全文表示されます。

関連するQ&A