当前位置:  开发笔记 > 数据库 > 正文

在x64 vs x86上运行.net程序是否需要考虑?

如何解决《在x64vsx86上运行.net程序是否需要考虑?》经验,为你挑选了3个好方法。

我相信在制作.Net程序时,架构类型(x86 vs x64)会被抽象出来,但还有其他任何可能导致问题的因素吗?



1> Corbin March..:

谨防秘密进行win32调用的第三方COM库或第三方.NET库.这就是我们最头疼的地方.



2> Mitch Wheat..:

从MSDN doco,以及其他考虑因素:

在许多情况下,程序集将在32位或64位CLR上运行相同的程序.程序在64位CLR运行时表现不同的一些原因包括:

包含根据平台更改大小的成员的结构,例如任何指针类型.

包含常量大小的指针算法.

不正确的平台调用或使用Int32处理句柄而不是IntPtr的COM声明.

将IntPtr转换为Int32

此外,默认文件位置.



3> torial..:

本文有很多值得注意的好问题:http: //osnews.com/story/20330/Windows_x64_Watch_List

就个人而言,我的老板有64位Vista计算机,我以32位模式编程.我们遇到了以下问题:

32位应用程序的注册表被隐藏(有点)到Wow6432Node文件夹中.并非您用于在注册表中查找路径的所有应用程序都将位于该节点中(例如,SQL Server不会).

C:\ Windows文件夹中的SysWow64可能导致DLL不在需要的地方(我们遇到此问题与第三方许可组件有关).

有时您需要的文件位于"C:\ Program Files(x86)",而不是"C:\ Program Files".太糟糕了.

推荐阅读
臭小子
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有