c# - 生成后事件执行 PowerShell

标签 c# .net powershell msbuild

是否可以使用构建后事件设置 .NET 项目来执行 powershell 脚本?我正在使用此脚本生成一些文件。

我还可以将它是调试版本还是发布版本传递给脚本。这方面的一个例子会很棒。

最佳答案

这是一个例子:

首先:您必须知道必须配置 PowerShell 才能执行脚本。以下行允许 PowerShell 执行脚本:

Set-ExecutionPolicy RemoteSigned

在此特别提及:如果您运行的是 64 位系统,则必须注意 'devenv.exe' Visual Studio 2010 可执行文件是一个 32 位的 exe,所以你需要允许 PowerShell 32 来执行脚本。

在这里,您可以进入项目属性并配置后期构建,如下所示(抱歉,法语):

Post build in VS 2010

例如:

Example of postbuild with powershell

这是文件“psbuild.ps1”,它在目标路径中创建一个“test.txt”,其中包含配置名称。我在评论中添加了不同的方式来调试你的构建后脚本(消息框、声音、输出消息)

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

关于c# - 生成后事件执行 PowerShell,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6500320/

相关文章:

C#将int转换为带小数位的货币字符串

c# - 更改 System.Uri 的端口

c# - 如何获取动态下拉列表选择的值

.net - VS 2008 中的表单设计器有问题吗?

.net - ListBox和ListView有什么区别

powershell - 查找不包含所选字符串的文件

c# - 为什么 resharper 建议在未更改的字段中使用 readonly?

c# - 读取本地帐户ini文件

excel - 使用 excel 或 powershell 将一长串数字转换为存在范围的范围组

node.js - 如何在 Windows 上的 package.json 内的脚本中重新创建文件夹