我有32位设计的键盘/打字软件,并希望在64位Windows 7上运行它。每当我尝试运行该软件时,我正在获得运行时错误52 - 错误的文件名或编号。
是否有允许我按原样运行32位软件的下载或进程?
我有32位设计的键盘/打字软件,并希望在64位Windows 7上运行它。每当我尝试运行该软件时,我正在获得运行时错误52 - 错误的文件名或编号。
是否有允许我按原样运行32位软件的下载或进程?
Answers:
借助任何软件,您无法将32位软件转换为64位。但是你也不需要转换它,因为64位架构支持所有32位软件。
考虑32位和64位数据模型之间的差异32位和64位编译环境之间的最大区别是数据类型模型的变化。32位应用程序的C数据类型模型是ILP32模型,因为int和long类型以及指针是32位数据类型而命名。64位应用程序的数据类型模型是LP64数据模型,因为long和指针类型增长到64位而得名。其余的C整数类型和浮点类型在两种数据类型模型中都是相同的。
将32位应用程序转换为64位应用程序:问题
将32位应用程序转换为64位应用程序时出现问题的主要原因是int类型的大小相对于long和指针类型的变化。将32位程序转换为64位程序时,只有长类型和指针类型的大小从32位变为64位; int类型的整数大小保持在32位。在将指针或长类型分配给int类型时,这会导致数据截断的麻烦。此外,使用短于int的大小的类型将表达式分配给unsigned long或指针时,可能会出现符号扩展问题。
在这里进一步阅读是源。来源:http://www.oracle.com/technetwork/server-storage/solaris/ilp32tolp64issues-137107.html
本文将介绍如何使用以下代码进行转换
:https://www.quora.com /如何-DO-I-转换-A-32位的软件-到-一个64位
根据我的理解,您必须通过更改变量类型来根据上述过程修改源代码。另外,我用谷歌搜索了你可能与转换无关的错误。