我正在尝试在我的WPF应用程序中嵌入PowerPoint Viewer 2007。我设法使用Process使用指定的文件启动查看器,并使用SetParent和此类WinAPI命令将其放入我的应用程序窗口。但是我的应用程序窗口中的幻灯片显示总是被部分删除,因为我的应用程序窗口不是全屏,不幸的是PowerPoint Viewer总是全屏启动。我知道如何调整幻灯片的大小以便它在我的窗口中显示得很好吗?
到目前为止,这是我的代码。
Process proc = Process.Start(new ProcessStartInfo(){ FileName = "C:\\Program Files\\Microsoft Office\\Office12\\PptView.exe", Arguments="/S" + "\"" + "C:\\Test.ppt" + "\"", WindowStyle=ProcessWindowStyle.Minimized});
System.Threading.Thread.Sleep(1000);
SetParent(proc.MainWindowHandle, myWindowHandle);
SendMessage(proc.MainWindowHandle, WM_SYSCOMMAND, SC_MAXIMIZE, 0);
SetWindowPos(proc.MainWindowHandle, (IntPtr)0, 0, 0, 800, 600, SWP_FRAMECHANGED);
InvalidateRect(myWindowHandle, IntPtr.Zero, false);
希望有人可以提供帮助。非常感谢...
答案 0 :(得分:0)
你为什么不尝试MoveWindow(proc.MainWindowHandle,0,0,600,600,true);?我有问题做类似的事情,但用Word。 SetWindowPos没有将屏幕定位在我想要的位置。