在过去浏览我的一些应用程序时,我注意到编译到程序集中的信息包括我的项目所在的位置,我的用户名(恰好是我的全名,而不是我的在线句柄),在Windows中,说实话,我不确定还有什么。
现在我知道这个的主要原因是在Debug下编译时,因为这是源文件或pdb文件的文件位置(不记得哪个)。
问题是,其他“个人身份识别”信息最终会出现在已编译的程序集中,以及可以采取哪些措施来防止这些信息在程序集中结束?
我假设如果我只是将项目设置为Release模式以禁用已编译程序集中的调试符号,这将实现我的目标,但是如果我还缺少任何其他内容,我仍然很好奇。
我一般都不知道自己做了什么事的人,但是在我不知情的情况下,我的全名在我的分布式集会中确实让我感到烦恼。
答案 0 :(得分:1)
所有这些信息都在Project/Properties/Application/Assembly Information
下的Visual Studio中。大多数是可选的。只是在装配中删除你不想要的东西。
答案 1 :(得分:1)
根据您的VS设置,您可能在装配信息(AssemblyInfo.cs
)中包含识别信息。如果您通过ClickOnce发布,那么您还可以从“发布”选项卡中获取发布信息。这两个标签都是完全可配置的。
您也可能拥有包含识别信息的第三方产品的许可文件,该识别信息必须随应用程序一起分发,作为外部文件或嵌入式资源;如果是这样的话,除了与供应商合作之外,你可能做的事情并不多。
除了这些项目之外,我想不出为什么将个人信息编译成大会的任何其他原因。调试信息仅在PDB文件中 - 没有它,您无法获取符号或行号。这适用于调试和释放模式。
答案 2 :(得分:0)
您还应该关注XML文档文件,因为它们可以保存“敏感”信息(作为程序员的笑话,或更糟)。