.net 4.7.1 C#OCX事件处理程序适用于win10x 86/64,不适用于win7 / 8 x86 / 64

时间:2018-02-09 19:51:11

标签: .net windows compatibility eventhandler ocx

Backstory - 我们公司有一个C#Click Once应用程序,它使用.ocx文件注册事件处理程序。事件处理程序的函数是任意的,但在这种情况下,事件处理程序正在对返回的文件路径执行文件操作。此OCX控件由第三方供应商提供。我没有编辑第三方OCX控件的来源或能力。

问题 - 我正在注册的事件处理程序永远不会在Windows 7/8 x86 / 64上触发。 Windows 10 x86 / 64工作正常。

为了使事情变得更有趣,我在安装Visual Studio 2017后,在Windows 7/8 x86 / 64上触发了事件处理程序。我们的应用程序版本相同,在安装VS2017之前无法正常工作。

我正在使用Visual Studio 2017,目标是.net 4.7.1,并在64位Windows 10安装上编译x86。

我必须假设Visual Studio 2017安装程序正在Windows 7/8上安装一些允许成功调用事件处理程序的东西,但我无法弄清楚它是什么。

我查看了事件日志,没有错误。应该在调用事件处理程序时,或者在注册事件处理程序时,不会在应用程序中引发异常。

问题 -

  1. 有没有人经历过类似的事情?
  2. 你能解决这个问题吗?
  3. 您是如何解决此问题的?
  4. 我整个星期都在努力解决这个问题,而且我已经用尽了所有我知道的选项。我非常感谢社区对这个问题的帮助。

    谢谢。

1 个答案:

答案 0 :(得分:0)

Visual Studio 2017在Windows 7上安装.NET Framework 4.6,如果那个框架版本不存在的话。如果你的应用程序在Windows 10上工作正常但在Windows 7上没有显示你的应用程序可能需要最新的.NET框架版本。