2015-05-21 3 views
0

Я написал графический интерфейс в PowerShell Studio для наших реселлеров службы поддержки ИТ. Это приложение графического интерфейса опубликовано в Citrix и открыто с учетными данными администратора. В приложении есть кнопка для запроса активного каталога для домашней папки пользователя. Эта папка может быть открыта только с учетными данными администратора, предоставленными для запуска приложения.PowerShell Открыть общую папку в качестве другого пользователя

$linklabelTSHomeFolder_Click = { 
    Start-Process $linklabelTSHomeFolder.Text 
} 

Это открывает проводник и говорит о том, что место не может быть найдено .. Однако, я подозреваю, что открыл исследователь открыт с текущими учетными данными, а не те, которые администратор.

При тестировании с обеспечением правильных учетных данных я не могу получить исследователь, чтобы открыть часть назначения:

Start-Process -FilePath 'C:\Windows\explorer.exe' -ArgumentList $linklabelTSHomeFolder.Text -Credential $Credentials 
Start-Process -FilePath 'C:\Windows\explorer.exe' -ArgumentList $linklabelTSHomeFolder.Text -Credential $Credentials -Verb runas 
Start-Process -FilePath 'C:\Windows\explorer.exe' -ArgumentList $linklabelTSHomeFolder.Text -Credential $Credentials -Verb runas -LoadUserProfile -WorkingDirectory 'C:\Windows\System32' 

Я пытался буквально все, но я не могу его открыть.

Даже когда я пытаюсь запустить его на своей локальной рабочей станции в PowerShell ISE с моими нормальными учетными данными и предоставить CmdLet учетные данные администратора, он не выплевывает ошибку и не показывает проводник. Только когда я удаляю часть -Credential $Credentials, она открывает проводник или выплевывает ошибку.

Благодарим за помощь.

ответ

1

С Vista Windows не позволяет открыть окно проводника другим пользователем, кроме текущего. runas функциональность была удалена. См. here для получения дополнительной информации.

Shift + Правый клик и Run as different user (только GUI) все еще работает.

Существует, однако, обходной путь для доступа к общему ресурсу с другим пользователем, но включает в себя баловаться с реестром:

$regKey ="HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\advanced" 
$user = $env:username 
$domain = $env:userdomain 
Set-ItemProperty -Path $regKey -Name SeparateProcess -Value 1 
net use \\$args\c$ /user:$domain\$user 
explorer.exe \\$args\c$ 
+0

Спасибо вам Рубанов, в этом случае я буду использовать другой инструмент [] (https: // explorerplusplus.com/), чтобы открыть эту страницу. – DarkLite1