10

在过去浏览我的一些应用程序时,我注意到编译到程序集中的是诸如我的项目在哪里、我在 Windows 中的用户名(恰好是我的全名,而不是我的在线用户名)等信息,老实说,我'不知道还有什么。

现在我知道这是在 Debug 下编译的主要原因,因为这是源文件或 pdb 文件的文件位置(不记得是哪个)。

问题是,还有哪些其他“个人可识别”信息最终会出现在已编译的程序集中,并且可以采取哪些措施来防止这些信息出现在程序集中?

我假设如果我只是将项目设置为发布模式以禁用编译程序集中的调试符号,这将实现我的目标,但是我仍然很好奇我是否还有其他遗漏。

我通常对知道我做了什么的人没有意见,但是我的全名在我不知情的情况下出现在我的分布式程序集中确实让我感到厌烦。

4

3 回答 3

1

所有这些信息都在 Visual Studio 中的Project/Properties/Application/Assembly Information. 其中大部分是可选的。只需在程序集中清除您不想要的内容。

于 2010-01-11T23:20:28.507 回答
1

根据您的 VS 设置,您可能在程序集信息 ( AssemblyInfo.cs) 中有识别信息。如果您通过 ClickOnce 发布,那么您还可以从“发布”选项卡中获取发布信息。这两个标签都是完全可配置的。

您也可能拥有包含识别信息的第 3 方产品的许可证文件,该文件必须与应用程序一起分发,作为外部文件或嵌入资源;如果是这样,除了向供应商提出之外,您可能无能为力。

除了这些项目,我想不出个人信息会被编译成程序集的任何其他原因。调试信息仅包含在 PDB 文件中 - 没有它,您将无法获得符号或行号。这适用于调试和发布模式。

于 2010-01-11T23:24:56.550 回答
0

您还应该小心处理 XML 文档文件,因为它们可能包含“敏感”信息(作为程序员的玩笑,或更糟)。

于 2010-01-11T23:19:22.790 回答