Я пытаюсь получить путь к каталогу профилей в разных версиях Windows.В старых версиях это может быть [диск]: \ Documents and Settings, в более новых версиях это [диск]: \ Users.Есть несколько способов сделать это локально без проблем, однако мне нужно найти путь на удаленной машине, к которой я подключился.
- Удаленный реестр включен.
- У меня есть маркер олицетворения, и я могу успешно собирать информацию с удаленного хоста через сетевой API и т. Д.
- У меня есть доступ к административному общему ресурсу и, следовательно, ко всем файлам на удаленном диске.
Вот список других важных предостережений.
- Это проект C ++.
- Кажется невозможным для GetProfilesDirectory или GetUserProfileDirectory работать в удаленном контексте,Если я ошибаюсь, пожалуйста, дайте мне знать, но во всех моих экспериментах функция возвращала что-то с локальной машины.
- Я не могу использовать WMI, мы много раз пытались интегрировать функциональность WMI в наш проект.и это просто не сработало.
- Я бы предпочел сделать как можно меньше "очистки экрана".Если у вас есть идея, которая не предполагает чтение из какого-либо текстового файла и анализ результата, я бы хотел услышать ее.Но я бы очень признателен за любой полезный ответ.
- Информация о каталоге профиля в реестре не кажется полезной, поскольку она содержит переменные среды, и, как и GetProfilesDirectory, функция расширения переменных среды не предназначена дляработа с удаленными хостами.Это означает, что решение не сработало бы, если бы я выполнял вызов с более новой машины Windows на более старую машину Windows или наоборот.
- Решение должно быть достаточно общим, чтобы работать между хостами, которые могут работать на любом компьютере.версия Windows от Windows Server 2003 до Windows 7.
Заранее благодарим за любые идеи, которые у вас могут быть.В идеале я хотел бы просто иметь возможность заставить GetProfilesDirectory работать на удаленном хосте, поэтому, если вы знаете, как это сделать, я буду любить вас вечно.