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 subramanyeswari

    Hi, I have a .reg file which copies some menu items as keys in the registry. My dll collects all of them and show up on right click if i selected any thing on the explorer. How to make my 32 bit com dll works in 64bit machine? I recompiled in 64 bit machine using visual studio 2008. It did not show up the right results. it is not showing up any menus on the right click. Thanks in advance. Regards,

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

    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 S 2 Replies 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
      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