public string GenerateThumb(MediaFileItem mediaFile) { using (new Tracer(mediaFile)) { try { var doc = new Microsoft.Office.Interop.Word.Application().Documents.Open(FileName: mediaFile.MediaLocation, Visible: false, ReadOnly: true); doc.ShowGrammaticalErrors = false; doc.ShowRevisions = false; doc.ShowSpellingErrors = false; byte[] bytes = doc.Range().EnhMetaFileBits; Image page = Image.FromStream(new MemoryStream(bytes)); doc.Close(WdSaveOptions.wdDoNotSaveChanges); Helper.Helper.GetThumb(page, mediaFile.Width, mediaFile.Height); } catch (Exception ex) { } return(_wordThumbPath); } }
private static void printExceptiontoDoc(Exception e) { WinWord.Document d = new WinWord.Application().Documents.Add(); int paraIndex = 0; d.Range().Text = "e.Message:"; //p1 d.Paragraphs[++paraIndex].set_Style("標題 5"); d.Range().InsertParagraphAfter(); //p2 d.Paragraphs[++paraIndex].Range.Text = e.Message; d.Range().InsertParagraphAfter(); //03 d.Paragraphs[++paraIndex].Range.Text = "e:"; d.Paragraphs[paraIndex].set_Style("標題 5"); d.Range().InsertParagraphAfter();//p4 d.Paragraphs[++paraIndex].Range.Text = e.ToString(); d.Range().InsertParagraphAfter();//p5 d.Paragraphs[++paraIndex].Range.Text = "e.Data:"; d.Paragraphs[paraIndex].set_Style("標題 5"); d.Range().InsertParagraphAfter();//p6 d.Paragraphs[++paraIndex].set_Style("內文"); d.Paragraphs[++paraIndex].Range.Text = e.Data.ToString(); d.Range().InsertParagraphAfter();//p7 d.Paragraphs[++paraIndex].Range.Text = "e.Source:"; d.Paragraphs[paraIndex].set_Style("標題 5"); d.Range().InsertParagraphAfter();//p8 d.Paragraphs[++paraIndex].Range.Text = e.Source; d.Range().InsertParagraphAfter();//p9 d.Paragraphs[++paraIndex].Range.Text = "e.HelpLink:"; d.Paragraphs[paraIndex].set_Style("標題 5"); d.Range().InsertParagraphAfter();//p10 d.Paragraphs[++paraIndex].Range.Text = e.HelpLink; d.Range().InsertParagraphAfter();//p11 d.Paragraphs[++paraIndex].Range.Text = "e.InnerException:"; d.Paragraphs[paraIndex].set_Style("標題 5"); d.Range().InsertParagraphAfter();//p12 Exception ee = e.InnerException ?? null; if (ee != null) { d.Paragraphs[++paraIndex].Range.Text = ee.ToString(); } else { d.Paragraphs[++paraIndex].Range.Text = "null"; } d.Range().InsertParagraphAfter();//p13 d.Paragraphs[++paraIndex].Range.Text = "e.HResult:"; d.Paragraphs[paraIndex].set_Style("標題 5"); d.Range().InsertParagraphAfter();//p14 d.Paragraphs[++paraIndex].Range.Text = e.HResult.ToString(); d.Range().InsertParagraphAfter();//p15 d.Paragraphs[++paraIndex].Range.Text = "e.StackTrace:"; d.Paragraphs[paraIndex].set_Style("標題 5"); d.Range().InsertParagraphAfter();//p16 d.Paragraphs[++paraIndex].Range.Text = e.StackTrace; d.Range().InsertParagraphAfter();//p17 d.Paragraphs[++paraIndex].Range.Text = "e.TargetSite:"; d.Paragraphs[paraIndex].set_Style("標題 5"); d.Range().InsertParagraphAfter();//p18 d.Paragraphs[++paraIndex].set_Style("內文"); d.Paragraphs[++paraIndex].Range.Text = e.TargetSite.ToString(); /* * d.Range().Text = e.Message + "\n\r\n\r" + * e.Data + "\n\r\n\r" + e.Data + * "\n\r\n\r" + e.Source + "\n\r\n\r" + * e.HelpLink + "\n\r\n\r" + e.HResult + "\n\r\n\r" + * e.InnerException + "\n\r\n\r" + * e.StackTrace + "\n\r\n\r" + * e.TargetSite + "\n\r\n\r" + e.ToString(); */ d.ActiveWindow.Visible = true; d.Application.Activate(); }