Skip to main content
Participant
October 15, 2007
Question

ActiveX component cant create object AcroExch.App

  • October 15, 2007
  • 25 replies
  • 65640 views
I have read an article about accessing PDF's using Acrobat SDK and downloaded Acrobat 7.0.5 SDK version and installed it.

Later I have uninstalled the 7.0.5 SDK version, downloaded SDK8_v2_Full_win.zip and extracted it to C:\Program Files\Adobe folder. I have acrobat reader 8.1.0 installed in my machine.

Now when I run the following code from an automation tool (QTP),Iam getting an error : ActiveX component cant create object AcroExch.App .

Option Explicit
Dim gApp, gPDDoc, jso
Set gApp = CreateObject( "AcroExch.App" )
Set gPDDoc = CreateObject( "AcroExch.PDDoc" )
If gPDDoc.Open( "c:\MyPdfFile.pdf" ) Then
Set jso = gPDDoc.GetJSObject()
jso.console.Show
jso.console.Clear
jso.console.println ( "Hello, Acrobat for QuickTest!" )
gApp.Show
End If
Set jso = Nothing : Set gPDDoc = Nothing : Set gApp = Nothing

Article author told me to check the following keys in registry: -
HKEY_CLASSES_ROOT\AcroExch.App
HKEY_CLASSES_ROOT\AcroExch.App.1
HKEY_CLASSES_ROOT\AcroExch.AVDoc
HKEY_CLASSES_ROOT\AcroExch.Document

I was able to find only 'AcroExch.Document' key in registry my machine.

"AcroExch.App" is not registered, that's why I got the eroor and installation of the SDK did not work in my system.

Please let me know how to get acrobat SDK successfully installed?
This topic has been closed for replies.

25 replies

Participating Frequently
July 18, 2008
> Leonard Rosenthol, "ActiveX component cant create object AcroExch.App" #31, 18 Jul 2008 7:50 am
>First, FilePrintSilent was turned off in Reader 8 due
>to security concerns.

Ok

>You can, however, print with a UI.

What you mean with "print with a UI"? Use the Reader user interface?

>Now, the reasoning is simple. Acrobat and Reader each want
>to install certain system-level components (eg. printer
>drivers and browser plugins) that DO NOT play well
>with older versions!

I don't understand why only the automation does not work with a new versione of Reader when automation should concern only a full Acrobat.

>However, with Acrobat & Reader 7, we recognized the
>common situation where a user would update their Reader
>before their Acrobat - and so we have designed the
>products to live together IN THAT ONE CASE.

So Acrobat 7 FULL with Reader 7 o 8 should work?

Thx, bye

Fabrizio
Participating Frequently
July 18, 2008
A couple of responses...

First, FilePrintSilent was turned off in Reader 8 due to security concerns. You can, however, print with a UI.

Second, let me clarify the multi-version policy and rationale.

* Adobe does not support multiple versions of Adobe Acrobat installed on the same computer.

* Adobe does not support multiple versions of Adobe Reader installed on the same computer.

* Adobe DOES support one copy of Reader and one copy of Acrobat PROVIDED THAT both are of version 7.0 or later.

Now, the reasoning is simple. Acrobat and Reader each want to install certain system-level components (eg. printer drivers and browser plugins) that DO NOT play well with older versions!

However, with Acrobat & Reader 7, we recognized the common situation where a user would update their Reader before their Acrobat - and so we have designed the products to live together IN THAT ONE CASE.

Hope that helps.

Leonard
Participating Frequently
July 18, 2008
Yes, I've been tested the code with a Reader 7.0.
Participating Frequently
July 18, 2008
> PDL, "ActiveX component cant create object AcroExch.App" #26, 18 Jul 2008 6:23 am
> AcroExch.App doesn't exist if Reader is the only viewer on the
> machine. AcroExch.App only works with a full version of Acrobat.

I know but I have also an Acrobat 5.0 FULL installed, if the Reader is not open the CreateObject works fine.

> PDL, "ActiveX component cant create object AcroExch.App" #26, 18 Jul 2008 6:23 am
> in their opinion, you shouldn't have 2 versions
> installed on the same machine

I can understand if I have 2 full version installed, but have an old FULL version and a newest Reader version I don't think is strange.

> Aandi Inston, "ActiveX component cant create object AcroExch.App" #27, 18 Jul 2008 6:28 am
> But according to the documentation, FilePrintSilent is
> supported in Reader. What happens
> when you try to use it?

With Reader 8.0 the code raise the error "Foreign application won't perform DDE method or operation", the code is:

Dim lngTID As Long

'// Open Acrobat Reader
lngTID = Shell(GVAcrobatPath, vbHide)

