将exe文件获取到构建输出目录

时间:2017-04-06 05:21:48

标签: .net visual-studio winscp winscp-net

使用WinSCP .NETassembly从C#程序获得SFTP支持。在Visual Studio中构建项目时,我希望将WinSCP.exeWinSCPnet.dll复制到bin输出目录。 WinSCPnet.dll很容易 - 因为它作为程序集引用添加,只需将" Copy Local" 设置为true,然后完成。

但是WinSCP.exe呢?

我能想到的两件事:

  1. 将文件WinSCP.exe添加到项目的根目录,并将"复制到输出目录" 设置为"复制总是"

  2. 项目属性构建事件中的
  3. ,使用post-build event命令行使用命令行copy命令复制文件。

  4. 两者看起来都很笨拙。有没有更好的办法?

1 个答案:

答案 0 :(得分:4)

1.是正确的方法。除了你想要"复制更新" 。我没有看到任何东西"笨重的"关于它。

引用WinSCP documentation for using the assembly in Visual Studio

  

您可能希望将winscp.exe添加到Visual Studio项目中,以便将其自动复制到输出路径(通过设置文件属性复制到输出目录复制如果更新)。 Build Action 应自动设置为 Content ,这意味着在部署应用程序时将包含该文件(例如,ASP.NET Web应用程序或Azure WebJob应用程序)。

你实际上更好install the assembly via NuGet package

WinSCP NuGet package会自行处理这些设置。