非管理者としてVSでデバッグする
-
05-07-2019 - |
質問
私はWinFormsの開発を行っており、XPとVS 2005を実行しています(古代、私は知っています)。管理者権限なしでアプリケーションを実行できることを確認したいのですが、非管理者としてVSを実行しようとするのが面倒なので、アプリをテストするためにログインおよびログアウトしたくありません。
非管理者としてデバッグできる方法はありますか?
非管理者と同じ権限セットで実行することを強制するコードに追加できるコードアクセスセキュリティ属性のセットはありますか?
解決
現在ログインしているデスクトップセッションから別のユーザーとしてVSを実行します。 「実行」を有効にして使用する方法を参照してください。 Windowsでプログラムを実行する際のコマンド。これは、ログインおよびログアウトする必要がないことを意味します。
RunAsを介してターゲットアプリケーションを別のユーザーとして実行し、(必要に応じて)Debug>を介してVSデバッガーをプロセスにアタッチすることをお勧めします。 Visual Studioの[プロセスにアタッチ]メニュー項目。
他のヒント
Philの答えに基づいて、スタートアッププロジェクトを次のように設定することでプロセスを自動化できます。
外部プログラムを起動します: c:\ windows \ system32 \ runas.exe
コマンドライン引数: / noprofile / user:{MachineName} \ {UserName} {ApplicationName} .exe
残念ながら、プロセスをVSデバッガーに自動的にアタッチする方法(セキュリティ警告のため)はないと思いますが、条件付きで呼び出すことで
#if (DEBUG)
System.Diagnostics.Debugger.Launch();
#endif
2回のクリックでデバッガーにアタッチするように求められます。