C# 编译为中间类型

C# 编译为中间类型,c#,C#,这对我来说是一种学习 编译为什么输出类型或如何将C#类库编译为中间文件,但不是DLL;可以在其他项目中使用,而无需源代码,也无需将其传递给最终用户 据我所知,这在Delphi/C/C++中是可以实现的 可以在其他项目中使用,而无需源代码,也无需将其传递给最终用户 在我看来,你应该把它编译成一个DLL,但也许可以考虑作为你的构建/部署策略的一部分。坦率地说,很少有什么好的理由不直接发布dll而不合并 请注意,csc确实允许您通过/target:module输出原始模块(可能随后会与/addmodu

这对我来说是一种学习

编译为什么输出类型如何将
C#类库
编译为
中间文件
,但
不是DLL
;可以在其他项目中使用,而无需源代码,也无需将其传递给最终用户

据我所知,这在Delphi/C/C++中是可以实现的

可以在其他项目中使用,而无需源代码,也无需将其传递给最终用户

在我看来,你应该把它编译成一个DLL,但也许可以考虑作为你的构建/部署策略的一部分。坦率地说,很少有什么好的理由不直接发布dll而不合并

请注意,
csc
确实允许您通过
/target:module
输出原始模块(可能随后会与
/addmodule
重新组合)-但坦率地说,这将是一个真正的难题

可以在其他项目中使用,而无需源代码,也无需将其传递给最终用户

在我看来,你应该把它编译成一个DLL,但也许可以考虑作为你的构建/部署策略的一部分。坦率地说,很少有什么好的理由不直接发布dll而不合并


请注意,<代码> CSC < /C> >允许通过<代码> /目标:模块< /COD>输出原始模块(大概是与代码> > ADDMODE <代码>重新组合),但坦率地说,这将是一个真正的工作。

你在Delhpi或C++中是如何实现的?在Delphi中是这样的,我也做过。@Tigran OP讨论的是对象文件和库-尽管这些文件和库甚至在Delphi中都需要头文件/链接文件才能编译,因为它们根本不包含元数据。但为什么要这样做呢?使用.NET程序集不需要任何源代码,因为它已包含所有必需的元数据。此外,用户不再介意安装程序添加2个或12个文件-他们永远不会看到this@RJ1990ILMerge不是这样工作的。它合并DLL/可执行文件。它不是为处理其他类型的文件(如设置文件)而设计的,重新编辑:这毫无意义-ILMerge处理程序集-它与ini/config文件没有任何关系。我不认为你在这里正确使用工具……那么你是如何在Delhpi或C++中实现这一点的?是的,在Delphi中,我和它一起工作。@ TiGRAN OP正在讨论对象文件和库——尽管这些文件需要Delphi/Link文件,甚至在Delphi中编译,因为它们根本不包含元数据。但为什么要这样做呢?使用.NET程序集不需要任何源代码,因为它已包含所有必需的元数据。此外,用户不再介意安装程序添加2个或12个文件-他们永远不会看到this@RJ1990ILMerge不是这样工作的。它合并DLL/可执行文件。它不是为处理其他类型的文件(如设置文件)而设计的,重新编辑:这毫无意义-ILMerge处理程序集-它与ini/config文件没有任何关系。我认为您在这里使用的工具不正确……ILMerge是一个不错的工具,我尝试过,但无法使用。请再次参阅帖子,我已对其进行了修改。@RJ1990我认为您使用的工具不正确;它不关心配置文件-这不是它的工作。ILMerge是一个很好的工具,我试过了,但无法使用。请再次参阅帖子,我已经修改了它。@RJ1990我认为您没有正确使用该工具;它不关心配置文件——这不是它的工作。