私は 'C:\ Users \ amsd'であるユーザコール 'amsd'を持っています。その後、ユーザー名を「その他」に変更しました。しかし、パスは変更されていない、その名前は以前と同じです。しかし、今私がしようとしていることは、私は現在のユーザーからそのパスにアクセスする必要があるということです。私は、パス変数名(c:\ users \ amsd)ではなく、ユーザー名(other)だけを知っていると仮定します。しかし、私はその道にアクセスする必要があります。どうやってやるの。私は試しましたSystem.Environment.GetEnvironmentVariable("other");
しかし、その再入力null値環境変数を取得する方法名前
-2
A
答えて
0
私はユーザー名を持っています。だから私は、NTAccountコンストラクタにパラメータとして私のユーザー名を渡して、ユーザーのsidを取得しています。以下はコードです。
NTAccount f = new NTAccount(username);
SecurityIdentifier s = (SecurityIdentifier)f.Translate(typeof(SecurityIdentifier));
string sid = s.ToString();
その後、そのsidを使用して、以下のパスを使用してレジストリから値を読み取ってプロファイルフォルダを取得しています。
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList\sid
そのパスの下にキーコールprofileimagepathは、私はあなたが「ユーザー名を変更した」とはどういう意味ですかユーザープロファイルパット
関連する問題
- 1. Jenkins Groovyスクリプトコンソールで環境変数を取得する方法は?
- 2. gvimから環境変数を取得する方法
- 3. オブジェクト型環境変数を取得する方法は?
- 4. Antで環境変数ProgramFiles(x86)を取得する方法
- 5. プレイステーションで環境変数を取得する方法フレームワーク2.5.0?
- 6. リモートホストの環境変数を取得する方法
- 7. xulでは、環境変数を取得する方法は?
- 8. Android.mkで環境変数の値を取得する方法は?
- 9. Quasar Frameworkから環境変数を取得する方法
- 10. コアダンプから環境変数を取得する方法
- 11. nodejsでユーザーの環境変数を取得する方法は?
- 12. 前のビルドから環境変数を取得する
- 13. CでWindowsでユーザー環境変数とシステム環境変数を個別に取得する方法
- 14. SSIS内部から環境名を取得する方法dtsx
- 15. ドッカーコンテナから環境変数を取得
- 16. ドッカー環境変数を異なる名前の既存の環境変数に設定する
- 17. Windows環境変数の取得バッチファイル
- 18. virtualenvwrapperで環境の名前を変更
- 19. ブーストライブラリを使用してシステム環境変数を取得する方法は?
- 20. Hudson/Jenkins Plugin開発:他のプラグインの環境変数を取得する方法
- 21. Sparkクラスの環境変数の値を取得する方法は?
- 22. PATH環境変数の値をプログラマチックにAndroidで取得する方法は?
- 23. PHP/phpinfo()のシェルから環境変数を取得する方法
- 24. JavaでJAVA_HOMEおよびCATALINA_HOME環境変数を取得する方法は?
- 25. ブール変数の名前を取得する方法
- 26. 環境変数Laravelで変数を取得
- 27. Glibcコードで環境変数を読み取る方法
- 28. Javaコードから環境変数を読み取る方法
- 29. ドッカーコンテナー内のシステム環境変数を読み取る方法
- 30. カーネルドライバコードでu-boot環境変数を読み取る方法
を得ることができますがありますか?ログオンしているユーザーまたは彼の名前だけを変更しますか?現在ログオンしているユーザー(アプリケーションを実行するユーザー)または指定したユーザー名のプロファイルパスが必要ですか? –
P/Invoke経由で呼び出せる[GetUserProfileDirectory](https://msdn.microsoft.com/library/windows/desktop/bb762280(v = vs.85).aspx)があります。しかし、実際にそのユーザーとして認証する、つまりパスワードを入力する必要があるユーザーハンドルを渡す必要があります。ユーザー名やSIDだけでこれを行う方法はないようです。おそらく 'C:\ Users'のサブフォルダを列挙し、それらのACLを調べて問題のユーザに属するACLを調べることができます。 – Joey
@JoeyはC#でこれに関連するコードをすべて手に入れます。私はその方法を探しましたが、C++でコードが見つかりました。またはあなたはいくつかのリンクを言及できますか? – Mehdi