![](/img/trans.png)
[英]How to know whether cancel button is clicked in Save Prompt dialog box , when we try to close Unsaved Word document in C#
[英]using word in c# why always show 'save as' dialog when close
我正在研究一些試圖將Word文檔轉換為swf文件的代碼。
我是這樣做的:
我是在我的計算機上完成的(64位,Windows Server 2008 R2,Office 2010),它工作正常,但當我把它放在服務器(64位,Windows Server 2008 R2,Office2010)中時,“另存為”對話框將顯示代碼試圖在程序中關閉Word時,以及是否單擊“保存”或“取消”,它將拋出異常“文件是只讀”。 但實際上,我沒有更改原始文件,我只是打開它並將其保存為PDF文檔。
這是代碼'將Word轉換為PDF':
bool ret = true;
Microsoft.Office.Interop.Word.Application newApp = new Microsoft.Office.Interop.Word.Application();
Microsoft.Office.Interop.Word.Document doc = null;
object Unknown = Type.Missing;
try
{
object Source = path;
object Target = path.Substring(0, path.LastIndexOf(".")) + ".pdf";
if (outpath != "")
Target = outpath;
object readOnly = true;
object format = Microsoft.Office.Interop.Word.WdSaveFormat.wdFormatPDF;
doc = newApp.Documents.Open(ref Source, ref Unknown, ref readOnly,
ref Unknown, ref Unknown, ref Unknown, ref Unknown, ref Unknown, ref Unknown,
ref Unknown, ref Unknown, ref Unknown, ref Unknown, ref Unknown, ref Unknown, ref Unknown);
doc.SaveAs(ref Target, ref format,
ref Unknown, ref Unknown, ref Unknown, ref Unknown, ref Unknown, ref Unknown, ref Unknown,
ref Unknown, ref Unknown, ref Unknown, ref Unknown, ref Unknown, ref Unknown, ref Unknown);
}
catch (Exception e)
{
ret = false;
}
finally
{
if (doc != null)
{
doc.Close(ref Unknown, ref Unknown, ref Unknown);
//dialog shows up here
}
newApp.Quit(ref Unknown, ref Unknown, ref Unknown);
GC.Collect();
}
return ret;
有什么建議么?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.