В любое время я вижу что-то вроде этого:
Это очень неудобное, чтобы закрыть PowerShell, восстановить DLL, а затем снова открыть новый PowerShell, компакт-диск с путем длл (обычно глубоко вложенный), реимпорт еще раз, запустите команду для дебюта и т. д. для каждой отдельной сессии отладки ...
Я сразу же думаю: «Я должен создать сценарий для выполнения этих задач для меня».
Есть решения. Вы можете запустить второй PowerShell (как и другой ответ). Еще одно решение - использовать скрипт для выполнения некоторых работ для вас, и, прежде всего, вы можете добавить это в свой проект VS.
Создать скрипт в вашем профиле, чтобы начать PowerShell
function Start-DebugPowerShell
{
PowerShell -NoProfile -NoExit -Command {
function prompt {
$newPrompt = "$pwd.Path [DEBUG]"
Write-Host -NoNewline -ForegroundColor Yellow $newPrompt
return '> '
}
}
}
Set-Alias -Name sdp -Value Start-DebugPowerShell
Изменить настройки отладки для вашего проекта командлета
Начало внешней программы:
C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe
аргументы командной строки:
-NoProfile -NoExit -Command "Import-Module .\MyCoolCmdlet.dll"
отладки вашего модуля
Теперь из Visual Studio, запустите отладчик F5, и у вас есть новое окно PowerShell с вашей Cmdlet загружен, и вы можете отлаживать его, как вам нравится.
Используйте «SDP» псевдоним из любого окна PowerShell
Поскольку функция Start-DebugPowerShell в нашем профиле, и мы дали ему псевдоним sdp
, вы можете использовать это, чтобы запустить второй экземпляр PowerShell в любое время Вы нуждаетесь в этом.
AFAIK, выгрузка невозможна. Я тоже столкнулся с этим. –
Является ли новый профиль powershell опцией? – dfundako
Возможный дубликат [Powershell Unload Module ... полностью] (http://stackoverflow.com/questions/1337961/powershell-unload-module-completely) – beavel