2016-12-06 7 views
2

私は複数のワードファイル(1500以上)を持っており、それらをプログラム的にPDFに変換したいと思います。私は次の関数に複数のファイルを.docから.pdfに変換する

public static void convertor(string filename) 
{ 

    Microsoft.Office.Interop.Word.Application appWord = new Microsoft.Office.Interop.Word.Application(); 
    File.SetAttributes(filename, FileAttributes.Temporary); 
    wordDocument = appWord.Documents.Open(filename); 
    wordDocument.ExportAsFixedFormat(filename.ToString() + ".pdf", WdExportFormat.wdExportFormatPDF); 

} 

を使用しますが、私は、プログラムファイルのロックを解除するにはどうすればよい

enter image description here

ファイルごとに次のダイアログを取得しますか?

+0

interopは物事を適切に解放するためにおかげです。 interopをExcelに関連するが、使用するかもしれない:http://stackoverflow.com/questions/158706/how-to-properly-clean-up-excel-interop-objects – Kritner

答えて

2

読み取り専用フラグを渡すには、メソッド呼び出しをOpenに変更する必要があります。

appWord.Documents.Open(FileName:=filename, ReadOnly:=True); 

続きを読むMicrosoftで続きを読む。処理しているファイルの数が多いため、すぐにRAMが使い果たされるため、Wordのインスタンスを1つだけ開いて、完了したら明示的に閉じることができます。

+0

良い点、+1。 – ridoy

+0

これは機能しません。 – Hesham

0

私はすべてのファイルをシステムパーティションからリムーバブルフラッシュメモリに移動しています。

関連する問題