PDA

View Full Version : سوال: متوقف شدن پخش PowerPoint در هنگام خراج شدن Focus از شی مورد نظر



hesam.vb
چهارشنبه 17 مهر 1392, 10:28 صبح
using System.Diagnostics;
using System.Runtime.InteropServices;
using ppt = Microsoft.Office.Interop.PowerPoint;
using Microsoft.Office.Core;


[DllImport("user32.dll", EntryPoint = "FindWindow", SetLastError = true)]
static extern IntPtr FindWindow(IntPtr ZeroOnly, string lpWindowName);

[DllImport("user32.dll", SetLastError = true)]
static extern IntPtr SetParent(IntPtr hWndChild, IntPtr hWndNewParent);

[DllImport("user32.dll", SetLastError = true, CharSet = CharSet.Auto)]
public static extern bool SetWindowText(IntPtr hwnd, String lpString);

ppt.Presentation presentation;
Microsoft.Office.Interop.PowerPoint.SlideShowView oSlideShowView;
bool flag = false;

public void open(string FileName)
{
try
{
ppt.Application application;

// For Display in Panel
IntPtr screenClasshWnd = (IntPtr)0;
IntPtr x = (IntPtr)0;

application = new ppt.Application();

presentation = application.Presentations.Open(FileName, MsoTriState.msoTrue, MsoTriState.msoTrue, MsoTriState.msoFalse);

ppt.SlideShowSettings sst1 = presentation.SlideShowSettings;

sst1.LoopUntilStopped = Microsoft.Office.Core.MsoTriState.msoCTrue;

ppt.Slides objSlides = presentation.Slides;

sst1.LoopUntilStopped = MsoTriState.msoTrue;

sst1.StartingSlide = 1;

sst1.EndingSlide = objSlides.Count;

panel1.Dock = DockStyle.Fill;

sst1.ShowType = ppt.PpSlideShowType.ppShowTypeKiosk;

ppt.SlideShowWindow sw = sst1.Run();

oSlideShowView = presentation.SlideShowWindow.View;

IntPtr pptptr = (IntPtr)sw.HWND;

SetParent(pptptr, panel1.Handle);


}
catch (Exception)
{

throw;
}


}
private void Form3_Load(object sender, EventArgs e)
{
string FileName = "D:\\test.pptx";
open(FileName);
}

private void timer1_Tick(object sender, EventArgs e)
{
oSlideShowView.Next();
}


سلام خدمت همه دوستان
من از این سورس کد واسه پخش کردن فایل های اجرایی پاورپوینت استفاده کردم به مشکلی که برخوردم اینه که لحظه ای که focus از رو پخش کننده پاورپوینت بیرون میاد پخش کننده Puase میشه
چرا ؟
با تشکر

hamid_hr
چهارشنبه 17 مهر 1392, 10:46 صبح
ببخشيد
لطفا كدها رو داخل تگ c# بزاريد
ابتدا اون علامت C# رو از نوار ابزار انتخاب بعد كدها رو بين دو تگ ايجاد شده كپي كنيد
اينطوري كسي بخواد كمك كنه كدها رو نگاه ميكنه

hesam.vb
دوشنبه 29 مهر 1392, 12:32 عصر
از دوستان کسی نیست سردربیاره؟