用VC写的一个对话框中想嵌入PowerPoint,如何实现?

VincintCao 2003-01-04 01:25:51
嵌入PowerPointer或officeXP的其他产品,然后自己添加按钮来实现相应功能。如何实现?最好能说得详细一点。推荐一些相关联结也好。
...全文
257 点赞 收藏 9
写回复
9 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
zzzmad 2003-05-19
顶一下!
回复
VincintCao 2003-01-07
经过我的查询,我已经知道了核心部分的解决方法和一些查询方法,公布一下:
1、缺省情况下app的Visible属性是FALSE的,调用SetVisible(TRUE)只是为了让app显示,而如果不调用的话,就是不显示的。
2、为了让PPT嵌入到你的对话框中,就要加下面两句。
HWND hWnd = ::FindWindow( "screenClass", 0 );
::SetParent( hWnd, GetSafeHwnd() );
3、相关资料可以在微软的网站上找到,但是,全是以VB的方式给出的。相信要看懂它,对于VC的程序员来说,难度不会太大。
(不要在自己的MSDN里面找,我找过,找不到,要在微软网站上的MSDN上)
MSDN Library里面
-Office Solutions Development
-Microsoft Office XP
-VBA Language Reference
-Microsoft PowerPoint Visual Basic Reference
+Objects
+Methods
+Properties
+Events
......

非常感谢关注和帮助的人。
回复
gieroland 2003-01-07
up
回复
warton 2003-01-06
不清楚,关注!!
回复
VincintCao 2003-01-06
To qing_li73(bluemoon):
感谢关注及帮助,这样的例子我也有,我比较疑惑的是:
void CPowerPntDlg::OnBtnStart()
{
// Start PowerPoint and get Application object...
if(!app.CreateDispatch("Powerpoint.Application"))
{
AfxMessageBox("Couldn't start PowerPoint.");
}
else // Make PowerPoint visible and display a message
{
app.SetVisible(TRUE);
TRACE("PowerPoint is Running!");
}
}
就是这句app.SetVisible(TRUE)。
上面的例子只是通过一个对话框去启动一个ppt的app,并作相应操作,而我所要达到的效果是让ppt的页面嵌入到我的对话框当中,并由我控制。我尝试将app.SetVisible(TRUE)改成app.SetVisible(FALSE),就会抛出异常,错误信息是
“Application.Visible:Invalid request. Hiding the application window is not allowed.”这真奇怪,若是不能将applicationwindow设置成不可见的话,为什么要提供这么个SetVisible呢?
回复
VincintCao 2003-01-06
刚才那个邮箱不好,换一个
mitree@21cn.com
回复
VincintCao 2003-01-06
太感谢了!!!!!
vincintcao@szkdc.com
回复
qing_li73 2003-01-06
See the tutorial below, FYI:

http://www.codeproject.com/com/OLE_Automation.asp
回复
CaptainIII 2003-01-06
可以实现,而且m$有例子,email,我给你发一个
回复
相关推荐
发帖
ATL
创建于2007-09-28

3214

社区成员

ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
申请成为版主
帖子事件
创建了帖子
2003-01-04 01:25
社区公告
暂无公告