尝试通过用户点击自动化c#解决方案的构建过程

本文关键字:解决方案 构建 过程 自动化 用户 | 更新日期: 2023-09-27 18:12:33

我试图通过一个点击按钮建立一个过程,在那里我可以做以下活动。

客观

  1. 从SVN下载最新代码。
  2. 构建2组代码来创建dll和exe-(a)发布模式下的Web应用程序(b)调试模式下的单机应用
  3. 然后替换配置文件中的一些键值
  4. 然后将它们放置到特定位置。

已完成的步骤

创建demo.bat文件,该文件将为Standalone构建exe和dll,如下所示


REM * ============================Starting Setup for Standalone======================================
SET Folder= C:'Automating'Application'Source'StandaloneApp'
cd %Folder%App1
msbuild /property:Configuration=Debug App1.csproj /t:clean /t:build
cd %Folder%App2
msbuild /property:Configuration=Debug App2.csproj /t:clean /t:build
del /F /S /Q /A %Folder%Setup'*.*
XCOPY %Folder%App1'bin'Debug'*.* %Folder%Setup'*.* /S /Y /F /Q
XCOPY %Folder%App2'bin'Debug'*.* %Folder%Setup'*.* /S /Y /F /Q

创建另一个bat文件demo1.bat将命令提示符更改为VS2010 cmd提示符


%comspec% /k ""c:'Program Files (x86)'Microsoft Visual Studio 10.0'VC'vcvarsall.bat"" x86
%comspec% /k ""C:'Automating'BuildAuto'BuildAutomation'demo.bat""

创建一个cmd文件从svn下载


TortoiseProc.exe /command:export /URL:[URL path] /Path:"C:/Automating/Demo"

最后一个web应用程序,从用户可以点击按钮下载按svexport .bat和构建按demo1.bat下载的代码。


protected void Button2_Click(object sender, EventArgs e) {
 ProcessStartInfo psi = new ProcessStartInfo(@"C:'AutomatingPOC'BuildAuto'BuildAutomation'demo1.bat");
            psi.UseShellExecute = false;
            psi.RedirectStandardOutput = false;
            psi.CreateNoWindow = false;
            Process.Start(psi);
}

下载事件正常工作,但构建不工作。我需要帮助我如何构建代码

尝试通过用户点击自动化c#解决方案的构建过程

为什么要白费力气?使用可用的工具,如TeamCity和msbuild(也有许多其他选择)。我发现尤金在这里做了一个很好的介绍。

人们花费了50年的时间来开发和完善构建自动化工具。如果我是你,我会停下来四处看看。

如果您设置psi。UserShellExecute为false,那么您需要指定要执行的命令实际上是"cmd.exe",并且批处理文件是一个参数。您还必须管理请求发出的时间和构建实际完成的时间之间的延迟。

使用自动热键可以很容易地自动完成这样的任务。你也可以使用start命令和你选择的浏览器类型IE Firefox iexplore chrome ~然后你可以自动下载。但请注意,有些网站的网页号码可能会改变IE。这个地址有一个指定的页面代码:

尝试通过用户点击

自动化c#解决方案的构建过程

所以不用在批处理中输入常规地址或者你选择的其他地址你可以输入

https://stackoverflow.com/questions/********

允许它查找信息

或者您可以使用鼠标/键盘录音机来自动完成任务。