构建C#应用程序的发布版本
在Visual Studio中构建我的C#应用程序的发布版本时,它还生成了一个构建C#应用程序的发布版本,c#,visual-studio,versioning,C#,Visual Studio,Versioning,在Visual Studio中构建我的C#应用程序的发布版本时,它还生成了一个.config和一个.manifest文件。我想知道这些是什么,以及它们对应用程序的实际运行是否重要。是的,这很重要,因为如果您正在启动应用程序的新版本并更新现有设置,此功能将仅帮助识别系统上安装的应用程序的当前版本,在此基础上,只有您才能对其进行更新。是的,这很重要,因为如果您正在启动应用程序的新版本并更新现有设置,此功能将仅帮助识别系统上安装的应用程序的当前版本,在此基础上,只有您才能更新它。清单文件非常重要,因为
.config
和一个.manifest
文件。我想知道这些是什么,以及它们对应用程序的实际运行是否重要。是的,这很重要,因为如果您正在启动应用程序的新版本并更新现有设置,此功能将仅帮助识别系统上安装的应用程序的当前版本,在此基础上,只有您才能对其进行更新。是的,这很重要,因为如果您正在启动应用程序的新版本并更新现有设置,此功能将仅帮助识别系统上安装的应用程序的当前版本,在此基础上,只有您才能更新它。清单文件非常重要,因为它存储了有关应用程序的重要元数据。但是,请注意,清单并不是绝对必需的,您只需要了解删除清单的潜在副作用。发件人:
每个程序集,无论是静态的还是动态的,都包含一组数据,这些数据描述了程序集中的元素如何相互关联。程序集清单包含此程序集元数据。程序集清单包含指定程序集的版本要求和安全标识所需的所有元数据,以及定义程序集范围和解析对资源和类的引用所需的所有元数据。程序集清单可以存储在带有Microsoft中间语言(MSIL)代码的PE文件(一个.exe或.dll)中,也可以存储在仅包含程序集清单信息的独立PE文件中
也可以将清单嵌入程序集本身,这样您就只有一个文件要分发
当使用Visual Studio的某些功能时,
.config
文件可以存储重要信息。它们通常用于在解决方案中存储.settings
文件中指定的设置。但是,如果您不知道这些文件是什么,则不太可能正在使用这些功能。清单文件非常重要,因为它存储有关应用程序的重要元数据。但是,请注意,清单并不是绝对必需的,您只需要了解删除清单的潜在副作用。发件人:
每个程序集,无论是静态的还是动态的,都包含一组数据,这些数据描述了程序集中的元素如何相互关联。程序集清单包含此程序集元数据。程序集清单包含指定程序集的版本要求和安全标识所需的所有元数据,以及定义程序集范围和解析对资源和类的引用所需的所有元数据。程序集清单可以存储在带有Microsoft中间语言(MSIL)代码的PE文件(一个.exe或.dll)中,也可以存储在仅包含程序集清单信息的独立PE文件中
也可以将清单嵌入程序集本身,这样您就只有一个文件要分发
当使用Visual Studio的某些功能时,.config
文件可以存储重要信息。它们通常用于在解决方案中存储.settings
文件中指定的设置。但是,如果您不知道这些文件是什么,则不太可能正在使用这些功能。请阅读以下内容:
什么是清单文件:
清单是一个XML文档,可以是外部XML文件,也可以是嵌入在应用程序或程序集中的资源。独立应用程序的清单用于管理应用程序在运行时应绑定到的共享并行程序集的名称和版本。并行程序集的清单指定其对名称、版本、资源和其他程序集的依赖关系
如何控制它:
默认情况下,新项目的项目属性设置为生成
清单文件。但可以禁用清单的生成
对于使用项目的“生成清单”属性的项目。当这
属性设置为“是”,则生成此项目的清单。否则
链接器在解析的依赖项时忽略程序集信息
应用程序代码,不生成清单
及
VisualStudio中的构建系统允许将清单嵌入到最终版本中
二进制应用程序文件,或作为外部文件生成。这种行为是错误的
由“项目属性”对话框中的“嵌入清单”选项控制。
要设置此属性,请打开清单工具节点,然后选择输入和输出。
如果清单未嵌入,它将作为外部文件生成并保存
在与最终二进制文件相同的目录中。如果清单被嵌入,
VisualStudio嵌入最终清单
取自
另外,你可以从这里控制它<代码>项目属性>>应用程序选项卡
阅读以下内容:
什么是清单文件:
清单是一个XML文档,可以是外部XML文件,也可以是嵌入在应用程序或程序集中的资源。独立应用程序的清单用于管理应用程序在运行时应绑定到的共享并行程序集的名称和版本。并行程序集的清单指定其对名称、版本、资源和其他程序集的依赖关系
如何控制它:
默认情况下,新项目的项目属性设置为生成
清单文件。但可以禁用清单的生成
对于使用项目的“生成清单”属性的项目。当这
属性设置为“是”,则生成此项目的清单。否则
链接器在以下情况下忽略程序集信息: