【问题标题】:Visual Basic .Net software behaves differently from machine to machineVisual Basic .Net 软件的行为因机器而异
【发布时间】:2010-12-21 13:53:54
【问题描述】:

我为办公室继承了许多定制软件,并且在管理它时,我发现它在不同机器上的性能不同。

我的意思是,某些控件在某些机器上以奇怪的方式绘制,但在另一些机器上却很好,或者只是工作方式不同,例如在某些机器上单击某物将其选中,而在下一台机器上单击相同的东西使其可编辑。

p>

当然,我怀疑软件加载的无数 DLL。

为什么会这样?有什么办法可以避免吗?

编辑:

  • 所有机器都是 Windows XP SP3, Internet Explorer 8
  • 对我来说,“以奇怪的方式绘制”是指在机器中绘制的控件比其他控件大 300 或 400 像素(GUI 的重叠部分)。

【问题讨论】:

  • 信息不足。您首先需要找出为什么会出现这些差异。
  • 这是问题的一部分,我正在对其进行编辑以澄清。
  • 您仍然没有提供足够的信息来给您一个可靠的答案。我们甚至不知道您正在使用什么控件......自定义或其他。我们不知道您的代码是做什么的。我们不知道“以奇怪的方式绘画”对您意味着什么。填补差距。逐个问题分解,然后重试。
  • 您甚至没有指定所有不同的机器是否运行相同或不同版本的 Windows。例如,WinXP 绘制某些控件的方式与 Vista 或 Win7 肯定存在差异。也 +1 到下面的 COM reg 答案。根据在不同机器上注册的各种 COM ActiveX dll 的版本(以及您的应用程序使用的 DLL),您可以轻松看到不同的结果。
  • 对不起,我的错:这是由第三方库和软件所需文件的荒谬安装引起的。

标签: vb.net dll


【解决方案1】:

我怀疑某些 COM 组件是问题所在(COMCTL32 是我的第一个猜测),而这并不是真正的 VB.NET 问题。 .NET 世界中的版本控制已使典型的 DLL 地狱问题不应该像以前那样发生,但周围总是有一些遗迹......

如果没有更多信息,我怀疑您的问题是否会有最终答案。您可能希望通过比较 Windows、Service Pack 和 IE 版本来开始故障排除。

【讨论】:

  • 进程资源管理器也将帮助您识别正在加载的 DLL。
【解决方案2】:

第 1 步。确保所有机器都应用了完全相同的更新。这超出了服务包。在每台机器上运行 Windows 更新并尽可能应用一切。我怀疑你的补丁级别完全不同。

第 2 步。确保所有机器都设置了本机屏幕分辨率。这对于平板来说比古老的 CRT 显示器更重要。

第 3 步。查看视频驱动程序。确保您拥有这些机器的最新版本。

第 4 步。确保您的应用程序的完全相同版本确实部署在所有机器上。如果存在外部依赖项,请验证它们是否相同。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2010-11-09
    • 2016-03-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-01-29
    • 1970-01-01
    • 2018-03-23
    相关资源
    最近更新 更多