Print Page | Close Window

QuickPDF on 64-bit Windows 7

Printed From: Debenu Quick PDF Library - PDF SDK Community Forum
Category: For Users of the Library
Forum Name: I need help - I can help
Forum Description: Problems and solutions while programming with the Debenu Quick PDF Library and Debenu PDF Viewer SDK
URL: http://www.quickpdf.org/forum/forum_posts.asp?TID=1390
Printed Date: 29 Apr 25 at 10:25AM
Software Version: Web Wiz Forums 11.01 - http://www.webwizforums.com


Topic: QuickPDF on 64-bit Windows 7
Posted By: Roulette
Subject: QuickPDF on 64-bit Windows 7
Date Posted: 26 Mar 10 at 5:26PM
I have a base of code that was working fine on 32-bit Windows XP, but after moving to Windows 7 64-bit I haven't been able to register the QuickPDFAX0718.dll.
 
After copying the DLL to the C:\Windows\System32 directory, I tried the following:
 
regsvr32 C:\Windows\System32\QuickPDFAX0718.dll
 
When that did not work, I figured that since QuickPDF is a 32-bit DLL I needed to use the 32-bit version of regsvr32.exe, and tried the following:
 
C:\Windows\Syswow64\regsvr32.exe C:\Windows\System32\quickpdfax0718.dll
 
This results in the following message (which is identical to the one encountered when using the 64-bit version of regsvr32.exe):
 
The module "c:\windows\system32\quickpdfax0718.dll" failed to load.  Make sure the binary is stored at the specified path or debug it to check for problems with the binary or dependent .DLL files.  The specified module could not be found.
 
I tried running the aforementioned line with UAC (User Account Control) completely disabled, but that did not change anything.  I did double-check to verify that the DLL was in the C:\Windows\System32 directory, so I'm thinking that the "specified module could not be found" message might be in regards to something on which QuickPDFAX0718.dll depends but can't be found by the operating system.
 
Can anyone provide some insight into how to accomplish this?
 
- Roulette
 



Replies:
Posted By: Roulette
Date Posted: 26 Mar 10 at 6:12PM
Never mind...I got it working.
 
I had to use a command prompt with administrative privileges (simply disabling UAC won't work), register the DLL in its installed location ("C:\Program Files (x86)\Quick PDF Library\ActiveX\QuickPDFAX0718.dll" instead of copying it to "C:\Windows\System32" and trying to register it there), and use the 32-bit version of regsvr32.exe (in "C:\Windows\SysWow64".)
 
When the above steps were taken, the DLL registered perfectly and I'm able to access it from within the code.
 
- Roulette
 


Posted By: Paddy
Date Posted: 26 Mar 10 at 7:20PM
Cheers for the tip, that is going to come in handy for me.


Posted By: Wheeley
Date Posted: 26 Mar 10 at 11:45PM
If the DLL is a 32-bit DLL it should go into Windows\SysWow. This is where the operating system will expect to find it. Windows\system32 is for 64bit DLL'S & EXE's. Talk to Microsoft about the naming issues. I know its stupid.

Wheeley


Posted By: Roulette
Date Posted: 24 May 10 at 11:28PM
That is incorrect.  On 64-bit versions of Windows, 32-bit DLLs should go into "\Windows\SysWow64"  and NOT "\Windows\SysWow" (which is where the 64-bit DLLs would reside.)
 
If you follow my instructions it will all work correctly.
 
- Roulette
 


Posted By: Ingo
Date Posted: 25 May 10 at 6:29AM
Hi!

Wheeley is mainly right!
The 64-bit-dlls are at home in the (it's funnny - isn't it?) system32-path
and the 32-bit-dlls take the SysWow64-path.
Sure you can deploy all dlls in the relevant app-path where they are needed
but that's not the ms-philosophy ;-)

Cheers, Ingo



Posted By: Roulette
Date Posted: 26 May 10 at 2:15AM
Wheeley is not "mainly right" (which would imply that I'm "mainly wrong".)  Here's why:
 
Wheeley sought to correct me on two specific points.  First, he stated that, "If the DLL is a 32-bit DLL it should go into Windows\SysWow."  As I pointed out in my response, that's wrong.  32-bit code on 64-bit Windows resides in the SysWow64 - not SysWow - directory.  This is critically important to the solution that I specified in my second post since the version of regsvr32.exe that resides in SysWow cannot be used to register the 32-bit QuickPDF DLL.  Since Ingo stated that "32-bit-dlls take the SysWow64-path" it looks like he's in total agreement with me and MSDN - and not Wheeley - there.
 
Wheeley's second point was that, on 64-bit Windows, "Windows\system32 is for 64bit DLL'S & EXE's."  That statement is correct but no one is debating that.  If you read my second post - the one with the ANSWER to the problem - you'll see that I state that you should "register the DLL in its installed location...INSTEAD OF COPYING IT TO "C:\Windows\System32".  So...the only way that "Wheeley is mainly right" is if it's valid to "correct" someone on something that they specifically said that you SHOULD NOT DO.
 
Call me crazy, but that makes absolutely no sense.
 
In any event...once again...if you want to be able to register QuickPDF on a 64-bit version of Windows, follow the advice that I gave in my second post exactly and it will work.
 
- Roulette
 


Posted By: ferdous
Date Posted: 23 Oct 10 at 7:56PM
My server is windows 2008 64-bit

This sol is not working for me


Posted By: Rowan
Date Posted: 26 Oct 10 at 9:29PM
Hi Ferdous,

Are you using the DLL edition or the ActiveX edition?

The DLL edition does not work at all on 64-bit machines, even with the workaround described in this thread -- it only applies to the ActiveX edition.

- Rowan.


Posted By: Rowan
Date Posted: 21 Jan 11 at 12:17PM
Correction: the DLL edition does in fact work on 64-bit machines if you change the platform target to x86 for the project. This will work in the same way that the ActiveX edition does.



Print Page | Close Window

Forum Software by Web Wiz Forums® version 11.01 - http://www.webwizforums.com
Copyright ©2001-2014 Web Wiz Ltd. - http://www.webwiz.co.uk