Я использую для этого команду Set-Content Powershell.В чем может быть проблема?
Причина проблемы:
1.VS вызовет что-то вроде cmd.exe
для выполнения введенной вами командыBuild Events
.
Это означает, что вы пытаетесь запустить команду Set-content
в cmd.exe
.
2. Как boxdog сказал, code9009
в VS указывают the command is not recognized
.
Более конкретно, Set-content
- это команда PowerShell, а не команда, распознаваемая cmd.exe
. (См. # 1, VS вызывает cmd.exe для запуска команды).
Итак, проблема возникает: Type a PowerShell command in build events => VS calls cmd.exe to execute it => cmd.exe can't recognize a PS command. and throw error=> VS output log displays error code9009.
Предложения:
Вы не можете напрямую введите Set-content
inстроить события для запуска (оборудование для запуска Set-content
непосредственно в CMD, и это вызовет ошибку).
Вместо этого мы можем вызвать powershell
для запуска сценария PS или команды PS в cmd.exe
, вы можете найти много связанных с этим тем о том, как запустить сценарий PS из CMD онлайн.См. Запуск команды PS в cmd , Запуск PS из CMD , Как запустить PS в CMD .Но это больше похоже на другую проблему, поэтому я не буду здесь много говорить:)
В итоге: вы можете создать новый сценарий PS и перенести в него команду Set-content
, а затем ввести команду, например:powershell -file path\xx.ps1
или просто powershell - command
в событиях сборки.Тогда Error9009
уйдет.(Я полагаю, что Error9009 исчезнет, но я видел слишком много проблем с другими кодами ошибок, большинство из которых связаны с проблемами пути, поэтому позаботьтесь о пути, определенном в вашем сценарии.)