开发环境WINXP,VC6.0,OFFICE 2003。
创建CreatWord对话框工程,在资源视图中添加一个按钮控件生成WORD文档。在CreatWord文件夹下创建一个word模板report.dot,添加一个图片文件temp1.jpg。在word模板中插入标签。
在这里插入图片描述
1、在工具栏中找到 view -> class wizard -> Automation -> add class -> from a tye library选中 offfice 安装的目录中的 MSWORD.OLB ,选中所有列出的类名,点击 OK 完成。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2、在CreatWord.h头文件中添加
#include “msword.h”
#include “comutil.h”
#include “comdef.h”

3、在按钮双击事件响应函数中代码如下:

int state=0;
void CCreatWordDlg::OnButton1() 
{
  // TODO: Add your control notification handler code here
  AfxEnableControlContainer();   
  AfxOleInit();
  _Application m_wdApp;  	
 if (!m_wdApp.CreateDispatch("Word.Application"))
 {
 AfxMessageBox(_T("请先安装Office软件!"));
 return ;
 }  

  if (state==1)
  {
  	AfxMessageBox(_T("word已生成!"));
    return;
  }

   char pBuf[250];
GetCurrentDirectory(250,pBuf);
CString CStr=pBuf;
CString CStr1=CStr+"\\report.dot";//word模板名
CString CStr2=CStr+"\\temp1.jpg";//插入图片名
CString CStr3=CStr+"\\test.doc";//生成文档名

      COleVariant covTrue((short)TRUE),
      covFalse((short)FALSE),
      covOptional((long)DISP_E_PARAMNOTFOUND, VT_ERROR),
      dot(_T(CStr1));

m_wdApp.GetVisible();
Documents docs=m_wdApp.GetDocuments();
_Document docx = docs.Add(dot, covOptional, covOptional, covOptional); Bookmarks bookmarks= docx.GetBookmarks();

Bookmark bookmark = bookmarks.Item(&_variant_t(_T("产品型号")));//插入文字
Range range;
range = bookmark.GetRange();
range.SetText("2021_4_16");

bookmark = bookmarks.Item(&_variant_t(_T("图像")));//插入图片
range = bookmark.GetRange();	
InlineShapes ishaps = range.GetInlineShapes();
InlineShapes ishap = ishaps.AddPicture(_T(CStr2), covFalse, covTrue, covOptional);

docx.SaveAs(COleVariant(CStr3), covOptional, covOptional, covOptional, covOptional,//保存文档
      covOptional, covOptional, covOptional, covOptional, covOptional, covOptional, covOptional, covOptional, covOptional, covOptional, covOptional);

docx.Close(covFalse, covOptional, covOptional);
m_wdApp.Quit(covOptional, covOptional, covOptional);
range.ReleaseDispatch();
bookmarks.ReleaseDispatch();
m_wdApp.ReleaseDispatch();

AfxMessageBox(_T("word文档test.doc生成成功!"));
state=1;
}

运行程序点击生成WORD文档按钮在CreatWord文件夹下将生成test.doc文件。
在这里插入图片描述

打开test.doc文件
在这里插入图片描述源码下载
https://download.csdn.net/download/weixin_42350092/87663041

更多推荐