Set-Location против SetCurrentDirectory

Какая разница в Powershell между

Set-Location "$env:ProgramFiles\My App\"

а также

[System.IO.Directory]::SetCurrentDirectory("$env:ProgramFiles\My App\")

Причина для того, чтобы спросить, что у меня недавно был сценарий, который использовалAdd-Type -Path XXX добавить ссылку на сборку. Сборка зависела от ряда библиотек DLL (некоторые из которых могут быть связаны во время выполнения, а не во время загрузки), расположенных в той же папке, что и сборка.

Поэтому я решил изменить каталог на папку, чтобы помочь сборке найти все необходимые файлы. Когда я изменил каталог с помощьюSet-Location Я получил ошибку (которая была специфична для сборки), жалуясь, что не может найти все библиотеки DLL. С помощьюSetCurrentDirectory работал однако.

Поэтому две команды, кажется, делают разные вещи. Я бы ожидал, что они будут такими же.

Ответы на вопрос(2)

Ваш ответ на вопрос