ダイアログをポップアップするJavaプログラムを作成し、それをタスクとしてスケジュールしました。スケジュールされたJavaプログラムが実行され、ダイアログがポップアップする場合を除いて、すべてが正常に機能します。ダイアログボックスの後ろに別のウィンドウ(svchost.exe)がぶら下がっていて、Javaプログラムの実行が完了するまでどこにも移動しません。プログラムはWindowsXPで実行されています。
どうすればそのdosプロンプトを回避できますか?
ありがとう
ダイアログをポップアップするJavaプログラムを作成し、それをタスクとしてスケジュールしました。スケジュールされたJavaプログラムが実行され、ダイアログがポップアップする場合を除いて、すべてが正常に機能します。ダイアログボックスの後ろに別のウィンドウ(svchost.exe)がぶら下がっていて、Javaプログラムの実行が完了するまでどこにも移動しません。プログラムはWindowsXPで実行されています。
どうすればそのdosプロンプトを回避できますか?
ありがとう
警告の一言 (ファンシーなリンクと長さを取得できるように回答として投稿): UI をポップアップするサービスは、基本的に、悪用されるのを待っているセキュリティ ホールです (詳細については、「粉砕攻撃」を検索してください)。そのため、Windows Vista 以降では、サービスはデスクトップに UI を表示できません (サービスはセッション 0 で実行され、対話ユーザーはセッション 1 で実行されます)。
さらに重要なことに、Windows XP では、アプリケーションが動作しないシナリオがいくつかあります。コンピュータに複数のユーザーが同時にログオンしている場合 (ユーザーの高速切り替え)、またはマシンがターミナル サーバー ロールで実行されている Server 2003 マシンである場合インタラクティブなユーザーのセッションで UI がポップアップしません。
この記事では、セッション 0 分離の問題とその回避方法について説明します。
Java プログラムにコンソール ウィンドウを持たせたくない場合はjavaw
、 ではなくを使用して Java を起動する必要がありますjava
。
スケジュールしたいもののショートカットを作成します。ショートカットのプロパティ ダイアログで、ショートカット タブの [最小化して実行] を選択します。このショートカットをスケジュールするときは、ショートカットを参照していることを確認してください。.lnk で終わります。参照すると、ショートカットが指すもののショートカットをバイパスする可能性があります。ソース: http://ask.metafilter.com/18994/Windows-Batch-File-Run-Minimized