我问这个问题主要是为了学习。假设我想将一个非常小的控制台应用程序发送给(50 lines of code Also I am using the System.Text.RegularExpresion namespace.)
在 .net framework 4.0 上使用 c# 编写的朋友。我想让应用程序可移植,因此我只是将 bin 目录的输出发送给他。
为什么他必须安装.net framework 4.0客户端,这需要相当长的时间。此外,最好只包含我计划在这种情况下使用的 dll 库 system.dll(该库包含 system.text.regularexpressions 命名空间)。
换句话说,为什么我不能在我的控制台应用程序中包含 system.dll 以使其可移植并使其在未安装 .net 框架的计算机上工作。
为什么.net framework 4.0的安装这么复杂?如果 Windows 在哪里放置所有 .net 库C:\Program Files\.net framework 4.0\
,然后在安装时将密钥写入安装该框架的路径的注册表,以便程序能够找到必要的 dll,会发生什么情况。
为什么一般的安装如此复杂?
我尝试使用反射器反编译 system.dll,然后将其包含在我的项目中,但没有成功
编辑
我想我的问题应该是为什么 .net framework 4.0 需要这么长时间才能安装?如果 windows 在哪里将必要的 dll 放在程序文件上,然后将这些 dll 所在的路径写入注册表,为什么不能运行 .net framework 4.0。这个过程会快得多。为什么不这样做呢?
所以总而言之
感谢您的帮助,我现在明白了 CLR 的重要性。我想我唯一想了解的部分是为什么安装需要这么长时间。我知道有成千上万的dll。将这些 dll 解压缩到程序文件并在注册表上写入 10000 个键应该更快。