Unable to load DLL ‘ABCpdf9-32.dll’. The specified module could not be found (Exception from HRESULT: 0x8007007E)

8

Development and deployment on 32-bit system were successful, but a production system running Windows Server 64-bit caused several errors:

Exception System.DllNotFoundException Unable to load DLL ‘ABCpdf9-32.dll’. The specified module could not be found (Exception from HRESULT: 0x8007007E)

c#
asked on Stack Overflow May 16, 2013 by Valentina Solomon Rajan • edited Nov 3, 2015 by Loofer

7 Answers

4

ABCpdf is a 3rd party library that supports both 32 and 64 bit architecture. The .dlls are meant to be put in place using an installer provided by the vendor of the software. When you download the installer from the vendor, you select the 32-bit installer or the 64 bit installer, and then you install it, and enter the key and off you go. From your application's perspective, you just reference abcpdf.dll regardless of whether you'll be deploying to 32bit or 64bit, and the dll handles pointing you over to the correct dll.

The answers so far have mislead you. Do not address the problem by altering your application, just install the right version of ABCpdf on the server to which you're deploying.

answered on Stack Overflow Sep 2, 2014 by ctb
1

The problem will be solved only when you install the vendor provided software on all developer and server machines.

answered on Stack Overflow Nov 20, 2014 by Shan S
1

My Application is 64 bit and some old module is using .32 bit ABCpdf. When I try to print pdf for a new module which uses 64 bit ABCpdf it works and prints. But when code tries to print using old modules which are in 32 bit then it throws following exception. As there is only one ABCpdf.dll to be added. Also, you cannot reference a ABCpdf8-32.dll directly into a 64 bit project.

I was getting error as: unable to load DLL 'ABCpdf8-32.dll': The specified module could not be found. (Exception from HRESULT: 0x8007007E)"

When I tried to add reference following error occured.

enter image description here

After trying for some time I directly added the dll into bin folder and it worked. The permission is not only issue as all my folders had proper permissions given. So, if anyone is having similar issue can try this.

answered on Stack Overflow Mar 16, 2017 by Akshay Anand • edited Aug 17, 2018 by Akshay Anand
0

ABCpdf is a COM dll that has unmanaged code right? In that case it cannot run on a 64bit platform. The article given below explains this (Check the last bits of it)

http://www.hanselman.com/blog/BackToBasics32bitAnd64bitConfusionAroundX86AndX64AndTheNETFrameworkAndCLR.aspx

Additionally, I would also make sure that the ABCpdf dll is not dependent on any other 32bit dlls. You can use Dependency Walker to test this (http://www.dependencywalker.com/)

You will need to find the 64bit versions of the respective COM dlls.

answered on Stack Overflow May 16, 2013 by Tharaka • edited May 16, 2013 by Tharaka
0

Unless you really need your app to be 64-bit (I doubt it - even the VS team opted against), I would suggest you just build and deploy as a 32-bit app. There are few good reasons to go 64-bit, and it complicates things like third-party drivers, COM objects, etc. It may not even be possible to round up 64-bit versions of all these.

answered on Stack Overflow May 16, 2013 by Scott Jones
0

I solved it giving full access privileges to System account in Bin folder.

answered on Stack Overflow Nov 18, 2014 by Francisco G
0

So I was getting the same error. I am using win64.

  1. APCpdf.NEET64.exe run this (if you don't have it in your system)
  2. Go To VS(any version) right click on your solution and add References
  3. Click on COM tab and find APCpdf.NET PDF Generation Library
  4. click Add, clean your solution and rebuild it again.

These are the steps I followed to overcome my issue. Hope it helps :-)

answered on Stack Overflow Nov 7, 2019 by Tinsae

User contributions licensed under CC BY-SA 3.0