【问题标题】:Where is the bin/Release folder located for ClickOnce Deployment applications?ClickOnce 部署应用程序的 bin/Release 文件夹在哪里?
【发布时间】:2014-12-05 18:10:27
【问题描述】:

我在 Visual Studio 2013 中有一个解决方案,我在构建后事件中使用 xcopy 将必要的文件复制到 bin\Debug 文件夹中。构建后事件完美运行,当我在 Visual Studio 中运行应用程序时,应用程序可以找到复制到 bin\Debug 文件夹的必要文件。

xcopy "$(SolutionDir)packages\NUnit.Runners.2.6.3\*.*" "$(OutDir)..\..\NUnitRunners\"  /E /I /Y /F
xcopy "$(SolutionDir)ProductionSmoke\bin\Debug\ProductionSmoke.exe" "$(OutDir)..\..\"  /E /I /Y /F
xcopy "$(SolutionDir)ProductionSmoke\bin\Debug\ProductionSmoke.exe.config" "$(OutDir)..\..\"  /E /I /Y /F

但是,当我使用 ClickOnce 发布解决方案时,应用程序会引发无法找到文件的异常。

private void buttonProductionSmoke_Click(object sender, EventArgs e)
{
    var pathToNunitGui = AppDomain.CurrentDomain.BaseDirectory + "NUnitRunners\\tools\\nunit.exe";
    var pathToProductionSmoke = AppDomain.CurrentDomain.BaseDirectory + "ProductionSmoke.exe";
    Process.Start(pathToNunitGui, pathToProductionSmoke);
} 

我查看了User\AppData\ 文件夹,但在任何地方都没有看到bin\Release 文件夹。

如何为程序提供文件路径,以便在使用 ClickOnce 部署后可以访问它们?

【问题讨论】:

    标签: c# visual-studio-2013 clickonce


    【解决方案1】:

    在特定的配置文件夹下会有一个“app.publish”目录。该文件夹将包含一个“.application”文件和一个“Application Files”文件夹。在“Application Files”文件夹中,您会找到包含主要和依赖二进制文件的特定于版本的文件夹。

    文件夹的版本号取决于 AssemblyInfo.cs 文件的 AssemblyVersion。您应该查看持续集成、MSBuild、NAnt 等以动态更新此文件以反映正确的版本。

    【讨论】:

      猜你喜欢
      • 2022-01-07
      • 2013-12-15
      • 2011-09-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-10-11
      • 1970-01-01
      相关资源
      最近更新 更多