问题标签 [fody-costura]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
97 浏览

c# - 通过 VS 2019 使用 Fody 和 Costura 构建应用程序时出错:另一个进程正在使用二进制文件

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

环境细节:

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

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

问题的行为如下,

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

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

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

  • 我必须重新启动机器才能删除 obj 文件夹。并且一旦将其删除,上述行为就会重复。

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

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

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

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

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

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

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

0 投票
0 回答
42 浏览

c# - 使用 costora.fody 合并 dll 与 emgu.cv 错误“无法加载 Dll cvextern”

我有一个 winform (.net 4.6) 使用 Emgu.cv 进行图像处理。我使用 Costura.fody 将 .dll 合并到 .exe 但不起作用。我用 ILSpy 检查 exe 中的 dll,它拥有一切。

在此处输入图像描述

在此处输入图像描述

在此处输入图像描述

谢谢你。

0 投票
0 回答
146 浏览

c# - 无法加载文件或程序集或其依赖项之一。系统找不到为 Costura Fody 和 xceed 工具包指定的文件

我在新的Visual Studio 2022中使用 C# WPF 并使用最新版本的Extended WPF ToolkitCostura Fody

我使用 Xceed WPF Toolkit 中的 TextBox Mask 并使用 Costura Fody 发布单个 exe 文件,该文件在 Visual Studio 2019 中的项目上工作,没有任何问题

我在 Visual Studio 2019/2022 中的 XAML:

但是在安装 Visual Studio 2022 并执行相同的项目和这些掘金之后,我遇到了这个错误

错误 XDG0062 无法加载文件或程序集“Xceed.Wpf.Toolkit,版本=4.2.0.0,文化=中性,PublicKeyToken=3e4669d2f30244f4”或其依赖项之一。该系统找不到指定的文件。

图像1 图2

注意:对于所有引用,Copy Local 都是 True,问题来自 Fody,因为在我安装之前 Xceed 工作正常!较低版本的 Visual Studio 2022 也没有此项目的此问题

我尝试了什么:

  • 使用这些 nugets 的另一个版本;
  • 添加来自另一条路径的引用;
  • 更改 .Network 版本

它们都不起作用,请帮助。

0 投票
1 回答
73 浏览

c# - 使用 costura.fody 时避免使用 .xml 文件

我想获得一个单一的 .EXE 文件,所以我正在使用Costura.Fody.

添加其 NuGet 包后,所有 DLL 都按预期嵌入到 .EXE 文件中。问题是我得到了所有这些 .xml 文件:

在此处输入图像描述

PS1:我正在使用 .NET Framework 4.6.1(由于某些 DLL,无法使用较新的版本)。

PS2:这些文件是必需的吗?也许我可以立即删除它们...

0 投票
1 回答
17 浏览

fody - 无法卸载 Fody Costura

我们使用 Fody Costura 打包一个复杂的 WPF 应用程序。现在,我们要卸载它,因为生成的可执行文件很大。

我们从所有程序集中删除了 nuget-packages(Fody、Fody-Costura)并删除了所有 bin 和 obj 文件夹。使用 Visual Studio 构建后,Weavers.xml 会自动恢复并打包 exe。

我已经重新安装并再次卸载了 nuget-packages,没有效果。我在源文件夹中为“Costura”和“Fody”做了“文件搜索”,没有命中。

怎么能卸载呢?

0 投票
0 回答
13 浏览

c# - Fody/Cosura 与 CreateInstance 冲突

完整的初学者在这里。

我需要在 C#/.NET Framework 项目中嵌入一个 DLL。经过一番阅读,我发现我可以使用 Fody/Costura 来做到这一点。事实上,它非常简单,当从一个空白项目开始时,我能够嵌入并且一切正常。

但是,当我尝试将我的 DLL 嵌入到已经存在的项目中时,我遇到了一些问题。在这个现有项目中,项目提供的 DLL(比如 Foo.dll)已经加载如下:

其中文件名是 Foo.dll 的路径。安装 Fody 和 Fody.Costura 后,出现以下错误:

无法将“Demo.Exp.Api.InstAccessContainer”类型的对象转换为“Demo.Interfaces.ExpAccess_V1.IExpInstAccessContainer”类型。

我尝试使用 FodyWeavers.xml 排除提供的 DLL,但似乎不起作用

我该怎么做呢?