Click here to Skip to main content
15,916,463 members
Please Sign up or sign in to vote.
1.25/5 (4 votes)
See more:
Not sure why an application built in 32bit OS not working in 64 bit is for extended memory. Extra registers to provide more memory... Not quite sure about compatibility stuff
Or may be file setting location is different due which issue has occured
Posted
Comments
Richard MacCutchan 17-Jan-12 5:24am    
32 bit applications should work with no problem on 64 bit systems. However, your question is not very clear, please provide some more detail as to exactly what is happening.
johannesnestler 17-Jan-12 7:43am    
Please give some detail. What changes is the pointer-size (a variable for a 64bit memory space has to be ... 64bit wide!) - so if it's a native programm there may be a difference. normally the os will run your 32bit code on 64bit through virtualization (wow64)
luisnike19 17-Jan-12 10:03am    
how did you compile it?

1 solution

Just a note: extra registers will not provide you any more memory. You probably have no idea about registers. Where did you get this term "extended memory"? There is no such stuff on modern system, but it was their long time ago.

You need to keep in mind that 1) you can never mix executables compiled for different instruction-set architectures; 2) for all instruction-set architectures 32-bit executable modules are compatible, they are run on 64-bit Windows systems they run on WoW64 subsystem, see http://en.wikipedia.org/wiki/WoW64[^].

That said, the problem could be related to indirect dependencies in your 32-bit executable modules. They can depends on some system DLL which is 32-bit in on system and 64-bit in another system. If the application tries to explicitly load it assuming it is 32-bit, but founds the module of 64-bits, it can cause a disaster. Something like, that, I don't know the exact reason as you did not supply more information.

You can do your investigation by your self. Main tool here would be Microsoft Dependency Walker, please see http://www.dependencywalker.com/[^].

—SA
 
Share this answer
 
Comments
Shabana Parveen 17-Jan-12 22:24pm    
Thanks for ur comment, I do agree i do not recall much about register as I never have to deal with it directly....Only basic idea for my usage that it is a has storage capacity may be a combinations of gates and etc... But still it didn't answer my question as to why 32 bit system dll won't work in 64 bit. Just a random guess that buses and all are bit differently configured. Thanks to all who have answered my question. I right now do not require this answer now but really thanks to all for providing me their help.
Sergey Alexandrovich Kryukov 23-Jan-12 22:59pm    
Unfortunately, it is not possible to answer precisely based on your information. From my answer you should understand what basically is involved and why some further investigation is needed, that's all for now.

Good luck,
--SA
Shabana Parveen 23-Jan-12 23:36pm    
it was a general question actually, i just someone encountering this issue and thought of getting some baseline from this awesome site for developers.

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900