是否可以强制使用“Any”架构标记编译的C#应用 程序在64位窗口上作为32位应用程序运行?

Modified on: Mon, 26 Aug 2019 04:20:02 +0800

我有一个.Net应用程序,使用为架构类型设置的“Any”标志进行编译。

我想知道是否可以强制应用程序在(任何)64位版本的Windows上作为32位应用程序运行,而无需将应用程序重新编译为32位可执行文件。

最佳答案

是的,如果您将项目属性设置为显式使用32位(我认为是x86),它将始终以该模式运行。我们在使用SQLite ADO.Net提供程序时遇到了这个问题(它只在寻找32位版本,在x64系统上运行时无法加载)。

您可以使用corflags在可执行文件上设置32位(ha ha)标志。 这是一个示例。简而言之,你将运行:

corflags /32BIT+ assembly.exe-or.dll

您可以使用Visual Studio (installed in C:\Program Files\Microsoft SDK\6.0a or 7.0\bin)中找到随SDK一起安装的corflags.exe,或者您可以从Microsoft Windows SDK for Windows 7和.NET Framework 3.5 SP1

作者:,Joshua

相关问答

添加新评论