Powershell в сценарии VS2019 «После сборки» вызывает исключение NullReferenceException

#visual-studio #powershell #visual-studio-2019

#visual-студия #powershell #visual-studio-2019 #visual-studio

Вопрос:

У меня есть скрипт Powershell для одного из моих проектов VS2019 со строкой

 Remove-Item C:UsersmeAppDataRoamingfoobar
  

Сценарий вызывается в настройке «Командная строка события после сборки» в сборке решения. Когда эта строка нажата, она просто завершается сбоем с:

 Remove-Item : Object reference not set to an instance of an object.
1>  At C:UsersmesourcereposFooResourcesInstall.ps1:17 char:1
1>    Remove-Item C:UserszachdAppDataRoamingfoobar
1>    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1>        CategoryInfo          : NotSpecified: (:) [Remove-Item], NullReferenceException
1>        FullyQualifiedErrorId : System.NullReferenceException,Microsoft.PowerShell.Commands.RemoveItemCommand
1>   
1>  Remove-Item : Object reference not set to an instance of an object.
  

Запуск точно такой же командной строки в обычном экземпляре Windows Powershell работает без проблем, поэтому я могу только предположить, что это вызвано VS, но я могу ошибаться.

Ответ №1:

Вы пробовали

 Remove-Item -Path C:UsersmeAppDataRoamingfoobar
  

Ответ №2:

вы можете попробовать это с помощью force, recurse для удаления, а также для получения дополнительной информации добавить debug

 Remove-Item -Path "location to the file/folder" -Recurse -Force -Debug

Remove-Item -Path "location to the file" -Force -Debug
  

В общем, при попытке выполнить это из любого скрипта могут потребоваться разрешения. Поэтому принудительное использование должно решить такие проблемы для Remove-Item.