私はWindowsサービスを持っています。そして、サービスの開始時に以下の関数が呼び出されます。
static public void SaveXpsPageToJpeg(string xpsFileName, int[] pages){
using (XpsDocument xpsDoc = new XpsDocument(xpsFileName, System.IO.FileAccess.Read)){
FixedDocumentSequence docSeq = xpsDoc.GetFixedDocumentSequence();
DocumentPaginator paginator = docSeq.DocumentPaginator;
// You can get the total page count from docSeq.PageCount
foreach(int pageNum in pages){
using (DocumentPage docPage = paginator.GetPage(pageNum)){
BitmapImage bitmap = new BitmapImage();
RenderTargetBitmap renderTarget =
new RenderTargetBitmap((int)docPage.Size.Width,
(int)docPage.Size.Height,
96, // WPF (Avalon) units are 96dpi based
96,
System.Windows.Media.PixelFormats.Default);
renderTarget.Render(docPage.Visual);
JpegBitmapEncoder encoder = new JpegBitmapEncoder(); // Choose type here ie: JpegBitmapEncoder, etc
encoder.Frames.Add(BitmapFrame.Create(renderTarget));
using (FileStream pageOutStream = new FileStream(xpsDoc + ".Page" + pageNum + ".jpg", FileMode.Create, FileAccess.Write)){
encoder.Save(pageOutStream);
pageOutStream.Close();
}
}
}
}
}
同じコードが WPF アプリケーションで完全に実行されます。しかし、サービスで同じものをデバッグすると、例外がスローされます
例外と内部の詳細のスクリーンショットも追加しました
http://imageshack.us/photo/my-images/62/97453717.png/
http://imageshack.us/photo/my-images/850/95569721.jpg/
構成マネージャーでX64、X86、およびAnyCPUも変更してみました
Visual Studio 2010、.Net Framework 4 を使用しています
誰でもここで助けてもらえますか