'// Print in silent mode my pdf file
tb.LinkMode = vbLinkNone
tb.LinkTopic = "acroview|control"
tb.LinkMode = vbLinkManual
tb.LinkTimeout = 32767
tb.LinkExecute "[FilePrintSilent(""" & sFile & """)]"

Bye

Fabrizio
Participating Frequently
July 18, 2008
Does that DDE code work with older versions of Reader/Acrobat?

Aandi Inston
Patrick_Leckey
Participating Frequently
July 18, 2008
> I need only to open or print a PDF, that's all I want

AcroExch.App doesn't exist if Reader is the only viewer on the machine. AcroExch.App only works with a full version of Acrobat.

> I need Acrobat to create PDF using his virtual printer but I can't deny a user to install a newest reader for his needs

I can certainly understand that in a large deployment, but that doesn't change the fact that Adobe considers it unreliable to have multiple versions installed, and it may well cause unexpected behaviour.

> With a Acrobat Reader installed is possible to open a PDF using Acrobat instead of the Reader

Yes, but since this is unsupported by Adobe. You'll have to manually edit the registry to move the file associations and browser integration back to Acrobat. Adobe provides no documentation for this since, in their opinion, you shouldn't have 2 versions installed on the same machine.

Basically, you can think of it this way: Whichever product was installed most recently will be the "active" viewer (i.e. the one that holds the associations and browser integration).
Participating Frequently
July 18, 2008
> Bernd Alheit, "ActiveX component cant create object AcroExch.App" #23, 18 Jul 2008 3:33 am
>
>Not all code created for Adobe Acrobat will work with Adobe Reader.

I need only to open or print a PDF, that's all I want

> Aandi Inston, "ActiveX component cant create object AcroExch.App" #24, 18 Jul 2008 3:33 am
>
>Adobe don't support more than one Acrobat/Reader product on the same
>PC. Since they cannot run at the same time, and have different
>capabilities you have a problem.

I need Acrobat to create PDF using his virtual printer but I can't deny a user to install a newest reader for his needs.

>However, if you make sure Acrobat, not Reader, is started FIRST and
>already running this may reduce problems.

With a Acrobat Reader installed is possible to open a PDF using Acrobat instead of the Reader ?

If I can manage this problem by code I can later use the CreateObject to print a different document, now to open a PDF I'am using in VB6:

ShellExecute(0, vbNullString, sFile, 0&, 0&, 1)

but this open the PDF using the Reader

Bye

Fabrizio
Participating Frequently
July 18, 2008
>I need only to open or print a PDF, that's all I want

The AcroExch methods are not in Reader. But according to the
documentation, FilePrintSilent is supported in Reader. What happens
when you try to use it?

>I need Acrobat to create PDF using his virtual printer but I can't deny a user to install a newest reader for his needs.

You should tell the user that Adobe don't support it. Of course, Adobe
would prefer an Acrobat upgrade any way.

>With a Acrobat Reader installed is possible to open a PDF using Acrobat instead of the Reader ?

If you start Acrobat first BEFORE trying to open the file, Acrobat
should do all the processing.

Aandi Inston
Bernd Alheit
Community Expert
Community Expert
July 18, 2008
Not all code created for Adobe Acrobat will work with Adobe Reader.
Participant
June 1, 2012

Adob Acrobat it necessary in as client machine?

Participating Frequently
July 18, 2008
I have the same problem. With only Adobe Acrobat 5.0 installed all works fine, then I have installed the Acrobat Reader 8.0 and now with the reader open (with or without a open document) if I use CreateObject("AcroExch.App") in my code the reader show a message saying document could not be found (what document?) and the code raise the error "ActiveX component cant create object AcroExch.App", I can't believe I have to write a different code for any combination of Acrobat and Acrobat Reader version installed on users PC. Also I discovered a problem with DDE command FilePrintSilent not supported by Reader 8.0 :-/.

Thanks for any help

Fabrizio
Participating Frequently
July 18, 2008
Adobe don't support more than one Acrobat/Reader product on the same
PC. Since they cannot run at the same time, and have different
capabilities you have a problem.

However, if you make sure Acrobat, not Reader, is started FIRST and
already running this may reduce problems.

Aandi Inston
Participating Frequently
April 21, 2008
Thanks PDL, I will install Acrobat professional only and will let you know. It should really solve this error. Thanks once again !
Patrick_Leckey
Participating Frequently
April 20, 2008
You need Acrobat Professional for that. All required APIs are not available in Standard.

If you are using the version 8 SDK, you need an 8.x version of Acrobat Professional or the headers will not compile properly. If you are using Acrobat 6, you need the version 6 SDK. You cannot compile plug-ins for Acrobat 6 with the Acrobat 8 SDK.