Я пишу приложение, которое использует библиотеку взаимодействия PowerPoint для Office 2010. Предполагается, что он откроет PowerPoint, загрузит презентацию и подождет, пока пользователь сохранит презентацию после внесения изменений.Я хочу, чтобы приложение загружало презентацию на сервер после обновления.
Проблема, с которой я столкнулся, заключается в том, что события 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");
}
Есть идеи, почему он не работает?