vagrant provisionは、WindowsでUIなしでアプリを起動します


3

「浮浪者提供」の一環として、WindowsボックスでUIを必要とするアプリケーションを起動しようとしています。タスクマネージャーでアプリがVagrantユーザーとして起動されていることがわかりますが、画面にUIが表示されません。

たとえば、次のような単純なものを使用する場合:

config.vm.provision "shell", inline: <<-SHELL
  notepad
SHELL

私はUIが必要です-なぜ表示されないのですか?今、アプリを起動するためのより良い方法があるかもしれませんが、私はまだ何が起こっているのか興味がありますか?

PowerShellでマシン上で直接同じことを実行するとうまくいきます。


ユーザーがどのように実行されているかを見てくださいSYSTEM。たとえば、ユーザーである可能性があります。次に、それにアクセスするには、同じユーザーの下からグラフィカルツールも起動する必要があります。
STTR

1
Vagrantは、デフォルトでvagrantユーザーの下でプロビジョニングを実行します。ダブルホップとUACの問題により、スケジュールされたタスクを介してすべてのプロビジョニングが実行されます。これが機能しない理由は、同じユーザーであっても、プロビジョニングツールが異なるログインセッションで実行されるためです。
Sneal

回答:


2

回避策はschtasks、次のようなコマンドをトリガーするために使用することです。

config.vm.provision "shell", inline: <<-SHELL
  # Create a task that will never run automatically
  schtasks /create /tn "notepad" /tr "notepad.exe" /sc monthly /st 07:00 /sd 01/01/1980 /f
  # Run it now
  schtasks /run /tn notepad
SHELL

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.