Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. General Programming
  3. C#
  4. How to port a 32 bit application on 64 bit OS

How to port a 32 bit application on 64 bit OS

Scheduled Pinned Locked Moved C#
c++helpcsharpcomwindows-admin
4 Posts 3 Posters 0 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • A Offline
    A Offline
    Aseem Sharma
    wrote on last edited by
    #1

    Hi friends, I developed a 32 bit application around 2 years back. It could get installed (setup created using Inno Setup) on XP, Vista and Windows 7 32 bit. And it runs without any problem. But now people have started shifting to 64 bit OSes. One of my friend tried to install my application on 64 bit Windows 7, but he could not install. Then he just copied binaries of my application on C drive (C:\MyApp directory). But then again, it didn't run. I don't have any 64 bit machine and so could not try to run my application there. Please let me know, do I need to make changes either in installer or in my code so that my application start working on 64 bit OS? Here is my application detail: 1 Currently my application is installed in C:\Windows\System32 directory. 2 My application consists of - one C++ dll (32-bit), - C++ COM based ATL Service (32-bit) (it is registered with -RegServer and -Service command line parameters), - 3 .net dlls/assemblies and - one .net exe (the main exe). While creating installer, do I need to make changes so that application could run on WOW platform? (like copying all above binaries in system32 or system64 directory)? My application plays with all registry hives (HKEY_LOCAL_MACHINE, HKEY_CURRENT_USER, HKEY_CLASSES_ROOT and HKEY_UUSERS). Do I need some changes for access/changes to all these registry hives? Please help me so that with minimum changes may application become able to run on all 64 bit OSes. Thanks in Advance

    D J 2 Replies Last reply
    0
    • A Aseem Sharma

      Hi friends, I developed a 32 bit application around 2 years back. It could get installed (setup created using Inno Setup) on XP, Vista and Windows 7 32 bit. And it runs without any problem. But now people have started shifting to 64 bit OSes. One of my friend tried to install my application on 64 bit Windows 7, but he could not install. Then he just copied binaries of my application on C drive (C:\MyApp directory). But then again, it didn't run. I don't have any 64 bit machine and so could not try to run my application there. Please let me know, do I need to make changes either in installer or in my code so that my application start working on 64 bit OS? Here is my application detail: 1 Currently my application is installed in C:\Windows\System32 directory. 2 My application consists of - one C++ dll (32-bit), - C++ COM based ATL Service (32-bit) (it is registered with -RegServer and -Service command line parameters), - 3 .net dlls/assemblies and - one .net exe (the main exe). While creating installer, do I need to make changes so that application could run on WOW platform? (like copying all above binaries in system32 or system64 directory)? My application plays with all registry hives (HKEY_LOCAL_MACHINE, HKEY_CURRENT_USER, HKEY_CLASSES_ROOT and HKEY_UUSERS). Do I need some changes for access/changes to all these registry hives? Please help me so that with minimum changes may application become able to run on all 64 bit OSes. Thanks in Advance

      D Offline
      D Offline
      Dan Mos
      wrote on last edited by
      #2

      I'm not sure if it will help but I had some problems with some .net apps on w64. A common example is using Oledb to query an excel file, using the JET engine. That will not work on 64 bit versions of windows, unless the app is specifcally compiled to target x86. Try specifically compiling your app to target x86. As I'm sure you know, by default it compiles to all platforms(ms ones) and it will resolve at runtime if it's x86 or x64. Again I'm not sure if it will help but it doesn't hurt to try. That if you don't know that the C++ dlls and COM service is the cause. if you know that then my comment is just a waste of space. Hope the hammsters won't revolt against me. After all it's holidays times :)

      All the best, Dan

      1 Reply Last reply
      0
      • A Aseem Sharma

        Hi friends, I developed a 32 bit application around 2 years back. It could get installed (setup created using Inno Setup) on XP, Vista and Windows 7 32 bit. And it runs without any problem. But now people have started shifting to 64 bit OSes. One of my friend tried to install my application on 64 bit Windows 7, but he could not install. Then he just copied binaries of my application on C drive (C:\MyApp directory). But then again, it didn't run. I don't have any 64 bit machine and so could not try to run my application there. Please let me know, do I need to make changes either in installer or in my code so that my application start working on 64 bit OS? Here is my application detail: 1 Currently my application is installed in C:\Windows\System32 directory. 2 My application consists of - one C++ dll (32-bit), - C++ COM based ATL Service (32-bit) (it is registered with -RegServer and -Service command line parameters), - 3 .net dlls/assemblies and - one .net exe (the main exe). While creating installer, do I need to make changes so that application could run on WOW platform? (like copying all above binaries in system32 or system64 directory)? My application plays with all registry hives (HKEY_LOCAL_MACHINE, HKEY_CURRENT_USER, HKEY_CLASSES_ROOT and HKEY_UUSERS). Do I need some changes for access/changes to all these registry hives? Please help me so that with minimum changes may application become able to run on all 64 bit OSes. Thanks in Advance

        J Offline
        J Offline
        jschell
        wrote on last edited by
        #3

        Aseem Sharma wrote:

        Please help me so that with minimum changes

        I would think that the minimum change that would be needed is that you need to get a 64 bit platform to test on. There is nothing that you have described that could be considered 'easy' and much that could have a problem on a 64 bit system and even more so with Windows 7.

        A 1 Reply Last reply
        0
        • J jschell

          Aseem Sharma wrote:

          Please help me so that with minimum changes

          I would think that the minimum change that would be needed is that you need to get a 64 bit platform to test on. There is nothing that you have described that could be considered 'easy' and much that could have a problem on a 64 bit system and even more so with Windows 7.

          A Offline
          A Offline
          Aseem Sharma
          wrote on last edited by
          #4

          Thanks.

          1 Reply Last reply
          0
          Reply
          • Reply as topic
          Log in to reply
          • Oldest to Newest
          • Newest to Oldest
          • Most Votes


          • Login

          • Don't have an account? Register

          • Login or register to search.
          • First post
            Last post
          0
          • Categories
          • Recent
          • Tags
          • Popular
          • World
          • Users
          • Groups