假设我们有一个只使用.NET Frameworks的一些库的程序,例如读写文件的I / O程序,所以这个程序不像.NET库等那样使用多个库。所以,我想制作一个只包含运行所需库的程序!不是所有的.NET框架,我能做到这样吗?如果是,请解释您的想法。
感谢您的关注:)
答案 0 :(得分:3)
您的计划不包括"包括"所需的库。它们是根据需要加载的,因此您不必担心程序加载它实际上不使用的库。
如果您真正担心的是您的用户需要安装完整的.NET框架,那么您可以查看.NET Framework Client Profile。这是一个较小的安装程序,不安装完整的框架。
答案 1 :(得分:1)
安装.net框架时,它包含所有必需的库。您在程序中引用的.net库在分发时不包含在其中。
答案 2 :(得分:0)
您的应用程序不包含整个.NET Framework。这就是为什么用户在运行应用程序之前需要安装.NET Framework的原因。
答案 3 :(得分:0)
我想你在问你是否可以编写一个程序,它可以在没有安装.Net框架的机器上运行?然后只包含该特定应用程序所需的dll文件。
我认为必须在机器上安装.Net框架,因为使用CLR编译器编译的.exe会在执行时自动检查框架是否已安装。
即使您创建的最小的.exe也将采用PE32格式,而csc.exe发出的.exe包含一种顶部的引导程序,用于启动CLR的即时编译等。
因此,无论您调用哪些库,都需要为此功能安装框架。
这是我理解的。
对于您想要做的事情,您可能需要使用c ++编写非托管或不安全的代码并直接调用Win32 DLL。
答案 4 :(得分:0)
创建一个setup project,在安装应用程序时安装所需的.NET Framework。