Planet PDF Forum Archive

Planet PDF ForumWowsers! This is page is old, head to the LIVE Planet PDF Forum. It features more than 10 conferences, covering everything from beginner to in-depth developer and pre-press discussions. If you wish to continue... one & two archive covers 1999-2011 (160,000 pages).


New Forum | Previous | Next | (P-PDF) Developers


Topic: Using Named Destinations
Conf: (P-PDF) Developers, Msg: 59663
From: pbraiman
Date: 5/29/2002 05:40 PM

Hi All-

The function below is called after to a call which 
successfully opens the
Acrobat Reader. It passes in a PDF document path 
and a page number.

The commented sprintf function produces a 
"DocGoTo" string buffer which
works correctly and opens the document at the 
correct page.

I commented out that function, and called the next 
sprintf function that
produces a "DocGoToNameDest" string buffer. 
This should find and go to
the named destination 
"M9.13794.SubSect.91.General" which was a 
named
destination listed in the document.

The document opened correctly but does not go to 
the page containing the
named destination. Is the named destination 
syntax incorrect or is there 
another problem that I am not seeing?

I checked the document for the existence of the 
named destination and it 
indeed does exist within the PDF. 

Many thanks in advance, this is driving me quite 
nuts!

-Paul

==========BEGIN CODE==========

BOOL OpenPDFreader(char* docPath,int 
pageNum)
{
   HDDEDATA bRetVal;
   DWORD dwResult;
   HSZ hszServerName, hszTopicName;
   HCONV hConversation = NULL;
   char buf[500];     
   UINT res,rtn;
   DWORD id=0;

   rtn = DdeInitialize(&id,
(PFNCALLBACK)&DDE_ProcessMessage,APPCM
D_CLIENTONLY, 0);
   if (rtn == DMLERR_INVALIDPARAMETER)
   {
      
MessageBox(NULL,"DMLERR_INVALIDPARAMET
ER",
"DMLERR_INVALIDPARAMETER",
   
MB_OK);
      return FALSE;
   }
   if (rtn == DMLERR_NO_ERROR)
   {

      hszServerName = DdeCreateStringHandle(id, 
"acroview", 0);
      hszTopicName = DdeCreateStringHandle(id, 
"control", 0);

      hConversation = DdeConnect(id, 
hszServerName, hszTopicName, NULL);

      res = DdeGetLastError(id);
      if (res != DMLERR_NO_ERROR)
      {
         MessageBox(NULL, (LPCSTR)"Could Not 
Connect.", 
(LPCSTR)"DdeConnect",MB_OK); 
         return FALSE;
      }
      else
      {
         memset(buf, 0, sizeof(buf));

         
sprintf(buf,"%s%s%s","[DocOpen(",docPath,")]");
         
         bRetVal = DdeClientTransaction((unsigned 
char*)buf,
         (DWORD)strlen(buf), 
         (HCONV)hConversation, 
         NULL, 
         (UINT)CF_TEXT, 
         (UINT)XTYP_EXECUTE, 
         (DWORD)1000, 
         &dwResult);
         
//       sprintf(buf,"%s%s%s%d%s","[DocGoTo("
//       ,docPath
//       ,","
//       ,pageNum-1
//       ,")]"); 

         
sprintf(buf,"%s%s%s%s%s","[DocGoToNamedDe
st("   
         ,docPath
         ,","
         ,"M9.13794.SubSect.91.General"
         ,")]"); 

       bRetVal = DdeClientTransaction((unsigned 
char*)buf,   
       (DWORD)strlen(buf), (HCONV)hConversation, 
NULL,
   
       (UINT)CF_TEXT, (UINT)XTYP_EXECUTE, 
(DWORD)1000, &dwResult);
       DdeDisconnect(hConversation);
      }
      
      DdeFreeStringHandle(id, hszServerName);
      DdeFreeStringHandle(id, hszTopicName);
      
      DdeUninitialize(id);
   }
   return TRUE;

}//end OpenPDFreader


PDF In-Depth Free Product Trials Ubiquitous PDF

Debenu Aerialist

The ultimate plug-in for Adobe Acrobat. Advanced splitting, merging, stamping, bookmarking, and link...

Download free demo

Debenu PDF Tools Pro

It's simple to use and will let you preview and edit PDF files, it's a Windows application that makes...

Download free demo

Back to the past, 15 years ago! Open Publish 2002

Looking back to 2002, it's amazing how much of the prediction became a reality. Take a read and see what you think!

September 14, 2017
Platinum Sponsor





Search Planet PDF
more searching options...
Planet PDF Newsletter
Most Popular Articles
Featured Product

Debenu PDF Aerialist

The ultimate plug-in for Adobe Acrobat. Advanced splitting, merging, stamping, bookmarking, and link control. Take Acrobat to the next level.

Features

Adding a PDF Stamp Comment

OK, so you want to stamp your document. Maybe you need to give reviewers some advice about the document's status or sensitivity. This tip from author Ted Padova demonstrates how to add stamps with the Stamp Tool along with related comments.