6
別のユーザーのグラフィカルセッションでGUIアプリケーションを起動する方法
私は、そのユーザーのグラフィカルセッションで対話的にログインしている別のユーザーとしてGUIアプリケーションを起動する方法を見つけようとしています。 たとえば、fooとbarという2人のユーザーがいるとします。両方ともログインしていますが、現在の対話ユーザーはfooです。ユーザーを「バー」としてCalculator.appを起動したいので、ユーザーをバーにすばやく切り替えると、バーのセッションで電卓ウィンドウが開いていることがわかります。 ここで私が試したのはうまくいきません: sudo -u bar /Applications/Calculator.app/Contents/MacOS/Calculator これにより、Calculator.appがバーとして起動されますが、fooのグラフィカルセッションでウィンドウが開きます。 sudo -u bar osascript -e "tell application \"Calculator\" to activate" 同じ効果。 sudo -u bar open "/Applications/Calculator.app" 電卓をバーではなくfooとして起動します。 launchctl asuser [uid of bar] [any of the above commands] 同じ効果。 これを達成する方法はありますか?私は、bashスクリプト、AppleScript、Core FoundationまたはCocoaプログラムの作成などを含む、あらゆる種類の可能な解決策を楽しませるつもりです。私の状況では、プログラムやスクリプトは、rootを含むすべてのユーザーとして実行できます。 注:リモートApple Eventsを使用することは可能ですが、これを使用しようとしている状況では、共有設定で「リモートApple Events」が有効になる保証はないため、使用できません。 どんな助けも大歓迎です!