TOP > AcroExch.App > UnLock [...]
説明
以前にAcrobatアプリケーションの操作をロック(Lock)したのを解除します。
※注意の参照!
形式
VARIANT_BOOL Unlock();
引数
無し。
戻り値
- -1 : True(真)で成功した。
- 0 : False(偽)で失敗した。
バージョン情報
当メソッドはテスト環境を作るのが非常に難しいので、ページ下部の動作環境だけでの検証とさせて頂きます。
サンプル:Excel のVBA
説明 : 他のAcrobatアプリケーションを操作出来ない様に一時的にロックします。
サーバーでOLE(IAC)の同時実行する時に使用するのがベストでしょう。
基本的にクライアント・パソコンで使うメソッドではありません。
- 参照設定を事前に行う。
- 以下のサンプルはテスト用です。
F8キーでステップ実行して動作確認します。
001 Public Declare Sub Sleep Lib "kernel32" _
002 (ByVal dwMilliseconds As Long)
003
004 Sub AcroExch_App_UnLock()
005
006 Dim objAcroApp As New Acrobat.AcroApp
007 Dim objAcroPDDoc As New Acrobat.AcroPDDoc
008 Dim lRet As Long '戻り値
009 Dim l As Long 'ループ用のカウント
010 Const CON_LOOP = 20 'ループ回数のMAX
011
012 l = 0
013 'IACの排他制御をオンにする
014 lRet = objAcroApp.Lock("syori01")
015 Do While (lRet = 0)
016 '他のプログラムで排他制御されている
017 If l >= CON_LOOP Then
018 'ループ限度を越えた
019 'エラー処理・・
020 GoTo AcroExch_App_Lock_Skip
021 End If
022 '0.5秒待つ
023 Sleep 500
024 l = l + 1
025 Loop
026 '他で排他制御が解除された
027
028 'テスト確認用に画面表示する
029 lRet = objAcroApp.Show
030 lRet = objAcroPDDoc.Open("E:\Test01.pdf")
031 objAcroPDDoc.OpenAVDoc ("E:\Test01.pdf")
032
033 '・・・・・ココで一時停止して何か処理を行ってみる
034
035 '以下のCloseは不要。実行すると次でエラーになる。
036 'lRet = objAcroPDDoc.Close
037
038 '全てのドキュメントを強制的に閉じる
039 '※以下をしないとプロセスが残る。
040 lRet = objAcroApp.CloseAllDocs
041
042 'アプリケーションの終了
043 lRet = objAcroApp.Hide
044 lRet = objAcroApp.Exit
045
046 AcroExch_App_Lock_Skip:
047 '排他制御の開放
048 lRet = objAcroApp.Unlock
049
050 'オブジェクトの強制開放
051 Set objAcroPDDoc = Nothing
052 Set objAcroApp = Nothing
053 '※この後,Acrobatプロセスがメモリから消えるのに2~4秒掛かる
054 End Sub
Highlight:プログラミング言語のソースコードを構文で色分け (GUI編)
補足
- 上記サンプルのテストは 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
< 戻る >
![]() ブラウザ画面の文字サイズを変更するショートカットキー
|