cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

A dynamic link library (DLL) initialization routine failed HRESULT exception: 0x8007045A

Former Member
4,414

An unexcepted error occurs from time to time causing an application to crash while tempting to run a crystal report edition.
If the user restart the app the report may works but the same message can occurs later.

Running the progress application in window admin mode seems to prevent this message, but this is not an option.

This behaviour is not reproducible, it seems random.

The dll concerned seems to be clientdoc.dll (CRforVS_redist_install_32bit_13_0_2)

Retrieving the COM class factory for component with CLSID {F734A321-8381-4FFD-A614-139E8906DC83} failed due to the following error:

A dynamic link library (DLL) initialization routine failed. (HRESULT exception: 0x8007045A)

The registry indicates that this refers to this dll -

[HKEY_CLASSES_ROOT\WOW6432Node\CLSID\{F734A321-8381-4FFD-A614-139E8906DC83}\InprocServer32]
@="C:\\Program Files (x86)\\SAP BusinessObjects\\Crystal Reports for .NET Framework 4.0\\Common\\SAP BusinessObjects Enterprise XI 4.0\\win32_x86\\clientdoc.dll" "ThreadingModel"="Both"

Why the initialization for their clientdoc.dll is failing sometimes ?

Accepted Solutions (1)

Accepted Solutions (1)

0 Likes

Read the info about updating to SP 21, you need to update your references to 3500.

Check the App.config file and be sure all all referencing 3500.

https://wiki.scn.sap.com/wiki/display/BOBJ/Crystal+Reports%2C+Developer+for+Visual+Studio+Downloads

Don

Answers (5)

Answers (5)

Former Member
0 Likes

I have exactly the same issue, if anyone can offer any further advice it would be appreciated.

Former Member
0 Likes

Hi,

Altough we've updated to sp23 and explicity called the dispose method, the error still occurs...

Any more help will be very much appreciate

Regards,

Damien

Former Member
0 Likes

First, thank you for your answers.


Dell :

I thought the destructor was doing the job himself.

From then, I explicity call the close and dispose methods.

Don :

I've just installed SP 23.

Note that the DLL version seems the same : 13.0.3500.0

I will come back to you soon.

-Damien


0 Likes

13.0.3500.0 is the assembly number only, it's not the version of the dll. Assembly number reflects the framework it supports, thus 3500 is minimum now where previously it was 2.0.

0 Likes
DellSC
Active Contributor
0 Likes

Are you explicitly calling .Dispose() on your ReportDocument objects when you're done with them? If not, you need to be. Much of the SDK is based on COM objects, which .NET does not memory manage well. So, if you're not properly disposing of the objects, they stick around in memory much longer than they should. Sometimes they take up all of what's available to the application and can cause errors like you're seeing.

-Dell