是否可以使用构建后事件来设置 .NET 项目以执行 powershell 脚本?我正在使用此脚本生成一些文件.
Is it possible to set up a .NET project with a post build event to execute a powershell script? I am using this script to generate some files.
我也可以将调试或发布版本传递给脚本.这方面的一个例子会很棒.
Also can I pass whether it's a debug or release build to script. An example of this would be great.
推荐答案这是一个例子:
首先:您必须意识到必须配置 PowerShell 才能执行脚本的事实.以下行允许 PowerShell 执行脚本:
First of all : you must be aware of the fact that PowerShell must be configure to execute scripts. The following line allow PowerShell to execute scripts :
Set-ExecutionPolicy RemoteSigned此处特别提及:如果您运行的是 64 位系统,则必须注意 'devenv.exe' Visual Studio 2010 可执行文件是一个 32Bits exe,所以你需要允许 PowerShell 32 执行脚本.
Special mention here : if you are running a 64bits system you've got to take care of the fact that 'devenv.exe' the Visual Studio 2010 executable is a 32Bits exe, so you need to allow PowerShell 32 to execute scripts.
到这里后,您可以进入您的项目属性并配置后期构建,如下所示(抱歉,法语):
Once here you can go in your project properties and configure post build as shown here under (sorry in french) :
例如:
这是文件psbuild.ps1",它在目标路径中创建了一个test.txt",其中包含配置名称.我在评论中添加了不同的方式来调试您的后期构建脚本(消息框、声音、输出消息)
Here is the file 'psbuild.ps1', it creates a 'test.txt' in the target path with the configuration name inside. I put in comment different ways to debug your postbuild script (message box, sound, message on the output)
param ([string]$config, [string]$target) #[void][Reflection.Assembly]::LoadWithPartialName("System.Windows.Forms") #[void][System.Windows.Forms.MessageBox]::Show("It works.") #[Console]::Beep(600, 800) #Write-Host 'coucou' set-content $target -Value $config -Force更多推荐
生成后事件执行 PowerShell
发布评论