Qpdf : PDFのパスワードとセキュリティ設定を解除するVBA関数

TOP へ > Qpdf  > *


JK in Secondlife

概要

PDF のユーザーパスワードとオーナーパスワードを解除します。印刷、更新、抽出を許可しない等のセキュリティ設定も解除します。

ユーザーパスワードは事前に用意しておく必要があります。オーナーパスワードは知らなくても解除できます。オーナーパスワードを解除すると印刷、更新、抽出等のセキュリティ設定も同時に解除されます。

Acrobat OLE を使わずに Qpdf を使用して処理されます。

 

注記

解除は正当な理由の元で行う必要が有ります。

 

Qpdf とは

フリーソフト Qpdf を知らない人は先にコチラを御覧ください。

 

形式

 

引数

  1. 第1引数:qpdfPara_InPdfPath As String  (In)
    入力のPDFファイルのフルパス
     
  2. 第2引数:qpdfPara_InPdfPassword As String  (In)
    入力のPDFファイルのユーザーパスワード。無ければ””。
  3. 第3引数:qpdfPara_OutPdfPath As String  (In)
    出力のPDFファイルのフルパス
  4. 第4引数:qpdfPara_OrverWrite As Boolean  (In)
    出力のPDFファイルが存在した時に上書きをするか?
    True:上書きをする
    False:上書きをしない
  5. 第5引数:strErr As String  (Out)
    エラーメッセージ。エラー無しは””

 

戻り値

無し。

 

関数 / サンプル





事前設定

  1. コチラを参考にQpdf のダウンロードとインストールを行う
  2. Qpdf.exe のフルパスをCON_QPDF_PATHにセット。
  3. gDebugMode = True のデバッグモードをFalseにセット。

サンプル

test-ps2u.pdf のユーザーパスワード「abc」を解除します。印刷等のセキュリティ設定も解除します。解除した結果はPS-3Du.pdf  ファイルで出力します。

DownloadcLine-qpdfRemoveEncryption.xls

 

結果

▽実行前

Qpdf : PDFのパスワードとセキュリティ設定を解除するVBA関数

▽実行後

Qpdf : PDFのパスワードとセキュリティ設定を解除するVBA関数

▽ユーザーパスワードを間違った時に表示されるエラーメッセージ

・1行目はVBA関数からのメッセージ
・2行目からは Qpdf.exe からのエラーメッセージ

Qpdf : PDFのパスワードとセキュリティ設定を解除するVBA関数

 

備考

  • VBAのShell 関数の第一引数の文字数に制限が有るみたいだが、255文字で無いことは確かです。それよりも大きい数値でもOKです。
  • VBAのDir 関数でもファイルの存在チックが出来ますがパス長が256文字以上に未対応です。そこで "Scripting.FileSystemObject" のFileExists を使ってファイルの存在チェックを行います。Dir 関数は使わない方がいいです。

 

PDFのセキュリティ

 

< Qpdf へ戻る >

コメントを残す

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

CAPTCHA


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


SAMURAI Plugin

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

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