2

ユーザーが自分のアプリケーション (Win XP では C#.NET 4) を実行しようとしたときに、"Run As" フォームをポップアップして、他のユーザーとして簡単にログインできるようにする必要があります。これは、アプリケーション自体 (C# コード内) または他の先行するバッチ/exe ファイル (「ランチャー」) 内などにあります。このフォームをポップする方法が見つかりませんでした。どうすればそれができますか?

ありがとう。

4

2 に答える 2

1

マニフェストで を使用<requestedExecutionLevel level="requireAdministrator"/>すると、アプリケーションを強制的に管理者として実行できます。ただし、これには RunAs ダイアログは含まれません。ショートカットから設定を見ると、これを処理するオプションがないことがわかります。

現在のユーザーが管理者権限を持っている場合、説明されている設定は、ユーザーに管理者として実行するように求めるだけです。ただし、現在のユーザーがこの権限を持っていない場合は、ユーザーに管理者アカウントの詳細を入力するように求められます。これは、探しているものに近いと思います。

于 2010-10-31T07:00:41.437 に答える
1

これを行う場合の最善の策は、CredUIPromptForWindowsCredentialsを呼び出すブートストラップ プロセスを作成することです。これにより、ユーザーに資格情報の入力を求めるダイアログが作成されます。資格情報を取得したらProcess.Start、CredUIPromptForWindowsCredentials が返したユーザー名とパスワードを取得するオーバーロードを使用します。少しの相互運用が必要です。

于 2010-10-31T07:12:37.687 に答える