我们有一个旧的Windows桌面客户端应用程序,它调用Load Balancer(在Windows Server 2003中运行),该请求将请求委派给连接到SQL Server(Windows 2008 R2数据库服务器)的Application Server(Windows Server 2003)。从Windows XP到Windows 8.1,此桌面应用程序运行良好;但是,在Windows 10上,它无法预料地崩溃,并在最终用户的Windows 10计算机上显示以下错误消息:
Client Decompression System ERROR! ...Header sum error
in Function Name... GetServerDataToBuffer
Calling Process... LSD_Decompress (or Base64Encode)
Add'l Data: C:\Users\<username>\AppData\Local\Temp\<filename>.tmp
这是在客户端计算机上的事件查看器上记录的内容:
Faulting application name: <programname>.exe, version: 0.0.0.0, time stamp: 0x5011b17b
Faulting module name: ntdll.dll, version: 10.0.10240.16603, time stamp: 0x565531ee
Exception code: 0xc0000005
Fault offset: 0x0003dd2a
Faulting process id: 0x88c
Faulting application start time: 0x01d13c3c46d18779
Faulting application path: C:\xxxxx\<program-name>.exe
Faulting module path: C:\WINDOWS\SYSTEM32\ntdll.dll
Report Id: fdeb33bd-e546-4711-8c4e-e1d615bc3c14
此桌面Windows应用程序继续在Windows XP计算机上维护,因为它的IDE无法在早期版本的Windows上运行。它使用Clarion企业版5.5H版(由Softvelocity提供)并使用以下Clarion扩展:ClarioNet应用程序性能编写器V1.4, ClarioNET 用于Clarion 5.5 版本1.4 (来自Jan -11-2004),xmlFUSE,wPDFControl和vuMail 3.20。
根据错误消息,我们认为此问题可能与此系统中编译的两个文件(来自ClarioNET)有关: lscomp.dll 和 lsdecomp.lib ,在Windows 10上作出反应,遗憾的是,我们不能在这里寻求支持,因为这个Clarion版本在很多年前达到了它的终结。
在Windows 10 PC中进行设置时,将其配置为以管理员权限运行(以管理员身份运行此程序),在“Windows 7”,“Windows Vista”甚至“Windows XP”的兼容模式下运行并在数据执行保护(DEP)列表中添加为例外。 “AppData \ Local \ Temp \”文件夹被赋予“Everyone”用户“完全控制”权限。 Windows在Windows更新上是最新的,并且已禁用防病毒和防火墙。我们运行应用程序在启动机器的Windows中执行干净启动,只需要最少的驱动程序和启动程序。这个问题仍然存在。 :(
当我们迁移到一个完全不同的基于云的系统时,我们仍需要至少在接下来的16个月内继续使用这个旧的遗留程序。已经提出使用Windows 7设置虚拟框但已被拒绝。
问题:1)我可以在Windows 10上设置哪些其他配置以使此程序运行良好? 2)是否有任何第三方应用程序可以帮助此应用程序在Windows 10上顺利运行? 3)任何其他提示/提示? :'(
答案 0 :(得分:0)
虽然Clarion-non -peclicific,但我在安装Windows更新后出现了错误(快速谷歌显示它可能是KB2882822)。这可能是更一般的操作系统错误,而不是Clarion特定的错误。
答案 1 :(得分:0)
如果这涉及Linder压缩dll,请注意它不是线程安全的。如果这是您正在使用的基础压缩技术,请使用关键部分对其进行环绕调用,看看是否有帮助。
答案 2 :(得分:0)
......也许在这样一个过时的产品上别无他法。我们理解。