private bool FillData () { String ControlFileName = null; if (IsDoubleClickRunMethode ()) ControlFileName = GetDoubleClickRunMethodeSTBFile (); String DataDirectoryForPlayingMaterial = m_StandBildPlayingData.NameOfAdditionalDataDirectoryForActiveDescription (WPMediaRoot, ControlFileName); List<String> PresentationFiles = WMB.Basics.GetFilesFromDirectory (DataDirectoryForPlayingMaterial, new String [] { "*.pps" }, 1); if (PresentationFiles.Count == 0) return false; if (!File.Exists (PresentationFiles [0])) { WMB.Basics.ReportErrorToEventViewer (m_MessageDescriptionID + ".FillData", "der Presentation File \"" + PresentationFiles [0] + "\" existiert nicht"); return false; } try { if (WMB.Basics.IsTestRun) WMB.Basics.ReportInformationToEventViewer (m_MessageDescriptionID + ".FillData", "Gestartet wird \"" + PresentationFiles [0] + "\""); m_ActivePresentationInfo = new Presentation_Info (PresentationFiles [0]); StartPresentationLoopForOneFile (); } catch (Exception Excp) { WMB.Basics.ReportErrorToEventViewer (m_MessageDescriptionID + ".FillData", "Folgender Fehler trat beim ControlFile \"" + ControlFileName + "\" bzw. beim Presentation File \"" + PresentationFiles [0] + "\" auf\":\r\n" + Excp.ToString()); return false; } return true; }
public Presentation_Info GetPlayableLength (String FileName) { if (!File.Exists (FileName)) return null; try { Presentation_Info PresentationInfo = new Presentation_Info (FileName); Presentation ActivePresentationInstance = m_PowerPoint.Presentations.Open (FileName, MsoTriState.msoTrue, MsoTriState.msoFalse, MsoTriState.msoFalse); _Presentation ActivePresentation = ActivePresentationInstance as _Presentation; PresEvents PresentationEvents = ActivePresentationInstance as PresEvents; int NumberOfSlides = ActivePresentation.Slides.Count; int RunningSlide = 1; while (RunningSlide <= NumberOfSlides) { Slide OneSlideInstance = ActivePresentation.Slides [RunningSlide]; _Slide OneSlide = OneSlideInstance as _Slide; SlideShowTransition TransitionObject = OneSlide.SlideShowTransition; double AdvanceTime = 4; if (TransitionObject.AdvanceTime > 0) AdvanceTime = TransitionObject.AdvanceTime; else TransitionObject.AdvanceTime = (float) AdvanceTime; PresentationInfo.m_PlayLengthPerSlide.Add (AdvanceTime); PresentationInfo.m_PlayLength += AdvanceTime; RunningSlide++; } return PresentationInfo; } catch (Exception Excp) { WMB.Basics.ReportErrorToEventViewer ("GetPlayableLength", "Es trat beim PowerPoint folgender Fehler auf:\r\n" + Excp.Message); return null; } }