单文档程序怎么打开或复制doc文档的内容?

yuanshengkj2009 2009-08-13 12:14:59
单文档程序怎么打开或复制doc文档的内容?请高手指点!!谢谢!!
...全文
517 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
jia_19853 2011-04-11
  • 打赏
  • 举报
回复
弹出对话框:word无法读取文档
jia_19853 2011-04-11
  • 打赏
  • 举报
回复
不行,word无法读取文档
雪影 2009-08-13
  • 打赏
  • 举报
回复
源代码见1楼的链接
yuanshengkj2009 2009-08-13
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 tttyd 的回复:]
#include  "msword9.h" 
 
  //初始化COM 
  if  (CoInitialize(NULL)!=0)   
  {   
  AfxMessageBox("初始化COM支持库失败!");   
  exit(1);   
  } 
                    _Application  WordApp; //代表WORD程序 
  Documents  docs; //代表一个WORD程序里的所有文档 
  _Document  doc; //代表一个文档 
 
  if(!WordApp.CreateDispatch("Word.Application",NULL))//创建一个新的word程序 
  { 
  AfxMessageBox("创建ms_word服务失败"); 
  exit(1); 
  } 
 
  //让用户能够查看自动化的过程 
  WordApp.SetVisible(true); 
  //让docs和word程序连接,docs代表word中所有文档 
  docs=WordApp.GetDocuments(); 
  COleVariant  covOptional((long)DISP_E_PARAMNOTFOUND,VT_ERROR); 
  //用docs来打开一个文档,并将句柄返回给doc 
  doc=docs.Add(COleVariant(".\\ox.doc"),covOptional,covOptional,covOptional); 
 
  Paragraph  paragraph;//用来表示文档中某一段 
  Paragraphs  paragraphs;//用来表示文档中所有段 
  paragraphs=doc.GetParagraphs(); 
  paragraph=paragraphs.GetFirst();//得到第一段 
  Range  r=paragraph.GetRange(); 
 
  r.SetText("中国");//用这种方式可以加入文本 
 
  //doc.Close(covOptional,covOptional,covOptional); 
  //WordApp.Quit(covOptional,covOptional); 
                    CoUninitialize();
[/Quote]
这个好像是不是程序本身打开DOC文档的吧?好像有很多问题哦,能不能发一份源码给我?yeyuanzhi2000@yahoo.com.cn谢谢!!
雪影 2009-08-13
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 yuanshengkj2009 的回复:]
有人说不能本身打开doc,那么http://www.yuanshengkj.com/bbs/topic.asp?topic_id=1860&forum_id=39里面的文档编辑器可以打开DOC文档,又是什么原理?是不是利用复制的方法。用VC怎么实现这一功能呢?谢谢!!
[/Quote]
vc 通过ms word的相关组件操作doc文件
雪影 2009-08-13
  • 打赏
  • 举报
回复
#include "msword9.h"

//初始化COM
if (CoInitialize(NULL)!=0)
{
AfxMessageBox("初始化COM支持库失败!");
exit(1);
}
_Application WordApp; //代表WORD程序
Documents docs; //代表一个WORD程序里的所有文档
_Document doc; //代表一个文档

if(!WordApp.CreateDispatch("Word.Application",NULL))//创建一个新的word程序
{
AfxMessageBox("创建ms_word服务失败");
exit(1);
}

//让用户能够查看自动化的过程
WordApp.SetVisible(true);
//让docs和word程序连接,docs代表word中所有文档
docs=WordApp.GetDocuments();
COleVariant covOptional((long)DISP_E_PARAMNOTFOUND,VT_ERROR);
//用docs来打开一个文档,并将句柄返回给doc
doc=docs.Add(COleVariant(".\\ox.doc"),covOptional,covOptional,covOptional);

Paragraph paragraph;//用来表示文档中某一段
Paragraphs paragraphs;//用来表示文档中所有段
paragraphs=doc.GetParagraphs();
paragraph=paragraphs.GetFirst();//得到第一段
Range r=paragraph.GetRange();

r.SetText("中国");//用这种方式可以加入文本

//doc.Close(covOptional,covOptional,covOptional);
//WordApp.Quit(covOptional,covOptional);
CoUninitialize();
yuanshengkj2009 2009-08-13
  • 打赏
  • 举报
回复
有人说不能本身打开doc,那么http://www.yuanshengkj.com/bbs/topic.asp?topic_id=1860&forum_id=39里面的文档编辑器可以打开DOC文档,又是什么原理?是不是利用复制的方法。用VC怎么实现这一功能呢?谢谢!!
雪影 2009-08-13
  • 打赏
  • 举报
回复
followme163 2009-08-13
  • 打赏
  • 举报
回复
用WebOffice控件即可,免费的
yuanshengkj2009 2009-08-13
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 tttyd 的回复:]
源代码见1楼的链接
[/Quote]
这个是别外打开的DOC文档,我的意思是程序本身能不能打开DOC文档,或者在WORD中复制到程序中

16,472

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