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 / C++ / MFC
  4. porting 32 bit dll in 64 bit

porting 32 bit dll in 64 bit

Scheduled Pinned Locked Moved C / C++ / MFC
csharpvisual-studiocomwindows-admintutorial
14 Posts 4 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.
  • S Sarath C

    Can't you debug the code and see what's happening? Following topics can put some light on your issue. Wow64[^] Converting 32-bit Applications Into 64-bit Applications: Things to Consider [^] Porting your program[^] but it poorly documented I think...

    -Sarath. "Great hopes make everything great possible" - Benjamin Franklin

    My blog - Sharing My Thoughts

    S Offline
    S Offline
    subramanyeswari
    wrote on last edited by
    #3

    thanks. I am facing a different problem. when i am registering dll in vista 64 bit as administrator user i am getting the following error call to DllRegisterServer failed with error code 0x80020009 when searching in the google it says that permission problem. What is that exactly? how to resolve? Thanks in advance Regards,

    S 1 Reply Last reply
    0
    • S subramanyeswari

      thanks. I am facing a different problem. when i am registering dll in vista 64 bit as administrator user i am getting the following error call to DllRegisterServer failed with error code 0x80020009 when searching in the google it says that permission problem. What is that exactly? how to resolve? Thanks in advance Regards,

      S Offline
      S Offline
      Sarath C
      wrote on last edited by
      #4

      Can you run the program as administrator?

      -Sarath. "Great hopes make everything great possible" - Benjamin Franklin

      My blog - Sharing My Thoughts

      S 1 Reply Last reply
      0
      • S Sarath C

        Can you run the program as administrator?

        -Sarath. "Great hopes make everything great possible" - Benjamin Franklin

        My blog - Sharing My Thoughts

        S Offline
        S Offline
        subramanyeswari
        wrote on last edited by
        #5

        Hi, I run the program as administrator. Then I tried compiling solution in the vista 64it. It gave “error PRJ0019: A tool returned an error code from "Performing registration"”. When I comment the following code

        STDAPI DllRegisterServer(void)
        {
        AFX_MANAGE_STATE(AfxGetStaticModuleState());
        // registers object, typelib and all interfaces in typelib
        return _Module.RegisterServer(TRUE); //this is what I commented
        return TRUE

        }

        it compiled successfully. This is com dll which is working fine in 32 bit. what should i do now? Regards, Subramanyeswari

        S 1 Reply Last reply
        0
        • S subramanyeswari

          Hi, I run the program as administrator. Then I tried compiling solution in the vista 64it. It gave “error PRJ0019: A tool returned an error code from "Performing registration"”. When I comment the following code

          STDAPI DllRegisterServer(void)
          {
          AFX_MANAGE_STATE(AfxGetStaticModuleState());
          // registers object, typelib and all interfaces in typelib
          return _Module.RegisterServer(TRUE); //this is what I commented
          return TRUE

          }

          it compiled successfully. This is com dll which is working fine in 32 bit. what should i do now? Regards, Subramanyeswari

          S Offline
          S Offline
          Sarath C
          wrote on last edited by
          #6

          This could be some dependency issue. Check the dependecy of the DLLs/components associated with this COM DLL and ensure that it's built using 64 bit environment. Check with Dependency Walker[^]tool ( 64 bit version is available). Also try manually using regsvr

          -Sarath. "Great hopes make everything great possible" - Benjamin Franklin

          My blog - Sharing My Thoughts

          S 1 Reply Last reply
          0
          • S Sarath C

            This could be some dependency issue. Check the dependecy of the DLLs/components associated with this COM DLL and ensure that it's built using 64 bit environment. Check with Dependency Walker[^]tool ( 64 bit version is available). Also try manually using regsvr

            -Sarath. "Great hopes make everything great possible" - Benjamin Franklin

            My blog - Sharing My Thoughts

            S Offline
            S Offline
            subramanyeswari
            wrote on last edited by
            #7

            Hi, Thanks for your suggestion. I ran dependency walker in 2003 64 bit for my dll. it displayed two errors in the following dlls DEVMGR.DLL DWMAPI.DLL. it says "error opening file". Don't we have these dll's along with 64 bit 2003 os? Regards

            S 1 Reply Last reply
            0
            • S subramanyeswari

              Hi, Thanks for your suggestion. I ran dependency walker in 2003 64 bit for my dll. it displayed two errors in the following dlls DEVMGR.DLL DWMAPI.DLL. it says "error opening file". Don't we have these dll's along with 64 bit 2003 os? Regards

              S Offline
              S Offline
              Sarath C
              wrote on last edited by
              #8

              I don't know about DWMAPI.DLL but the other one should be there in the system folder. Do one thing, in the 32 bit system, try to track down, from where these files are getting resolved using depends. Then you can try the same thing in 64-bit environment also

              -Sarath. "Great hopes make everything great possible" - Benjamin Franklin

              My blog - Sharing My Thoughts

              S 2 Replies Last reply
              0
              • S Sarath C

                I don't know about DWMAPI.DLL but the other one should be there in the system folder. Do one thing, in the 32 bit system, try to track down, from where these files are getting resolved using depends. Then you can try the same thing in 64-bit environment also

                -Sarath. "Great hopes make everything great possible" - Benjamin Franklin

                My blog - Sharing My Thoughts

                S Offline
                S Offline
                subramanyeswari
                wrote on last edited by
                #9

                thanks.. i will do that now.

                1 Reply Last reply
                0
                • S Sarath C

                  I don't know about DWMAPI.DLL but the other one should be there in the system folder. Do one thing, in the 32 bit system, try to track down, from where these files are getting resolved using depends. Then you can try the same thing in 64-bit environment also

                  -Sarath. "Great hopes make everything great possible" - Benjamin Franklin

                  My blog - Sharing My Thoughts

                  S Offline
                  S Offline
                  subramanyeswari
                  wrote on last edited by
                  #10

                  Hi Sarath, I created the application by following the below link http://www.codeproject.com/KB/shell/shellextguide1.aspx?fid=519&df=90&mpp=25&noise=3&sort=Position&view=Quick&select=2469014#modifyingmenu[^] but the same is not working in my 64 bit windows 2003 server. How to migrate this application? Regards

                  S 1 Reply Last reply
                  0
                  • S subramanyeswari

                    Hi Sarath, I created the application by following the below link http://www.codeproject.com/KB/shell/shellextguide1.aspx?fid=519&df=90&mpp=25&noise=3&sort=Position&view=Quick&select=2469014#modifyingmenu[^] but the same is not working in my 64 bit windows 2003 server. How to migrate this application? Regards

                    S Offline
                    S Offline
                    Sarath C
                    wrote on last edited by
                    #11

                    I can't figure out what's really happening there. The IContextMenu inteface should work well with your application. Have properly set set _WIN32_WINNT and WINVER macros? According to your target OS? Using the Windows Headers[^]

                    -Sarath. "Great hopes make everything great possible" - Benjamin Franklin

                    My blog - Sharing My Thoughts

                    S 1 Reply Last reply
                    0
                    • S Sarath C

                      I can't figure out what's really happening there. The IContextMenu inteface should work well with your application. Have properly set set _WIN32_WINNT and WINVER macros? According to your target OS? Using the Windows Headers[^]

                      -Sarath. "Great hopes make everything great possible" - Benjamin Franklin

                      My blog - Sharing My Thoughts

                      S Offline
                      S Offline
                      subramanyeswari
                      wrote on last edited by
                      #12

                      is this the following code that i have to make in stdafx.h

                      #ifndef _WIN32_WINNT NTDDI_VERSION
                      #define _WIN32_WINNT NTDDI_VISTASP1
                      #endif

                      #ifndef _WIN32_IE
                      #define _WIN32_IE 0x0700
                      #endif

                      after making the above change i am getting the following error error C1189: #error : _WIN32_WINNT settings conflicts with _WIN32_IE setting c:\program files\microsoft sdks\windows\v6.0a\include\sdkddkver.h it is failing here #if ((_WIN32_WINNT < _WIN32_WINNT_WIN2K) && (_WIN32_IE > _WIN32_IE_IE60SP1)) #error _WIN32_WINNT settings conflicts with _WIN32_IE setting #endif I am working on vistasp1 what could be the problem Regards

                      modified on Friday, February 13, 2009 10:22 AM

                      H 1 Reply Last reply
                      0
                      • S subramanyeswari

                        is this the following code that i have to make in stdafx.h

                        #ifndef _WIN32_WINNT NTDDI_VERSION
                        #define _WIN32_WINNT NTDDI_VISTASP1
                        #endif

                        #ifndef _WIN32_IE
                        #define _WIN32_IE 0x0700
                        #endif

                        after making the above change i am getting the following error error C1189: #error : _WIN32_WINNT settings conflicts with _WIN32_IE setting c:\program files\microsoft sdks\windows\v6.0a\include\sdkddkver.h it is failing here #if ((_WIN32_WINNT < _WIN32_WINNT_WIN2K) && (_WIN32_IE > _WIN32_IE_IE60SP1)) #error _WIN32_WINNT settings conflicts with _WIN32_IE setting #endif I am working on vistasp1 what could be the problem Regards

                        modified on Friday, February 13, 2009 10:22 AM

                        H Offline
                        H Offline
                        hareshel
                        wrote on last edited by
                        #13

                        I am also facing same issue...I have ported my activex plugin to 64bit by compiling with x64. it has created .ocx file as well as .dll file. Created cab and inf file to install my activex plugin. When i install it crashes. I ran dependency walker on .ocx file it says two dlls not found... devmgr.dll dwmapi.dll please let me know how to resolve....

                        1 Reply Last reply
                        0
                        • S Sarath C

                          Can't you debug the code and see what's happening? Following topics can put some light on your issue. Wow64[^] Converting 32-bit Applications Into 64-bit Applications: Things to Consider [^] Porting your program[^] but it poorly documented I think...

                          -Sarath. "Great hopes make everything great possible" - Benjamin Franklin

                          My blog - Sharing My Thoughts

                          S Offline
                          S Offline
                          SELVA KUMAR R
                          wrote on last edited by
                          #14

                          Hi, TO run a web application with 32bit dll in an 64 bit server, just in the IIS, "enable 32-bit application" to true for the application pool. This seting will work almost all servers expect SBS server.

                          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