打开网络目录时的高流量,包括使用Delphi XE和Windows资源管理器制作的可执行文件

问题描述 投票:4回答:1

我已经开始在家庭办公室工作,并将Windows 10 PC通过VPN连接到公司的网络驱动器。我注意到VPN上有很多流量,并试图找出原因。我注意到,当我在网络驱动器上使用Windows资源管理器打开目录时,数据传输会增加数百MB。所以我开始了一些测试。我禁用了所有的病毒扫描程序,依此类推,这些病毒可能会访问网络驱动器,并重复复制同一文件,直到我的目录中有1GB为止。我只用PDF制作了一个目录,一个用另一家公司的可执行文件作了目录,而用我自己制作的可执行文件作了目录。一个标准的Delphi XE应用程序。我发现的内容:

  1. 如果目录仅包含PDF。只有很少的流量
  2. [如果存在包含来自另一家公司的可执行文件的目录,例如“ Affinity”图形编辑器。流量也很少]
  3. 如果我使用Delphi XE制作了一个可执行文件。流量超过1GB。 Windows资源管理器显示文件,但不显示图标。传输完所有数据后,图标将一一显示。

我试图找出两个可执行文件之间为何存在差异,或者究竟发生了什么,但是找不到原因以及如何解决这一问题。

windows delphi networking explorer
1个回答
3
投票

虽然我对此不确定,但我猜想原因是Delphi可执行文件的资源部分大小。

[您会看到大多数其他编译器使用很小的资源部分创建可执行文件,这些资源仅包含可执行文件图标,版本信息和包含的清单文件。

另一方面,Delphi在该资源部分中存储了更多信息,例如:

  • 多个默认鼠标光标
  • 存储几个可以在各个按钮上显示的标准图标的几个位图
  • 可执行图标
  • 可以在各种错误消息上显示的几个默认字符串
  • RCData包含有关所有包含的包和创建与设计时所设计的布局相同的表单所需的所有DFM的信息。
  • 版本信息
  • 内置清单
  • 当然还有您添加到项目中的所有其他资源

由于所有这些,Delphi文件的资源部分的大小很容易超过数MB。您可以使用各种PE资源查看器或资源编辑器之一来更好地了解可执行文件的资源部分中到底存储了什么。我最常使用PE Explorer

并且由于Windows必须检索整个资源部分才能提取可执行图标,所以在打开包含许多用Delphi生成的可执行文件的网络文件夹时,这会导致大量网络通信。

© www.soinside.com 2019 - 2024. All rights reserved.