我正在編寫一個應用程序,它使用Office 2010的PowerPoint互操作庫。它應該打開PowerPoint,加載演示文稿並等待用戶在進行更改後保存演示文稿。我希望應用程序在更新後將演示文稿上傳到服務器。未在C中發起的PowerPoint 2010事件#
我遇到的問題是PresentationSave
或PresentationBeforeSave
事件不會在保存演示文稿時觸發。
下面是我使用的代碼:
private void startPPT()
{
app = new ApplicationClass();
app.WindowState = PpWindowState.ppWindowMaximized;
app.Visible = MsoTriState.msoTrue;
app.PresentationBeforeSave += new EApplication_PresentationBeforeSaveEventHandler(app_PresentationBeforeSave);
app.PresentationSave += new EApplication_PresentationSaveEventHandler(app_PresentationSave);
Presentation ppt;
//check if it's pptx or ppt and open accordingly
FileInfo fi = new FileInfo(filename);
if (fi.Extension == ".pptx")
{
//version 2007
ppt = app.Presentations.Open2007(filename, MsoTriState.msoFalse, MsoTriState.msoFalse);
}
else
{
//version 2003 or older
ppt = app.Presentations.Open(filename, MsoTriState.msoFalse, MsoTriState.msoFalse);
}
}
void app_PresentationSave(Presentation Pres)
{
MessageBox.Show("Saved");
}
任何想法,爲什麼它不工作?
你的代碼爲我工作,謝謝 – 2013-09-04 08:25:24