⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ppt2kaddin.cpp

📁 让powerpoint支持插入internet资源
💻 CPP
字号:
// PPT2KAddin.cpp : Implementation of CPPT2KAddin
#include "stdafx.h"
#include "PPTAddin.h"
#include "PPT2KAddin.h"

/////////////////////////////////////////////////////////////////////////////
// CPPT2KAddin
// 按钮事件响应信息定义
_ATL_FUNC_INFO OnClickButtonInfo = {CC_STDCALL,VT_EMPTY,2,{VT_DISPATCH,VT_BYREF | VT_BOOL}};


STDMETHODIMP CPPT2KAddin::InterfaceSupportsErrorInfo(REFIID riid)
{
	static const IID* arr[] = 
	{
		&IID_IPPT2KAddin
	};
	for (int i=0; i < sizeof(arr) / sizeof(arr[0]); i++)
	{
		if (InlineIsEqualGUID(*arr[i],riid))
			return S_OK;
	}
	return S_FALSE;
}
// 工具栏按钮单击事件响应涵数
void __stdcall CPPT2KAddin::OnButtonInsertInternetRes(IDispatch* /*Office::_CommandBarButton* */ Ctrl,VARIANT_BOOL * CancelDefault)
{
	USES_CONVERSION;
	CComQIPtr<Office::_CommandBarButton> pCommandBarButton(Ctrl);
//	HINSTANCE result=ShellExecute(NULL, _T("open"), _T("http://www.163.com"), NULL,NULL, SW_SHOW);
    int i;
	for(i=0;i<IECount;i++){
		if(myIE[i]==NULL){
			 //创建监听对象
	         myIE[i]=new CIEComCtrlSink();
             //监听IE,并且加载测试页
			 myIE[i]->MyAdviseSink();
			 break;
		}else{	 
			//如果没有正在监听,可调用MyAdviseSink使其重新监听
			if(!myIE[i]->bSinking){
				delete myIE[i];
				 //创建监听对象
				 myIE[i]=new CIEComCtrlSink();
				 //监听IE,并且加载测试页
				 myIE[i]->MyAdviseSink();
				break;
			}
		}
	}
	if(i==IECount){
      AfxMessageBox(_T("不能建立更多与IE的连接,\n超过了系统最大同时连接数目。"));
	}
}
// 菜单命令按钮单击事件响应涵数
void __stdcall CPPT2KAddin::OnMenuInsertInternetRes(IDispatch* /*Office::_CommandBarButton* */ Ctrl,VARIANT_BOOL * CancelDefault)
{
	USES_CONVERSION;
	CComQIPtr<Office::_CommandBarButton> pCommandBarButton(Ctrl);
	//HINSTANCE result=ShellExecute(NULL, _T("open"), _T("http://www.21cn.com"), NULL,NULL, SW_SHOW);
    int i;
	for(i=0;i<IECount;i++){
		if(myIE[i]==NULL){
			 //创建监听对象
	         myIE[i]=new CIEComCtrlSink();
             //监听IE,并且加载测试页
			 myIE[i]->MyAdviseSink();
			 break;
		}else{	 
			//如果没有正在监听,可调用MyAdviseSink使其重新监听
			if(!myIE[i]->bSinking){
				delete myIE[i];
				 //创建监听对象
				 myIE[i]=new CIEComCtrlSink();
				 //监听IE,并且加载测试页
				 myIE[i]->MyAdviseSink();
				break;
			}
		}
	}
	if(i==IECount){
      AfxMessageBox(_T("不能建立更多与IE的连接,\n超过了系统最大同时连接数目。"));
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -