Help regarding the App.Manifest file

PDF-XChange Editor SDK for Developers

Moderators: TrackerSupp-Daniel, Tracker Support, Paul - Tracker Supp, Vasyl-Tracker Dev Team, Chris - Tracker Supp, Sean - Tracker, Ivan - Tracker Software, Tracker Supp-Stefan

Forum rules
DO NOT post your license/serial key, or your activation code - these forums, and all posts within, are public and we will be forced to immediately deactivate your license.

When experiencing some errors, use the IAUX_Inst::FormatHRESULT method to see their description and include it in your post along with the error code.
hjerteblod
User
Posts: 26
Joined: Thu Sep 05, 2019 9:03 am

Help regarding the App.Manifest file

Post by hjerteblod »

Hello, I ask for your help again.

I am still working on the issue of document OCR.
I still refer to the sample project from this link: viewtopic.php?f=66&t=30356

Now I have found that the manifest file of this project contains the following:

Code: Select all

<file name="PDFXEditCore.x86.dll">
    <typelib tlbid="{0AAFF38C-CB91-4424-A8B9-F8B504ACBE0C}" version="1.0" helpdir="" />
    <comClass clsid="{973BF60B-4CC6-4BE0-B408-3D80E07FC2E6}" threadingModel="Apartment" tlbid="{0AAFF38C-CB91-4424-A8B9-F8B504ACBE0C}" />
    <comClass clsid="{A1149909-4EDC-4421-B9E5-E93C25A000A1}" threadingModel="Apartment" tlbid="{0AAFF38C-CB91-4424-A8B9-F8B504ACBE0C}" />
  </file>
  <comInterfaceExternalProxyStub name="IPXV_Inst" iid="{D726366D-34D6-49FC-A341-7B84C54CCA3E}" proxyStubClsid32="{00020424-0000-0000-C000-000000000046}" baseInterface="{00000000-0000-0000-C000-000000000046}" />
  <comInterfaceExternalProxyStub name="IPXV_Control" iid="{71300D43-687F-436A-A699-2B37448D0803}" proxyStubClsid32="{00020424-0000-0000-C000-000000000046}" baseInterface="{00000000-0000-0000-C000-000000000046}" />
Well, frankly, I've never seen this statement inside a manifest file. (I'm still a trainee, so sorry)

The problem is:
Without this additional entry in the App.Manifest my language packs will not be loaded or not displayed.

And with this entry it is not possible for me to outsource the OCR in a separate thread, since the Comclass is apparently not registered.
The error message is:
Operation could not be carried out because the QueryInterface call to the COM component for the interface with the IID "{D726366D-34D6-49FC-A341-7B84C54CCA3E}" could not be carried out due to the following error: Wrong variable type. (Exception from HRESULT: 0x80020008 (DISP_E_BADVARTYPE))
or:
HRESULT:0x82191002
And as I said, multithreading works without this entry in the manifest, but unfortunately I can't load languages ​​then.
(By the way, multithreading is needed because otherwise IOperation.Do () freezes the entire user interface.)

The whole thing is a really important project, so I would be really grateful for some help ...

Thank you very much
hjerteblod
User
Posts: 26
Joined: Thu Sep 05, 2019 9:03 am

Re: Help regarding the App.Manifest file

Post by hjerteblod »

I did it.

The trick was to switch "threadingModel" from "Apartment" to "Free".

Code: Select all

<file name="PDFXEditCore.x86.dll">
    <typelib tlbid="{0AAFF38C-CB91-4424-A8B9-F8B504ACBE0C}" version="1.0" helpdir="" />    
    <comClass clsid="{973BF60B-4CC6-4BE0-B408-3D80E07FC2E6}" threadingModel="Free" tlbid="{0AAFF38C-CB91-4424-A8B9-F8B504ACBE0C}" />
    <comClass clsid="{A1149909-4EDC-4421-B9E5-E93C25A000A1}" threadingModel="Free" tlbid="{0AAFF38C-CB91-4424-A8B9-F8B504ACBE0C}" />    
  </file>
  <comInterfaceExternalProxyStub name="IPXV_Inst" iid="{D726366D-34D6-49FC-A341-7B84C54CCA3E}" proxyStubClsid32="{00020424-0000-0000-C000-000000000046}" baseInterface="{00000000-0000-0000-C000-000000000046}" />
  <comInterfaceExternalProxyStub name="IPXV_Control" iid="{71300D43-687F-436A-A699-2B37448D0803}" proxyStubClsid32="{00020424-0000-0000-C000-000000000046}" baseInterface="{00000000-0000-0000-C000-000000000046}" />
Sasha - Tracker Dev Team
User
Posts: 5522
Joined: Fri Nov 21, 2014 8:27 am

Re: Help regarding the App.Manifest file

Post by Sasha - Tracker Dev Team »

Hello hjerteblod,

Glad that you have found a solution.

Cheers,
Alex
Subscribe at:
https://www.youtube.com/channel/UC-TwAMNi1haxJ1FX3LvB4CQ