0

I recently cleaned up my Windows 7 64-bit PC, and after it ABCpdf8 started giving me an error, when I try to export HTML to PDF. The error is "Failed to initiate IE compatibility mode: Failed to load all required assemblies." at WebSupergoo.ABCpdf8.Internal.IECompatibility.Activate() at line

theID = theDoc.AddImageUrl(input.Text);

of the test application, and I have no idea why, because I did not remove any assemblies from my machine. If I run the compiled application on another workstation with the same config (Windows 7 64-bit), it works fine. Dependency Walker images showed no difference in DLLs sets from my machine and from another. How else can I identify the source of the problem? It is definitely neither a missing DLL, nor the user access to the system folders, because, I checked user rights as well, they're identical on both machines. I assume that it might be a corrupted registry entry. Is there any way to quickly check the assumption?

It has to be said that, ABCpdf comes as third-party tool within another software, so I cannot contact support directly, but through the main vendor.

Oleksandr
  • 292
  • 1
  • 4
  • 15

2 Answers2

3

I had a similar problem with different behavior on w7 and ws2008, which was solved by using the Gecko engine

doc.HtmlOptions.Engine = EngineType.Gecko;

Note that websupergoo recommends using Gecko rather than IE9 as parts of the IE API it uses have been deprecated. (item 6.29)

devio
  • 36,858
  • 7
  • 80
  • 143
  • Well, even if in the project I can change Engine, ABCpdf is a third-party tool within another software, and I cannot change anything there. However, I tried to install the latest version of ABCpdf8, and it worked! Now, the question is when the main vendor will integrate the latest version in their product. – Oleksandr Nov 22 '12 at 08:08
  • I'm so glad I found this answer. Our client upgraded IE on their server to a version not supported by ABCpdf8, changing the browsing engine fixed the PDF generation. – germankiwi Feb 04 '14 at 03:35
0

When you 'cleaned' your system you may have erased the license key from the registry. Try re-installing your 'other software'.

lcryder
  • 486
  • 2
  • 8
  • i did it. I'm trying to monitor the test application with ProcessMonitor to see which registry entries it tries to refer to. – Oleksandr Nov 01 '12 at 10:51
  • ok, I figured out that HKLM\Software\Microsoft\Windows\CurrentVersion\Internet Settings\5.0\Cache and HKLM\Software\Microsoft\Windows\CurrentVersion\Internet Settings\ZoneMap\ have ACCESS DENIED result on my workstation and SUCCESS on another workstation. I checked permissions on both machines and they're the same! What is going on here? Why then test application does not have access to registry entries on my machine? – Oleksandr Nov 01 '12 at 11:22
  • fixed access to those entries, but still no luck. the same error, and no ACCESS DENIED errors in ProcessMonitor – Oleksandr Nov 01 '12 at 14:53
  • If you're using ABCpdf as I have, you have to allow read/write/delete access to the directory where your source HTML document reside. – lcryder Nov 02 '12 at 11:28
  • Hmm, ProcessMonitor shows "ACCESS DENIED" events for process "C:\Temp\ABCpdf\MSHtml\4r4ctabh.3s1\mshtmlwp.exe" when it tries to reach "C:\Windows\Microsoft.NET\Framework64\v2.0.50727\CONFIG\security.config.cch.new". But I cannot change security settings for that folder. How can I give the permissions? – Oleksandr Nov 05 '12 at 07:39