私は C# と Asp.net を初めて使用します。
私の Web アプリは、フォルダーに pdf (iTextSharp) ファイルを作成し、結果を別の Web ページに投稿します。誰かがページに戻って、同じ名前の新しい pdf (変更済み) を再作成すると、次のエラーが表示されます。
別のプロセスで使用されているため、プロセスはファイル 'C:\inetpub\wwwroot\RAPC\PDF\10-2012_file1.pdf' にアクセスできません。
説明: 現在の Web 要求の実行中に未処理の例外が発生しました。エラーの詳細とコード内のどこでエラーが発生したかについては、スタック トレースを確認してください。
例外の詳細: System.IO.IOException: 別のプロセスで使用されているため、プロセスはファイル 'C:\inetpub\wwwroot\RAPC\PDF\10-2012_file1.pdf' にアクセスできません。
ソース エラー: 132 行目:
FileStream stream = new FileStream(path + "/" + subdata + "_" + CodCli + "_" + DrR1_2 + "_" + G_S_2 + "_" + Data_2 + ".pdf", FileMode.Create);*
私のコード:
// Filestream and PDF create
FileStream stream = new FileStream(path + "/" + subdata + "_" + CodCli + "_" + DrR1_2 + "_" + G_S_2 + "_" + Data_2 + ".pdf", FileMode.Create);
PdfWriter.GetInstance(doc, stream);
doc.Open();
// Table
PdfPTable tableX = new PdfPTable(2);
PdfPCell cell = new PdfPCell();
tableX.WidthPercentage = 100;
tableX.DefaultCell.Border = 0;
cell.AddElement(image);
cell.PaddingLeft = 30f;
cell.Border = 0;
tableX.AddCell(cell);
...
doc.Close();
stream.Close();
スクリーンショット: https://docs.google.com/open?id=0ByUzt8ssZaf7Z2YtVXlnRmo3SGM
PDF が w3p IIS ワーカー プロセスによってロックされているようです。数分後、ファイルは通常の状態に戻ります。
ユーザーが PDF を変更して再保存できるように、PDF ファイルのロックを即座に解除したいと思います。
ありがとうございました