【发布时间】:2011-02-07 11:40:36
【问题描述】:
我注意到在 Windows 7 Professional 64 位下运行的 Windows 窗体应用程序无法正确显示帮助工具提示。
具体来说,这是当您在控件上使用 HelpProvider 和 SetHelpString 时。使用“?”时标题栏帮助按钮并单击具有分配的 HelpString 的控件,工具提示看起来像是在 Windows 3.1 之外(没有透明阴影),更重要的是,它显示在一个非常错误的位置。但是,该位置似乎不是随机的,而是与鼠标单击位置和生成工具提示的窗口有关。这就像偏移量非常错误。
在 Windows XP Pro 下运行的完全相同的应用程序可以很好地显示这些帮助工具提示。我没有要检查的 Vista 机器,但根据 this 的说法,问题确实出现在 Vista 上,并且似乎与 64 位相关。
不幸的是,在谷歌上搜索时几乎找不到任何内容。几周前我记得遇到过一个关于它的 Microsoft Connect 问题,当然几乎没有任何活动,但我无法再次找到它以链接到。
是否有人对问题有任何见解,或者更好的是解决方法?
【问题讨论】:
-
显然,只有在运行 64 位 .NET CLR 时才会出现此问题。我可以确认当我将平台更改为 x86 时,即使在 64 位窗口(通过 WOW32 运行)上也能正常工作。不过,这并不是一种解决方法,因为它迫使我们同时构建 32 位和 64 位特定版本并处理
BadImageFormatExceptions和所有这些。