作者:高粱_ | 来源:互联网 | 2023-05-18 07:25
在使用VC控制Office时,找到一个例子工程,发现工程中有如下8个文件:excel.tlh,excel.tli,mso.tlh,mso.tli,msword.tlh,msword
在使用VC控制Office时, 找到一个例子工程, 发现工程中有如下8个文件:excel.tlh, excel.tli, mso.tlh, mso.tli, msword.tlh, msword.tli, vbe6ext.tlh, vbe6ext.tli.
原来这些是Office导出来的类库, 使用这些类库, 就可以在你的工程中操作Office了.
导出方法: 随便建一个MFC工程, 然后在stdfax.h文件中添加如下代码, 编译, 即可生成这8个文件(Debug版在Debug目录下; Release版在Release目录下).
// 导入Office的类型库#import "C:\\Program Files (x86)\\Common Files\\Microsoft Shared\\OFFICE12\\MSO.DLL" \
rename("RGB", "MSORGB")
// 导入VB的类型库
#import "C:\\Program Files (x86)\\Common Files\\Microsoft Shared\\VBA\\VBA6\\VBE6EXT.OLB"
// 导入Excel的类型库
#import "C:\\Program Files (x86)\\Microsoft Office\\Office12\\EXCEL.EXE" \
rename("RGB", "ExcelRGB") \
rename("ReplaceText", "ExcelReplaceText") \
rename("CopyFile", "ExcelCopyFile") \
rename("DialogBox", "ExcelDialogBox") \
no_auto_exclude
// 导入Word的类型库
#import "C:\\Program Files (x86)\\Microsoft Office\\Office12\\MSWORD.OLB" \
rename("ExitWindows", "WordExitWindows") \
rename("FindText", "WordFindText")
说明:
1. 无论是Debug版还是Release版, 这8个文件的对应内容是相同的, 但这些文件中使用了绝对路径, 所以路径不同.
2. 我们可以把这些绝对路径手动改为相对路径, 就可以跟着工程使用了.
3. 我使用的是Win7 + VS2008 + Office2007
参考:
http://www.cnblogs.com/xianyunhe/archive/2011/09/25/2190485.html
http://blog.csdn.net/zy_dreamer/article/details/8874853