I have keyboard/typing software designed in 32-bit, and want to run it on 64-bit Windows 7. I am currently getting Runtime Error 52 - Bad File Name or Number whenever I try to run the software.

Is there a download or process that allows me to run the 32-bit software as-is?

closed as unclear what you're asking by Ƭᴇcʜιᴇ007, DavidPostill, Mokubai Dec 18 '16 at 16:39

Please clarify your specific problem or add additional details to highlight exactly what you need. As it's currently written, it’s hard to tell exactly what you're asking. See the How to Ask page for help clarifying this question. If this question can be reworded to fit the rules in the help center, please edit the question.

  • 2
    What's the software and what's your OS version ? – Elie Dec 18 '16 at 15:12
  • 1
    XY Problem – Ƭᴇcʜιᴇ007 Dec 18 '16 at 15:51
  • This is not a problem that can be solved without you telling us what software you are having a problem with and what that actual problem is. 32-bit software will run perfectly well on Windows 64-bit so either your software is actually 16-bit (which is unsupported on 64-bit) or there is something else that is the problem. – Mokubai Dec 18 '16 at 16:41
  • @Mokubai maybe ur true it will work or not but in my condition its not working and giving the error Run-time error '52' Bad file name or number if it would have work then y i have posted. – atek Dec 19 '16 at 7:05
  • Hence the first line of my earlier comment and the on hold reason. You need to provide more details before anyone can help you further. – Mokubai Dec 19 '16 at 7:07

You cannot convert your 32 bit softwares to 64 bit with help of any software. But you also dont need to convert it because 64 bit architecture supports all 32 bit softwares.

Consider the Differences Between the 32-bit and 64-bit Data Models The biggest difference between the 32-bit and the 64-bit compilation environments is the change in data-type models. The C data-type model for 32-bit applications is the ILP32 model, so named because the int and long types, and pointers, are 32-bit data types. The data-type model for 64-bit applications is the LP64 data model, so named because long and pointer types grow to 64 bits. The remaining C integer types and the floating-point types are the same in both data-type models.

Converting 32-bit Applications Into 64-bit Applications: The Problems

The principal cause of problems when converting 32-bit applications to 64-bit applications is the change in size of the int type with respect to the long and pointer types. When converting 32-bit programs to 64-bit programs, only long types and pointer types change in size from 32 bits to 64 bits; integers of type int stay at 32 bits in size. This can cause trouble with data truncation when assigning pointer or long types to int types. Also, problems with sign extension can occur when assigning expressions using types shorter than the size of an int to an unsigned long or a pointer.

To read further here is the source. Source : http://www.oracle.com/technetwork/server-storage/solaris/ilp32tolp64issues-137107.html
This article tells you how to do the conversion with changes in code
Taken from: https://www.quora.com/How-do-I-convert-a-32-bit-software-into-a-64-bit

From my understanding, you have to modify the source code according to the above procedures by changing the variable types. Plus I googled the error you're having may be unrelated to conversion.

Not the answer you're looking for? Browse other questions tagged or ask your own question.