【问题标题】:Publish version programatically (like ClickOnce) whitout msbuild.exe以编程方式发布版本(如 ClickOnce),无需 msbuild.exe
【发布时间】:2014-08-06 14:43:45
【问题描述】:

我需要以 ClickOnce 的方式以编程方式发布一个版本(软件?)。我已通过 msbuild.exe 成功完成此操作:

msbuild /t:clean;publish /v:d /p:SolutionDir=D:\BuildOutputDirectory\ /p:PublishDir=D:\BuildOutputDirectory\ /p :PublishUrl=D:\BuildOutputDirectory /p:InstallUrl=D: \BuildOutputDirectory\ D:\Temp\Unive.Net\Unive.Net\Unive.Net.csproj

在目录“BuildOutputDirectory”中,它创建了一个目录“Application files”和文件 setup.exe 和文件 *.application。 有人可以指导我如何使用 BuildRequestData 类或类似类实现相同的目标吗?

请任何人帮忙?

【问题讨论】:

    标签: c# .net wpf msbuild


    【解决方案1】:
    var globalProperties = new Dictionary<string, string>
    {
        // http://msdn.microsoft.com/en-gb/library/ms165431.aspx
        { "PublishDir", "BuildOutputDirectory\\" }
    };
    var projectInstance = new ProjectInstance(@"C:\Users\Ilya.Kozhevnikov\Dropbox\Unive.Net\Unive.Net\Unive.Net.csproj", globalProperties, null);
    
    var buildManager = BuildManager.DefaultBuildManager;
    var buildParameters = new BuildParameters { Loggers = new[] { new ConsoleLogger() } };
    var buildRequestData = new BuildRequestData(projectInstance, new[] { "Publish" });
    var buildResult = buildManager.Build(buildParameters, buildRequestData);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多