简体   繁体   English

Winform 应用程序在 WINDOWS 7 -64bits 上崩溃

[英]Winform application crashs on WINDOWS 7 -64bits

I have a huge problem on one of my winform application.我的一个 winform 应用程序有一个大问题。 Someone who use my application works on windows 7 64bits and apparently it directly crashes when the application is launching.使用我的应用程序的人在 windows 7 64 位上工作,显然它在应用程序启动时直接崩溃。

My application works correctly on:我的应用程序可以正常工作:

-Windows XP -Windows XP

-Windows Vista -Windows Vista

-Windows 7 (32bits). -Windows 7(32 位)。

I developped the application on Visual C# express 2005 (.NET 2.0).我在 Visual C# express 2005 (.NET 2.0) 上开发了应用程序。

I am wondering if there is anything I can do to recompile my application to make it work on windows 7 64bits.我想知道是否有什么办法可以重新编译我的应用程序以使其在 windows 7 64 位上工作。

I am sorry, I have no access to the computer of the person (so I can't check, exception or anything like that).对不起,我无法访问此人的计算机(所以我无法检查、异常或类似的东西)。 I am pretty sure that this issue is known that's why I'm asking you right now.我很确定这个问题是已知的,这就是我现在问你的原因。

Does anyone have an idea?有人有想法吗?

Thank you by advance for your Help提前感谢您的帮助

Regards,问候,

Joze乔泽

In project properties setting window , select tab Build and change Platform target to X86 .在项目属性设置 window , select 选项卡构建和更改平台目标X86 Republish..重新发布..

EDIT: to the down-voter By doing this Windows will know your program is designed for X86 use and will install it accordingly.编辑:给反对者通过这样做 Windows 将知道您的程序是为 X86 使用而设计的,并将相应地安装它。 (I've done this with Clickonce, and it works..) (我已经用 Clickonce 完成了这个,它有效..)

Likly you use some interop x86 DLL or COM object.可能你使用一些互操作 x86 DLL 或 COM ZA8CFDE6331BD59EB2AC96F8911C4B6 Try setting for your executable Target Platform x86 (not Any CPU as it is by default).尝试为您的可执行目标平台 x86 设置(默认情况下不是任何 CPU)。

Do you use any unmanaged (com) components in your application?您是否在应用程序中使用任何非托管 (com) 组件?

If so, most likely you're including the 32bit version.如果是这样,您很可能包含 32 位版本。 If that's the case, you will have to compile 2 different versions of your program, one including the 32bit components, and the other including the 64bit components.如果是这种情况,您将不得不编译 2 个不同版本的程序,一个包含 32 位组件,另一个包含 64 位组件。

If that's not the case, it means you're using some platform specific code somewhere.如果不是这种情况,则意味着您在某处使用了某些特定于平台的代码。 More details about your application could help clarify the problem.有关您的应用程序的更多详细信息可以帮助澄清问题。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM