禁用在Microsoft Office interop FileSaveAs方法中覆盖现有文件提示

时间:2010-07-29 08:06:01

标签: c# interop office-interop ms-project

我正在使用Ms Office Interop程序集来创建MS Project文件。要保存创建的文件,我使用的是FileSaveAs方法,它会提示一条消息,说明是否要替换现有文件。 我想压缩消息,我没有在FileSaveAs方法中找到任何参数用于此目的。 有什么想法吗? 我使用C#作为我的编程语言。

2 个答案:

答案 0 :(得分:12)

使用Excel Interop时遇到了这个问题。我能找到的最好的是禁用所有 Office警报,如下所示:

Microsoft.Office.Interop.MSProject.Application msProjectApp = new Microsoft.Office.Interop.MSProject.Application();
msProjectApp.DisplayAlerts = false;

答案 1 :(得分:1)

永远不要双点COM对象,因为它们不会被释放,这将使excel在您的服务器上打开。不幸的是,由于这个原因,我已经崩溃了服务器。

private void InitialiseExcel()
{
    if (excelApp == null)
        excelApp = new Excel.Application();
    // Turn off User Prompts
    excelApp.DisplayAlerts = false;
    // Turn off screen updating so we do not get flicker
    var app = excelApp.Application;
    app.ScreenUpdating = false;
    // Specifies the state of the window;
    excelApp.WindowState = Excel.XlWindowState.xlMinimized;
    Marshal.ReleaseComObject(app);
}
相关问题