C#写的应用程序,在本机正常,32位,但是在一个64位的电脑上没有办法运行,后来我在另一个64位上运行也是好的;我已知道是哪个dll有问题了,((System.ComponentModel.ISupportInitialize)(this.A)).EndInit();时出的错。A为A.dll,但是为什么其他2台是可以运行而只有那个不可以。还有在事件查看器windows日志中却看到是KERNELBASE.dll报错 :错误应用程序名称:A.exe,版本: 1.1.0.4,时间戳: 0x5666781c
错误模块名称: KERNELBASE.dll,版本: 6.1.7601.19018,时间戳: 0x5609fed4
异常代码: 0xe0434352
错误偏移量: 0x0000c42但是这台电脑上另一个也调用KERNELBASE.dll的应用程序又是能正常运行的,什么设置用户管理员权限啊什么助手恢复是没有什么用的,请问怎么解决?
1.虽然从原理上讲,64位系统可以兼容32位的应用程序,即32位应用程序可以在64位系统运行,但是实际上由于各种原因,32位应用程序很难做到在64位系统上稳定运行,特别是一些较大和复杂的程序;
2.建议楼主还是重新编译一个64位的版本。