プログラムでネットワーク ドライブをマップするアプリケーションがあります。UAC をオンにした Vista では、奇妙な問題が発生します。
私たちのアプリケーションは昇格されていないドライブをマップするため、ユーザーがエクスプローラーを参照し、ダブルクリックして exe を実行すると、UAC のプロンプトが表示されます。彼らがそれを承認すると、共有のユーザー名/パスワードの入力を求められます...資格情報が保存されているので奇妙です。
昇格されたプロセスは、昇格されていないプロセスからマップされたマップされたドライブにアクセスできないことが判明しました。
この問題を実際に確認するには、次の手順を実行します。
- UAC なしで cmd.exe を実行する
- 「net use w: \yourHostname\yourShare /user:yourUser yourPassword /persistent:yes」を実行します
- 管理者として cmd.exe を実行します
- 「w:」と入力し、エラー メッセージを確認します。
この時点で、単純な「net use」を実行すると、昇格されたコマンドの接続が使用不可であることがわかりますが、昇格されていない他のコマンドはそれを OK と見なします。
この問題を解決するための回避策を知っている人はいますか? または、ネットワークドライブを「すべてのユーザー」にマップする方法はありますか?