2

私のアプリケーションの小さな部分には管理者権限が必要です (ソフトウェアのアクティベーションは HKLM に行く必要があります)。このために、アクションに管理者権限が必要なボタンに盾のアイコンを描画し、クリックすると、「runas」動詞を使用して適切なパラメーターでアプリケーションを再起動します。

これはとてもうまくいきます!ただし、ユーザーがネットワーク共有からアプリケーションを実行する場合があります。ここで「管理者権限ボタン」をクリックすると、ネットワークドライブが管理者用にマップされていないため、エラーメッセージが表示され、実行可能ファイルが見つかりません:-(

これを回避する最善の方法は何ですか?

4

1 に答える 1

4

マップされたドライブはログオン セッションごとに保存されるため、昇格後は存在しません。

管理インターフェイスを別の実行可能ファイルに抽出し、マニフェストで requireAdministrator としてマークすることができます。次に、ShellExecute を介して管理実行可能ファイルを起動します。この場合、Windows エクスプローラーはドライブ マッピングをコピーします(ただし、文書化されていない動作)。

于 2013-07-07T02:15:33.557 に答える