AcroExch.App: UnLock メソッド

TOP > AcroExch.App > UnLock      [...]


説明

以前にAcrobatアプリケーションの操作をロック(Lock)したのを解除します。

※注意の参照

 

形式

VARIANT_BOOL Unlock();

 

引数

無し。

 

戻り値

  • -1 : True(真)で成功した。
  • 0 : False(偽)で失敗した。

 

バージョン情報

当メソッドはテスト環境を作るのが非常に難しいので、ページ下部の動作環境だけでの検証とさせて頂きます。

 


サンプル:Excel のVBA

説明 : 他のAcrobatアプリケーションを操作出来ない様に一時的にロックします。
サーバーでOLE(IAC)の同時実行する時に使用するのがベストでしょう。
基本的にクライアント・パソコンで使うメソッドではありません。

  • 参照設定を事前に行う。
  • 以下のサンプルはテスト用です。
    F8キーでステップ実行して動作確認します。

 





Public Declare Sub Sleep Lib "kernel32" _
    (ByVal dwMilliseconds As Long)

Sub AcroExch_App_UnLock()

    Dim objAcroApp As New Acrobat.AcroApp
    Dim objAcroPDDoc As New Acrobat.AcroPDDoc
    Dim lRet    As Long     '戻り値
    Dim l       As Long     'ループ用のカウント
    Const CON_LOOP = 20     'ループ回数のMAX

    l = 0
    'IACの排他制御をオンにする
    lRet = objAcroApp.Lock("syori01")
    Do While (lRet = 0)
        '他のプログラムで排他制御されている
        If l >= CON_LOOP Then
            'ループ限度を越えた
            'エラー処理・・
            GoTo AcroExch_App_Lock_Skip
        End If
        '0.5秒待つ
        Sleep 500
        l = l + 1
    Loop
    '他で排他制御が解除された

    'テスト確認用に画面表示する
    lRet = objAcroApp.Show
    lRet = objAcroPDDoc.Open("E:¥Test01.pdf")
    objAcroPDDoc.OpenAVDoc ("E:¥Test01.pdf")
    
    '・・・・・ココで一時停止して何か処理を行ってみる

    '以下のCloseは不要。実行すると次でエラーになる。
    'lRet = objAcroPDDoc.Close
    
    '全てのドキュメントを強制的に閉じる
    '※以下をしないとプロセスが残る。
    lRet = objAcroApp.CloseAllDocs 
     
    'アプリケーションの終了
    lRet = objAcroApp.Hide
    lRet = objAcroApp.Exit
    
AcroExch_App_Lock_Skip:
    '排他制御の開放
    lRet = objAcroApp.Unlock
    
    'オブジェクトの強制開放
    Set objAcroPDDoc = Nothing
    Set objAcroApp = Nothing
    '※この後,Acrobatプロセスがメモリから消えるのに2~4秒掛かる
End Sub

  

補足

  • 上記サンプルのテストは Excel 2003 のVBAと Excel 2007 のVBAを同時に立ちあげて検証しました。
  • Lockメソッドの解説を先に見て、その使用方法について理解しないとUnlockメソッドは利用出来ません。
  • Lockメソッドを使用したら、最後に必ずUnlockメソッドを実行して下さい。
  • 処理的にAcrobatを画面表示する必要が無ければ、Showメソッドを実行する必要はありません。CPUの無駄使いも防げます。 

  

注意

  • Acrobat バージョン5.0以上では、代わりにUnlockExメソッドを使用してください。
  • ライセンス上の問題点を再確認して下さい。

 

動作確認環境

  • WindowsXP Pro(+ SP2 + WindowsUpdate) +
    Acrobat 7.0.9 Pro + Office 2003
  • WindowsXP Pro(+ SP3 + MIcrosoftUpdate) +
    Acrobat 8.1.7 Pro + Office 2003( + SP3) + Office 2007(+ SP2)

 

Adobe Web 解説 URL(英語) v9.1

http://livedocs.adobe.com/acrobat_sdk/9.1/Acrobat9_1_HTMLHelp/IAC_API_OLE_Objects.103.31.html

 

戻る


キーボード

ブラウザ画面の文字サイズを変更するショートカットキー

  1. [ CTRL ] + [ + ]  :  文字を大きく
  2. [ CTRL ] + [ - ]  :  文字を小さく

Shortcut Keys

  1. [ CTRL ] + [ + ]  :  Up the font size
  2. [ CTRL ] + [ - ]  :  Down the font size

コメントを残す

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

CAPTCHA


出来るだけ早く返答する様には心がけています。
が、遅くなる時もありますのでご了承ください。


SAMURAI Plugin

コメントをする時は最低でも以下をお願いします。

  • OS名 バージョン
  • Acrobat バージョン
  • ツール(Excel等) バージョン