0

我有一个在不同机器上开发的 C# 控制台应用程序。在这个应用程序中,我们选择使用 Fody,因为我们发现它是唯一可以将所有外部资源依赖项(任何额外的类库)嵌入到我们应用程序的单个可执行文件中的东西。

环境细节:

  • Visual Studio 版本:16.9.2(专业版 2019)
  • 类型:控制台应用程序
  • 框架:.Net 框架 4.5
  • 福迪版本:4.2.1
  • Costura.Fody 版本:3.3.3

虽然此应用程序在一台机器上运行没有任何问题,但它开始给另一台机器带来麻烦。我们需要在两台机器上完成这项工作,因为我们需要完成大量工作。我们已经比较了这两种环境,但无法找出任何区别。

问题的行为如下,

  • 当我第一次克隆和构建解决方案时,它会走上一条永无止境的道路,除了结束视觉工作室的任务外,我别无选择。

  • 而且我观察到 MSBUILD 被某些东西占用了,我无法结束它的任务

  • 第二次启动解决方案并构建它时,我收到以下错误。

     Severity    Code    Description Project File    Line    Suppression State
     Error   CS2012  Cannot open '<<obj folder path>>\Debug\Binary.exe' for writing -- 'The 
     process cannot access the file '<<obj folder path>>\Debug\Binary.exe' because it is being 
     used by another process.'   Binary.exe  <<project path>>\CSC    1   Active
    
  • 我必须重新启动机器才能删除 obj 文件夹。并且一旦将其删除,上述行为就会重复。

我在线程下面发现了一个类似的问题,

使用 PropertyChanged.Fody 构建应用程序时出错

但是,根据以下问题,此功能似乎在最新的 Visual Studio 中已过时。

在 Visual Studio Community 2017 上禁用 Visual Studio 托管进程

此外,我尝试按照以下线程中的说明设置环境变量,因为我认为它有些相关。但是,它也不起作用。

https://github.com/Fody/Fody/issues/537

我必须在我的解决方案中使用这些 Nuget 包。如果有人可以分享一些想法来解决这个问题,非常感谢

4

0 回答 0