首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ Builder >

用C++ Builder 6 连接word时出现有关问题,

2013-01-06 
用C++ Builder 6 连接word时出现问题,求助啊,在线等!!!我的目的是将Memo中的内容传输到word中,代码如下:in

用C++ Builder 6 连接word时出现问题,求助啊,在线等!!!
我的目的是将Memo中的内容传输到word中,代码如下:
        int ii;
        Variant V;

        V = CreateOleObject("Word.Basic");
        V.Exec(Procedure("AppShow"));
        V.Exec(Procedure("FileNew")<<"Normal");

        for(ii=0;ii<<Memo1->Lines->Count;ii++)
            V.Exec(Procedure("Insert")<<Memo1->Lines->Strings[ii]+"\r\n");


做完之后不报错。但是运行时,虽然可以打开word,但是word里是空白的~~而且程序报错如下图:
求解决方法啊,,百度了一下,是不是非法写入?不会解决~~~在线等~~~感谢各位大牛啦!!!
用C++ Builder 6 连接word时出现有关问题,
[解决办法]
我找了个Office2003的环境试了下,果然会出错,可能是Insert操作引起的。为了兼容性,我给你一段代码:

Variant v = CreateOleObject("Word.Application");
v.OlePropertySet("Visible", true);
v.OlePropertyGet("Documents").OleFunction("Add");

Variant vSelect = v.OlePropertyGet("Selection");

for (int i = 0; i < Memo1->Lines->Count; i++)
{
    vSelect.OleProcedure("TypeText", WideString(Memo1->Lines->Strings[i]));
    vSelect.OleProcedure("TypeParagraph");
}

热点排行