Acrobat/DDE: FileOpenEx

説明

指定されたPDFドキュメントを開いて、画面表示します。複数のPDFファイルが既に開くいているのなら、最前列に表示します。

このDDEメッセージはPDFドキュメントをDDEメッセージを使用することで操ることができるリストに追加しません。

その場合はDocOpenを使用して下さい。

FileOpenメソッドとの違いは、PDFドキュメントが開き終わるまで待ちません。直ぐに次の命令を実行します。

形式

 

[FileOpenEx(char* fullPath)]

 

引数

fullPath
[char*]
表示するPDFファイルのフルパス。
注意:パス中に空白があるときは注意する。

 

戻り値

true 常にこの値を返します。PDFドキュメントは表示されないかもしれません。
false ※この値は返りません。

注)ExcelのVBAではDDE命令の発信ステートメント上で、戻り値を取得出来ません。

 

サンプル:ExcelのVBA

指定されたPDFドキュメントを開いて、画面表示します。
※Excel VBA開発環境をF8キーでステップ実行して動作確認する。

 

Sub DDE_FileOpenEx()

Dim lChanNo As Long ‘DDEチャンネル番号

‘Acrobatアプリケーション起動
Shell "C:¥Program Files¥Adobe¥Acrobat 8.0¥Acrobat¥Acrobat.exe"
‘Shell "C:¥Program Files¥Adobe¥Reader 9.0¥Reader¥AcroRd32.exe"
‘DDEチャンネルのオープン
lChanNo = DDEInitiate("Acroview", "Control")

‘E:¥Test01.pdfを表示する。
DDEExecute lChanNo, "[FileOpenEx(E:¥Test01.pdf)]"
‘E:¥Test02.pdfを表示する。
DDEExecute lChanNo, "[FileOpenEx(E:¥Test02.pdf)]"
‘E:¥Test01.pdfを最前列に表示する。
DDEExecute lChanNo, "[FileOpenEx(E:¥Test01.pdf)]"
‘E:¥Test02.pdfを最前列に表示する。
DDEExecute lChanNo, "[FileOpenEx(E:¥Test02.pdf)]"
‘PDFを全て閉じ、Acrobatアプリケーション終了
DDEExecute lChanNo, "[AppExit()]" ‘Acrobatプロセスも消える
‘DDEチャネルを閉る
DDETerminate lChanNo

End Sub

 

補足

  • FileOpenメソッドはPDFドキュメントが開き終わるまで、制御を戻しません。FileOpenExメソッドはPDFドキュメントが開き終わるのを待たずに、次の命令を実行します。
  • 既に複数のPDFドキュメントが表示されていて、更にその中に当メソッド指定のPDFドキュメントが含まれている場合は、最前列に表示します。
  • 「戻り値」に関しては未確認です。VBプログラム等で確認する必要があります。

動作確認環境

  • WindowsXP + SP3 + WindowsUpdate
  • Adobe Acrobat Pro 8.1.4 + Office Pro 2003
  • Adobe Reader 9.1.0 + Office Pro 2003

 

Adobe社の解説ページ : 英語

以下がAdobe社のAcrobat DDEの解説ページです。表示には時間がかかります。
http://livedocs.adobe.com/acrobat_sdk/9/Acrobat9_HTMLHelp/IAC_API_DDE_Messages.104.25.html

 

TOPへ

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA