• CB2010连接WORD


    文字初步识别OK,下来就该生成WORD、PDF、文本文件

    先解决WORD问题

    这个在之前曾经做过,只不过是转到CB2010下来再做一遍,应该简单。

    用COM还是直接用控件呢,从省事的角度,当然先用控件。

    从最简单的开始做,新建一个工程。然后,然后就卡壳了。

    居然找不到TWordApplication控件!!!

    在IDE中加入Office 2000包

    显示已安装N多个组件

    在工具条中也显示出了组件

    但是,凡事写了个但是就会有转折:切换到Design模式下,这些组件都不见了!!

    这叫人情何以堪。

    那就先转个方向,先用代码来实现吧。

    加入头文件

    // ---------------------------------------------------------------------------

     

    #include <vcl.h>

    #pragma hdrstop

     

    #include "Unit1.h"

    #include "Word_2K_SRVR.h"

    #pragma resource "*.dfm"

    TForm1 *Form1;

     

    // ---------------------------------------------------------------------------

    __fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) {

    }

    // ---------------------------------------------------------------------------

    编译链接,居然又又又又出错了:

    Checking project dependencies...

    Compiling Project1.cbproj (Debug configuration)

    ilink32 command line

    c:\program files\embarcadero\rad studio\7.0\bin\ilink32.exe -LDebug;"c:\program files\embarcadero\rad studio\7.0\lib\debug";

    "C:\Users\DrGraph\Documents\RAD Studio\7.0\Imports";F:\TDDOWNLOAD\DXSkinForm\DXSkinForm;F:\TDDOWNLOAD;"F:\TDDOWNLOAD\dxSample (16)";

    "C:\Users\DrGraph\Documents\DevExpress VCL\Library\RS14";F:\TDDOWNLOAD\dxSample;"D:\Work\编程\Ribbon";"c:\program files\embarcadero\rad

    studio\7.0\lib\obj";"C:\Users\DrGraph\Documents\DevExpress VCL\Library\RES";D:\Work\Package\VideoGrabber8;"c:\program files\embarcadero\rad

    studio\7.0\lib";"c:\program files\embarcadero\rad studio\7.0\lib\psdk";"c:\program files\embarcadero\rad studio\7.0\lib\Indy10";"c:\program

    files\embarcadero\rad studio\7.0\RaveReports\Lib";"C:\Users\DrGraph\Documents\DevExpress VCL\Library\RS14";"C:\Users\Public\Documents\RAD

    Studio\7.0\DCP" -jDebug;"c:\program files\embarcadero\rad studio\7.0\lib\debug";"C:\Users\DrGraph\Documents\RAD Studio\7.0\Imports";

    F:\TDDOWNLOAD\DXSkinForm\DXSkinForm;F:\TDDOWNLOAD;"F:\TDDOWNLOAD\dxSample (16)";"C:\Users\DrGraph\Documents\DevExpress VCL\Library\RS14";

    F:\TDDOWNLOAD\dxSample;"D:\Work\编程\Ribbon";"c:\program files\embarcadero\rad studio\7.0\lib\obj";"C:\Users\DrGraph\Documents\DevExpress

    VCL\Library\RES";D:\Work\Package\VideoGrabber8;"c:\program files\embarcadero\rad studio\7.0\lib";"c:\program files\embarcadero\rad

    studio\7.0\lib\psdk";"c:\program files\embarcadero\rad studio\7.0\lib\Indy10";"c:\program files\embarcadero\rad studio\7.0\RaveReports\Lib";

    "C:\Users\DrGraph\Documents\DevExpress VCL\Library\RS14";"C:\Users\Public\Documents\RAD Studio\7.0\DCP" -lD:\ExenObj\Exe\DevExpress -v

    -GA"C:\Users\DrGraph\AppData\Local\Temp\vfs13EF.tmp"="D:\Work\编程\Ribbon\Unit1.dfm" -aa -V5.0 -G8 c0w32w rtl.bpi vcl.bpi cxLibraryRS14.bpi

    dxGDIPlusRS14.bpi dxCoreRS14.bpi dxThemeRS14.bpi vclx.bpi dxBarRS14.bpi dxComnRS14.bpi dxRibbonRS14.bpi dxSkinsCoreRS14.bpi

    dxSkinsdxBarPainterRS14.bpi dxSkinBlackRS14.bpi dxSkinBlueRS14.bpi dxSkinCaramelRS14.bpi dxSkinCoffeeRS14.bpi dxSkinDarkRoomRS14.bpi

    dxSkinDarkSideRS14.bpi dxSkinFoggyRS14.bpi dxSkinGlassOceansRS14.bpi dxSkiniMaginaryRS14.bpi dxSkinLilianRS14.bpi dxSkinLiquidSkyRS14.bpi

    dxSkinLondonLiquidSkyRS14.bpi dxSkinMcSkinRS14.bpi dxSkinMoneyTwinsRS14.bpi dxSkinOffice2007BlackRS14.bpi dxSkinOffice2007BlueRS14.bpi

    dxSkinOffice2007GreenRS14.bpi dxSkinOffice2007PinkRS14.bpi dxSkinOffice2007SilverRS14.bpi dxSkinOffice2010BlackRS14.bpi dxSkinOffice2010BlueRS14.bpi

    dxSkinOffice2010SilverRS14.bpi dxSkinPumpkinRS14.bpi dxSkinSevenRS14.bpi dxSkinSharpRS14.bpi dxSkinSilverRS14.bpi dxSkinSpringTimeRS14.bpi

    dxSkinStardustRS14.bpi dxSkinSummer2008RS14.bpi dxSkinValentineRS14.bpi dxSkinXmas2008BlueRS14.bpi dxSkinBlueprintRS14.bpi

    dxSkinDevExpressDarkStyleRS14.bpi dxSkinDevExpressStyleRS14.bpi dxSkinHighContrastRS14.bpi dxSkinSevenClassicRS14.bpi dxSkinSharpPlusRS14.bpi

    dxSkinTheAsphaltWorldRS14.bpi dxSkinVS2010RS14.bpi dxSkinWhiteprintRS14.bpi cxEditorsRS14.bpi cxDataRS14.bpi dbrtl.bpi vclimg.bpi vcldb.bpi

    dxSkinsdxRibbonPainterRS14.bpi dxLayoutControlRS14.bpi cxPageControlRS14.bpi bdertl.bpi cxGridRS14.bpi dxSkinscxPCPainterRS14.bpi

    cxVerticalGridRS14.bpi dxBarExtItemsRS14.bpi dxdbtrRS14.bpi vclribbon.bpi vclactnband.bpi memmgr.lib sysinit.obj Debug\Unit1.obj Debug\Project1.obj ,

    D:\ExenObj\Exe\DevExpress\Project1.exe , D:\ExenObj\Exe\DevExpress\Project1.map , CbwModi.lib import32.lib cp32mti.lib , ,

    [ILINK32 Error] Error: Unresolved external '__fastcall Word_2k::TWordApplication::BeforeDestruction()' referenced from D:\WORK\编程\RIBBON\DEBUG\UNIT1.OBJ

    [ILINK32 Error] Error: Unresolved external '__fastcall Word_2k::TWordApplication::InitServerData()' referenced from D:\WORK\编程\RIBBON\DEBUG\UNIT1.OBJ

    [ILINK32 Error] Error: Unresolved external '__fastcall Word_2k::TWordApplication::InvokeEvent(int, System::DynamicArray<System::OleVariant>&)' referenced from D:\WORK\编程\RIBBON\DEBUG\UNIT1.OBJ

    [ILINK32 Error] Error: Unresolved external '__fastcall Word_2k::TWordApplication::Connect()' referenced from D:\WORK\编程\RIBBON\DEBUG\UNIT1.OBJ

    [ILINK32 Error] Error: Unresolved external '__fastcall Word_2k::TWordApplication::Disconnect()' referenced from D:\WORK\编程\RIBBON\DEBUG\UNIT1.OBJ

    [ILINK32 Error] Error: Unresolved external '__fastcall Word_2k::TWordLetterContent::BeforeDestruction()' referenced from D:\WORK\编程\RIBBON\DEBUG\UNIT1.OBJ

    [ILINK32 Error] Error: Unresolved external '__fastcall Word_2k::TWordLetterContent::InitServerData()' referenced from D:\WORK\编程\RIBBON\DEBUG\UNIT1.OBJ

    [ILINK32 Error] Error: Unresolved external '__fastcall Word_2k::TWordLetterContent::Connect()' referenced from D:\WORK\编程\RIBBON\DEBUG\UNIT1.OBJ

    [ILINK32 Error] Error: Unresolved external '__fastcall Word_2k::TWordLetterContent::Disconnect()' referenced from D:\WORK\编程\RIBBON\DEBUG\UNIT1.OBJ

    [ILINK32 Error] Error: Unresolved external '__fastcall Word_2k::TWordParagraphFormat::BeforeDestruction()' referenced from D:\WORK\编程\RIBBON\DEBUG\UNIT1.OBJ

    [ILINK32 Error] Error: Unresolved external '__fastcall Word_2k::TWordParagraphFormat::InitServerData()' referenced from D:\WORK\编程\RIBBON\DEBUG\UNIT1.OBJ

    [ILINK32 Error] Error: Unresolved external '__fastcall Word_2k::TWordParagraphFormat::Connect()' referenced from D:\WORK\编程\RIBBON\DEBUG\UNIT1.OBJ

    [ILINK32 Error] Error: Unresolved external '__fastcall Word_2k::TWordParagraphFormat::Disconnect()' referenced from D:\WORK\编程\RIBBON\DEBUG\UNIT1.OBJ

    [ILINK32 Error] Error: Unresolved external '__fastcall Word_2k::TWordFont::BeforeDestruction()' referenced from D:\WORK\编程\RIBBON\DEBUG\UNIT1.OBJ

    [ILINK32 Error] Error: Unresolved external '__fastcall Word_2k::TWordFont::InitServerData()' referenced from D:\WORK\编程\RIBBON\DEBUG\UNIT1.OBJ

    [ILINK32 Error] Error: Unresolved external '__fastcall Word_2k::TWordFont::Connect()' referenced from D:\WORK\编程\RIBBON\DEBUG\UNIT1.OBJ

    [ILINK32 Error] Error: Unresolved external '__fastcall Word_2k::TWordFont::Disconnect()' referenced from D:\WORK\编程\RIBBON\DEBUG\UNIT1.OBJ

    [ILINK32 Error] Error: Unresolved external '__fastcall Word_2k::TWordDocument::BeforeDestruction()' referenced from D:\WORK\编程\RIBBON\DEBUG\UNIT1.OBJ

    [ILINK32 Error] Error: Unresolved external '__fastcall Word_2k::TWordDocument::InitServerData()' referenced from D:\WORK\编程\RIBBON\DEBUG\UNIT1.OBJ

    [ILINK32 Error] Error: Unresolved external '__fastcall Word_2k::TWordDocument::InvokeEvent(int, System::DynamicArray<System::OleVariant>&)' referenced from D:\WORK\编程\RIBBON\DEBUG\UNIT1.OBJ

    [ILINK32 Error] Error: Unresolved external '__fastcall Word_2k::TWordDocument::Connect()' referenced from D:\WORK\编程\RIBBON\DEBUG\UNIT1.OBJ

    [ILINK32 Error] Error: Unresolved external '__fastcall Word_2k::TWordDocument::Disconnect()' referenced from D:\WORK\编程\RIBBON\DEBUG\UNIT1.OBJ

    [ILINK32 Error] Error: Unable to perform link

    Failed

    Elapsed time: 00:00:00.6

     

    这个2010下的问题咋就这么多多多多!!加个头文件就出这么多事?

    不过,编程这件事就是逢山开路,遇水搭桥。不就是链接问题么。

    回想起在CB6下,好象直接来个#pragma link "Word_2K_SRVR"就好了。

    加上,结果提示找不到

    [ILINK32 Error] Fatal: Unable to open file 'WORD_2K_SRVR.OBJ'

    那就找一下WORD_2K_SRVR.OBJ在什么地方,结果,没有,倒是找到了WORD_2K_SRVR.cpp

    那就直接把这个文件加入到工程中,我今天非要搞定它。

    继续提示出错:

    [ILINK32 Error] Error: Unresolved external 'Word_2k::CLSID_WordApplication' referenced from D:\WORK\编程\RIBBON\DEBUG\WORD_2K_SRVR.OBJ

    [ILINK32 Error] Error: Unresolved external 'Word_2k::IID_WINDOW' referenced from D:\WORK\编程\RIBBON\DEBUG\WORD_2K_SRVR.OBJ

    [ILINK32 Error] Error: Unresolved external 'Word_2k::IID__Document' referenced from D:\WORK\编程\RIBBON\DEBUG\WORD_2K_SRVR.OBJ

    [ILINK32 Error] Error: Unresolved external 'Word_2k::IID_WordSelection' referenced from D:\WORK\编程\RIBBON\DEBUG\WORD_2K_SRVR.OBJ

    [ILINK32 Error] Error: Unresolved external 'Word_2k::IID__Application' referenced from D:\WORK\编程\RIBBON\DEBUG\WORD_2K_SRVR.OBJ

    [ILINK32 Error] Error: Unresolved external 'Word_2k::CLSID_WordLetterContent' referenced from D:\WORK\编程\RIBBON\DEBUG\WORD_2K_SRVR.OBJ

    [ILINK32 Error] Error: Unresolved external 'Word_2k::IID__LetterContent' referenced from D:\WORK\编程\RIBBON\DEBUG\WORD_2K_SRVR.OBJ

    [ILINK32 Error] Error: Unresolved external 'Word_2k::CLSID_WordParagraphFormat' referenced from D:\WORK\编程\RIBBON\DEBUG\WORD_2K_SRVR.OBJ

    [ILINK32 Error] Error: Unresolved external 'Word_2k::IID__ParagraphFormat' referenced from D:\WORK\编程\RIBBON\DEBUG\WORD_2K_SRVR.OBJ

    [ILINK32 Error] Error: Unresolved external 'Word_2k::CLSID_WordFont' referenced from D:\WORK\编程\RIBBON\DEBUG\WORD_2K_SRVR.OBJ

    [ILINK32 Error] Error: Unresolved external 'Word_2k::IID__Font' referenced from D:\WORK\编程\RIBBON\DEBUG\WORD_2K_SRVR.OBJ

    [ILINK32 Error] Error: Unresolved external 'Word_2k::CLSID_WordDocument' referenced from D:\WORK\编程\RIBBON\DEBUG\WORD_2K_SRVR.OBJ

    这看样子,错误信息已经不一样的了。缺Word_2k,加入Word_2k.cpp,啊哈,编译链接都通过了。

    现在,工程里无奈地增加了两个文件。

    貌似可以不增加这两个文件哈。到生成目录下,看到已生成了Word_2K_SRVR.obj和Word_2K.obj,这下用#pragma link "Word_2K_SRVR"应该不再提示找不到Word_2K_SRVR.obj了吧?

    一种方法是把这两个obj文件拷贝到工程文件的某个目录下,另一种方法是配置工程的路径。当然是配置路径来得轻松。

    总算是通过第一关。

    先休息一下,再解决生成WORD问题。

  • 相关阅读:
    [HEOI2016/TJOI2016]树
    luogu P4198 楼房重建
    [USACO11DEC]Umbrellas for Cows
    luogu P2700 逐个击破
    一、MegaCli命令介绍
    dmidecode -t1 | egrep "Manufacturer|Product Name"
    IPMITOOL常用操作指令V1.0
    CentOS 7上的性能监控工具
    Could not open device at /dev/ipmi0
    n95医用口罩(常见型号1860 或者9132)防水无呼吸阀
  • 原文地址:https://www.cnblogs.com/drgraph/p/3085044.html
Copyright © 2020-2023  润新知