- - PR -
javaから外部アプリの起動
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2005-02-17 22:21
javaから外部アプリの起動として
Process p = Runtime.getRuntime().exec("C:\\WINDOWS\\notepad.exe"); で起動を試しているのですが、 マシンAでは起動でき、notepadがひらきます。 マシンBでは、タスクマネージャーにはnotepad.exeが起動するのですが 画面が開きません。 回避方法などありましたら教えていただけますでしょうか。 | ||||
|
投稿日時: 2005-02-17 22:30
環境がわからないと何ともいえませんが、
起動しているデスクトップと別ユーザで動いていないでしょうか。 | ||||
|
投稿日時: 2005-02-18 00:54
環境ですが、osはwinXPのproで
管理者権限をもっているユーザでログインしております。 また、調査していて、気づいたことがあります。 Tomcatはwindows版のzipを解凍して使っているのですが、 Tomcatをサービス化すると、外部アプリを起動できない(タスクには現れる)ようです。 Tomcatをbinの下のstartup.batで起動すると 外部アプリを起動できるようです。 なぜサービス化するだけで起動できないかが解明できない状態です。 | ||||
|
投稿日時: 2005-02-18 01:23
これって、全く通常の動作だと思うのですが・・・。 サービス化すると、そのサービスにとってのデスクトップと、今ログオンしているユーザーのデスクトップとは別物になりますから。 | ||||
|
投稿日時: 2005-02-18 01:42
返信ありがとうございます。
起動しているデスクトップとサービスのデスクトップが異なるのが原因 という事ですが、解決策としては サービスで起動した場合のデスクトップユーザは Administratorになるので、Administratorでログインすれば サービスのデスクトップと一致し起動できるということでしょうか? | ||||
|
投稿日時: 2005-02-18 08:32
まず試してみてはいかがでしょう?
うまくいかないようでしたら再度調べて、わからなければ再度質問を、わかれば解決手順を投稿する、というのがスムースです。 #サービスのプロパティを確認することをお勧めします ![]() | ||||
|
投稿日時: 2005-02-18 08:59
サービスは通常、特に設定していない場合
[SYSTEM]というアカウントで起動します。 [administrator]とは違います。 | ||||
|
投稿日時: 2005-02-19 00:33
返信ありがとうございます。
上記方法で確認してみます。 |