У меня есть простое приложение, написанное на C # и .Net 2.0, которое отображает несколько файлов PowerPoint 2003 в цикле. (Он будет использоваться для информационной доски в нашей столовой). Приложение отлично работает на моей машине для разработки, но когда я разверну его на другой машине, события, которые я зарегистрировал для SlideShowNextSlide и PresentationClose, никогда не запускаются. Я попытался зарегистрировать события с помощью этого метода.
private void InitPPT()
{
app.SlideShowNextSlide += new Microsoft.Office.Interop.PowerPoint.EApplication_SlideShowNextSlideEventHandler(app_SlideShowNextSlide);
app.PresentationClose += new Microsoft.Office.Interop.PowerPoint.EApplication_PresentationCloseEventHandler(app_PresentationClose);
app.SlideShowEnd += new Microsoft.Office.Interop.PowerPoint.EApplication_SlideShowEndEventHandler(app_PresentationClose);
}
И с помощью этого метода, который я нашел здесь :
private void InitPPT()
{
IConnectionPointContainer oConnPointContainer = (IConnectionPointContainer)app;
Guid guid = typeof(Microsoft.Office.Interop.PowerPoint.EApplication).GUID;
oConnPointContainer.FindConnectionPoint(ref guid, out m_oConnectionPoint);
m_oConnectionPoint.Advise(this, out m_Cookie);
}
Нужно ли регистрировать некоторые DLL на клиентском компьютере или я что-то упустил?