2009-08-17 3 views
64

プログラムを実行しようとしています。別のユーザーとしてデバッグしています。これは、exeを実行してVisual Studioからアタッチすることで実行できますが、これは面倒です。RunAs Visual Studioでデバッグするときに別のユーザー

command.com /C runas /env /user:OtherUser DebugTarget.Exe 

しかし、これはcommand.comに添付され、Visual Studioがexeファイルを望んでいる:私はやってみたことは何

は "RunAsの" コマンドを使用しています。 今私はダミーのアプリケーションを作成することができます....誰もこれのためのよりよい解決策を持っていますか?

+0

華麗です。今私はちょうどcmd.exeを使用してこれをテストするために使用するように私はとても愚かな気がします。ああ。 – moogs

答えて

26

これは、(私はばかげ感じる)作品:

C:\Windows\System32\cmd.exe /C runas /savecred /user:OtherUser DebugTarget.Exe 

少ない欲求不満のために、あなたは/ SAVECREDを使用することができますので、上記のコマンドは、パスワードを毎回要求されます。あなたは一度だけ尋ねられます。 (しかし、ホームエディションや初心者のためにのみ動作し、私は思う)

+2

Visual Studioでこれをどのようにして行いますか?あなたは、ソリューションを開いてビルドし、何とかVisual Studioから上記のコマンドを実行しますか?私はVS2008を使用します。 –

+4

入手してください。http://social.msdn.microsoft.com/Forums/en/vsdebug/thread/eeba26cb-2336-4a80-99f4-ca4167d0758c –

16

あなたはまた、別のユーザーとして実行するためにVSCommands 2010を使用することができます。

alt text

+6

この機能を有効にするには、VSCommands Proが必要です。 Lite(無料)バージョンでは、これらのコマンドは利用可能であるように見えますが、呼び出されると何も起こりません。私はVS2010 Proで試しました。 – d11

+0

私はC#コンソールアプリケーションを使ってこれをテストしました。これはアプリケーションを実行しているユーザーのユーザー名を表示します。オプションを使用して別のユーザーとして動作するようにうまく動作します。私は管理者として実行するか、通常のユーザーとして実行するかわかりません。 – froeschli

+0

@ d11「VSCommands for Visual Studio 2013」で試してみましたが、期待どおりに動作します。 ( "コマンドライン引数"で指定されているものにフルパスが必要な場合を除いて) –

2

cmd.exeのは、Windowsの異なるバージョンの異なる場所に位置しています。 cmd.exeの場所を必要としないようにするには、 "cmd.exe/C"を呼び出さずにmoogsが書き込んだコマンドを使用できます。

  1. オープンコマンドは、アプリケーションの.exeファイルが置かれている場所へ
  2. ディレクトリを変更しプロンプト:

    は、ここで私のために働いた例です。

  3. は、次のコマンドを実行します。runas/user:ドメイン\ユーザー名Application.exe

だから、コマンドプロンプトで次のようになります最後のステップ:

C:\Projects\MyProject\bin\Debug>runas /user:domain\username Application.exe 

:ドメイン私の状況では名前が必要でした。

62

任意のより多くのツールを必要としません。これを行うには、別の非常に単純な方法(a link aboveに述べたように):

  • ホールドSHIFTキーとVisual Studioの新しいインスタンスを開くために右クリックします。
  • クリックして、デバッグ時に Run as different user
  • は、次のポップアップウィンドウ
  • 開きます今すぐ

で作業している同じ溶液中で他のユーザーの資格情報を入力し、「別のユーザーとして実行」それは他のユーザーの権限となります。

(ヒント:Visual Studioの複数のインスタンスを実行する場合は、そのテーマを「暗い」のように変更して、どれが容易かを把握できます)。

+0

これはここでは最高の解決策です。非常にうまく動作します。 TFSや有料アドオン(R#など)にアクセスできない場合は、唯一の問題です。私はこれを解決するために、ソリューションを通常通り(アカウントの下で)再開するだけで作業しました。 – gregsdennis

+0

この回答が示すように、2人の異なるユーザーから同じソリューションを開くことには何も問題ありません。あなたはそれらを開いてサイドバイサイドにすることができます。その理由の1つとして、あなたのVSテーマを切り替えることを提案しました。 – Watki02

+0

このソリューションで問題が発生しました。ウィンドウでShowが呼び出されると、デバッガは無限ループに入りました。 – Anders

5

私はWatki02の答え@に基づいて、次の方法を使用しています:

  1. ShiftキーR-クリックデバッグするアプリケーションを
  2. 実行など、さまざまな
  3. は、アプリケーション
にデバッガをアタッチし、ユーザ

このようにして、ビジュアルスタジオインスタンスを自分のユーザーとして保持し、他のインスタンスからデバッグすることができます。

0

私はVisual Studio 2015を使用しており、さまざまな資格情報を持つWebサイトをデバッグしようとしています。

は(私は現在、ライブ、アクティブディレクトリのコピーを持っている開発ネットワーク上のウェブサイトをテストしています。私は安全な方法でテストの権限にユーザーアカウントを「ハイジャック」することができます)

  1. はしてデバッグを開始しますあなたの通常のユーザ、あなたが他のユーザーにあなたの通常のユーザのホームディレクトリに「フルコントロール」のアクセス、すなわちを与える
  2. 通常などとしてhttp://localhost:8080に得ることができることを確認、C:\ Users \ユーザーコリン・
  3. 他のユーザーを作成しますと管理あなたのマシンでator。コンピュータを右をクリック> [管理]> [ファイル名を指定して実行のInternet Explorerは、IEウィンドウ
  4. であなたのローカルホストのURLへ
  5. ゴー(右、Internet Explorerをクリックして別のユーザーとしてを実行します+ Shiftキー)他のユーザーとして
  6. 管理者グループに他のユーザーを追加します。

いくつかのクイックテストを行うのが本当に便利です。フルコントロールのアクセスはおそらく過剰ですが、私は隔離されたネットワーク上で開発しています。誰かがより特定の設定に関するノートを追加した場合、私は将来この投稿を喜んで編集します。

関連する問題