vc进行office(word)编程之一:开启vc与office接口编程的大门
2010-09-10 09:24
621 查看
第一步:将word的接口类导入进来
如果是vc6.0
1、点View菜单中的ClassWizard(或按CTRL+W)
2. 选择Automation标签,点Add Class并选择"From a type library" 浏览并选择你希望自动化的对象库(例如,如果你自动化word2003, 则选择MSWord对象库,默认位于 C:/Program Files/Microsoft Office/Office11/MSWORD.olb).
如果是vc.net
1、点Project菜单中的Add Class
2.在Add Class对话框中,选择"From a type library"(类型库中的确MFC类),打开后出现从类型库添加类向导对话框,然后从以下来源添加类选择“文件”,在位置中添加C:/Program Files/Microsoft Office/Office11/MSWORD.olb).
3.根据需要相应的接口,将自动生成所需要的接口类
这样就把相应的word接口类导入到wc环境中了。
第二步:如何初始化所加载的COM
所加载的COM接口,在没有进行初始化程序时,将无法正确运行,因此需要在程序的入口对COM进行初始化,如:
在 CAutoProjectApp::InitInstance() 函数中添加如下代码,用于加载COM支持库:BOOL CAutoProjectApp::InitInstance()
{
if(!AfxOleInit()) // Your addition starts here
{
AfxMessageBox("Could not initialize COM dll");
return FALSE;
} // End of your addition
AfxEnableControlContainer();
.
.
.
}
这样程序就可以正常使用了。接下来怎样操作,请看下回分解...
附录:
下表包含了Microsoft Office应用程序类型库的名称。
应用程序(Application) 类型库(Type Library)
--------------------------------------------------------
Microsoft Access 97 Msacc8.olb
Microsoft Jet Database 3.5 DAO350.dll
Microsoft Binder 97 Msbdr8.olb
Microsoft Excel 97 Excel8.olb
Microsoft Graph 97 Graph8.olb
Microsoft Office 97 Mso97.dll
Microsoft Outlook 97 Msoutl97.olb
Microsoft PowerPoint 97 Msppt8.olb
Microsoft Word 97 Msword8.olb
Microsoft Access 2000 Msacc9.olb
Microsoft Jet Database 3.51 DAO360.dll
Microsoft Binder 2000 Msbdr9.olb
Microsoft Excel 2000 Excel9.olb
Microsoft Graph 2000 Graph9.olb
Microsoft Office 2000 Mso9.dll
Microsoft Outlook 2000 Msoutl9.olb
Microsoft PowerPoint 2000 Msppt9.olb
Microsoft Word 2000 Msword9.olb
Microsoft Access 2002 Msacc.olb
Microsoft Excel 2002 Excel.exe
Microsoft Graph 2002 Graph.exe
Microsoft Office 2002 MSO.dll
Microsoft Outlook 2002 MSOutl.olb
Microsoft PowerPoint 2002 MSPpt.olb
Microsoft Word 2002 MSWord.olb
Microsoft Office Access 2003 Msacc.olb
Microsoft Office Excel 2003 Excel.exe
Microsoft Graph 2003 Graph.exe
Microsoft Office 2003 MSO.dll
Microsoft Office Outlook 2003 MSOutl.olb
Microsoft Office PowerPoint 2003 MSPpt.olb
Microsoft Office Word 2003 MSWord.olb
提示:除了 Dao350.dll 、Dao360.dll和 Microsoft Office 10(MSO.dll),类型库默认位于: C:/Program Files/Microsoft Office/Office (Office 2002 路径是 C:/.../Office10,Office 2003 路径是 C:/.../Office11), Dao350.dll/Dao360.dll 默认位于 C:/Program Files/Common Files/Microsoft Shared/Dao。 Office 2002 的MSO.dll 默认 C:/Program Files/Common Files/Microsoft Shared/Office10, Office 2003 的MSO.dll位于 C:/Program Files/Common Files/Microsoft Shared/Office11
如果是vc6.0
1、点View菜单中的ClassWizard(或按CTRL+W)
2. 选择Automation标签,点Add Class并选择"From a type library" 浏览并选择你希望自动化的对象库(例如,如果你自动化word2003, 则选择MSWord对象库,默认位于 C:/Program Files/Microsoft Office/Office11/MSWORD.olb).
如果是vc.net
1、点Project菜单中的Add Class
2.在Add Class对话框中,选择"From a type library"(类型库中的确MFC类),打开后出现从类型库添加类向导对话框,然后从以下来源添加类选择“文件”,在位置中添加C:/Program Files/Microsoft Office/Office11/MSWORD.olb).
3.根据需要相应的接口,将自动生成所需要的接口类
这样就把相应的word接口类导入到wc环境中了。
第二步:如何初始化所加载的COM
所加载的COM接口,在没有进行初始化程序时,将无法正确运行,因此需要在程序的入口对COM进行初始化,如:
在 CAutoProjectApp::InitInstance() 函数中添加如下代码,用于加载COM支持库:BOOL CAutoProjectApp::InitInstance()
{
if(!AfxOleInit()) // Your addition starts here
{
AfxMessageBox("Could not initialize COM dll");
return FALSE;
} // End of your addition
AfxEnableControlContainer();
.
.
.
}
这样程序就可以正常使用了。接下来怎样操作,请看下回分解...
附录:
下表包含了Microsoft Office应用程序类型库的名称。
应用程序(Application) 类型库(Type Library)
--------------------------------------------------------
Microsoft Access 97 Msacc8.olb
Microsoft Jet Database 3.5 DAO350.dll
Microsoft Binder 97 Msbdr8.olb
Microsoft Excel 97 Excel8.olb
Microsoft Graph 97 Graph8.olb
Microsoft Office 97 Mso97.dll
Microsoft Outlook 97 Msoutl97.olb
Microsoft PowerPoint 97 Msppt8.olb
Microsoft Word 97 Msword8.olb
Microsoft Access 2000 Msacc9.olb
Microsoft Jet Database 3.51 DAO360.dll
Microsoft Binder 2000 Msbdr9.olb
Microsoft Excel 2000 Excel9.olb
Microsoft Graph 2000 Graph9.olb
Microsoft Office 2000 Mso9.dll
Microsoft Outlook 2000 Msoutl9.olb
Microsoft PowerPoint 2000 Msppt9.olb
Microsoft Word 2000 Msword9.olb
Microsoft Access 2002 Msacc.olb
Microsoft Excel 2002 Excel.exe
Microsoft Graph 2002 Graph.exe
Microsoft Office 2002 MSO.dll
Microsoft Outlook 2002 MSOutl.olb
Microsoft PowerPoint 2002 MSPpt.olb
Microsoft Word 2002 MSWord.olb
Microsoft Office Access 2003 Msacc.olb
Microsoft Office Excel 2003 Excel.exe
Microsoft Graph 2003 Graph.exe
Microsoft Office 2003 MSO.dll
Microsoft Office Outlook 2003 MSOutl.olb
Microsoft Office PowerPoint 2003 MSPpt.olb
Microsoft Office Word 2003 MSWord.olb
提示:除了 Dao350.dll 、Dao360.dll和 Microsoft Office 10(MSO.dll),类型库默认位于: C:/Program Files/Microsoft Office/Office (Office 2002 路径是 C:/.../Office10,Office 2003 路径是 C:/.../Office11), Dao350.dll/Dao360.dll 默认位于 C:/Program Files/Common Files/Microsoft Shared/Dao。 Office 2002 的MSO.dll 默认 C:/Program Files/Common Files/Microsoft Shared/Office10, Office 2003 的MSO.dll位于 C:/Program Files/Common Files/Microsoft Shared/Office11
相关文章推荐
- VC进行Office(word)编程
- (非常好的Word操作封装类)VC中进行office编程的-操作word,可以设置文字的样式,新建表格
- 运用VC或Java对Office进行编程操作
- 运用VC或Java对Office进行编程操作
- 运用VC或Java对Office进行编程操作
- VC中进行Office编程
- 未开启自定义菜单 由于开发者通过接口修改了菜单配置,当前菜单配置已失效并停用。你可以前往开发者中心进行停用。
- vc++网络安全编程范例(21)用CryptoAPI进行数据加密
- Office编程在dot Net环境中总结(Word生成表格报表篇) (一)
- 在服务器上使用第三方独立组件对Word/Excel进行编程 .
- 用VC进行屏幕截取编程
- mybatis --- 以接口的方式进行编程
- 无法将类型为“Microsoft.Office.Interop.Word.ApplicationClass”的 COM 对象强制转换为接口类型“Microsoft.Office.Interop.Word._Application”
- Office编程在dot Net环境中总结(Word生成表格报表篇)
- 用VC进行屏幕截取编程
- 使用C#进行Word 2002和Excel 2002编程
- System.InvalidCastException: 无法将类型为“Microsoft.Office.Interop.Word.ApplicationClass”的 COM 对象强制转换为接口类型“Microsoft.Office.Interop.Word._Application”。
- 使用.Net访问Office编程接口
- 利用vc++中的winInet进行网络编程实现了下载网站的源代码
- [IE编程] IE中对网页进行截图的编程接口