2017-03-31 31 views
-1

私は約100のpdfファイルを持っているWindowsのディレクトリで、いくつかはパスワードで保護されていますが、そうではありません。 pdf-readerでそれぞれを開くことなくパスワードで保護されているものを見つけるには、簡単な方法(コマンドラインやフリーウェアツールを使って)がありますか?ディレクトリでパスワードで保護されたpdfファイルを見つける方法は?

答えて

0

Windowsを使用しているので、iTextSharpライブラリを使用してこれを実行できます。

まず、itextsharp-dll-coreアーカイブの中にあるitextsharp.dllを抽出します。

すると、次のPowerShellスクリプトを使用します。

Add-Type -Path .\itextsharp.dll 

Get-ChildItem -Filter *.pdf | 
ForEach-Object { 
    $filename = $_.Name 
    Try { 
     $pdf = New-Object iTextSharp.text.pdf.PdfReader($_.FullName) 
     If ($pdf.IsEncrypted()) { 
      $filename 
     } 
    } 
    Catch { 
     $filename 
    } 
} 

を出力を確保したり、暗号化された各PD​​Fの名前になります。

+0

ディレクトリにパスワードで保護されたファイルがない場合、スクリプトはうまく動作し、次のエラーが発生します。 'New-Object:" 1 "引数を持つ" .ctor " Bad User password " 行:4文字:22 + $ pdf = New-Object <<<< iTextSharp.text.pdf.PdfReader($ _。FullName) +カテゴリ情報:InvalidOperation:(:) [New-Object ]、MethodInvocationException + FullyQualifiedErrorId:ConstructorInvokedThrowException、Microsoft.PowerShell.Commands.NewObjectCommand' – Kodiak

+0

この問題を修正するスクリプトを更新しました。それが役に立ったら教えてください。 – msitt

関連する問題