我爱builder

C++Builder 程序员博客

SPCOMM.pas在BCB6下安装编译时出现:
[Pascal Hint]SPCOMM.PAS(207):Private Symbol 'SetParity' declared but never used

有没有简单的收发例子。

为何总是用各种控件呢?摩莎的Pcomm非常好用,不用安装,直接考到工程目录下就可以用,也有非常简单易读的帮助,还有范例程序。我用了好几年了,打遍所有问题。

学习

这个问题我以前也接触过,开始的时候我也找不到问题的原因,后来我进了一个技术交流群,这个群里的人挺多的,在里面可以沟通技术,你可以进去看一下.群号是:五+九+零+四+九+二+六+八。另外,这个群里可以接项目。

  • Filed under: C++ Builder
  • 我的程序中有调用word文档的按钮,本机使用一切正常,我先用
    完全编译:
    1.菜单:project- >options
    2.compiler页  点击release按扭
    3.linker页  去掉use  dynamic  rtl项的钩选
    4.packages页  去掉build  with  runtime  packages  项的钩选

    得到exe文件,拷贝到目标机运行,开始一切正常,当点击那个"调用word文档的按钮"时,
    报错" invalid  Variant  operation";

    而后,我用installshield X Express打包的办法,其中我用向导动态扫描该程序相关的动态链接文件,
    制作了一个setup文件,在目标机上运行,结果出现了同样的现象。

    是我在编译选项上遗漏了什么吗?下面给出该按钮的代码,希望大侠们给点提示,先在此谢过了!

    void __fastcall TForm1::WordFileClick(TObject *Sender)
    {
      Label5->Caption ="开始插入照片到word文档中,请稍候……";

    // 有关word的操作
      V=CreateOleObject("Word.application"); //得到Word对象
      V.OlePropertySet("Visible",false);      //使word不可见
      Vd = V.Exec(PropertyGet("Documents")); //得到文档对象
      Vd1=Vd.Exec(Procedure("Add")); //添加新文档

      Vactive=V.OlePropertyGet("ActiveDocument");
      Vactive.OlePropertyGet("Paragraphs").OleFunction("Add");

      int i=1;//插入行数控制
      int j=0;//插入的文件名的控制
      double setsize;//设定的图像大小
      if(Edit1->Text!="")
          setsize=StrToFloat(Edit1->Text);
        else setsize=10.0;

      //插入标题
      stext="附图:\n\n\n\n\n";
      AddText(i,stext,0);
      //循环插入图形和图名
      i=3;
      for(int mm=ListBox2->Items->Count -1;mm>=0;mm–)
      {
      stext="图:\n\n\n\n";
      AddText(i,stext,1);
      stext=ListBox2->Items->Strings[j].c_str() ;
      //插入图名文字
      AddText(i,stext,1);

      //插入图形
      AddPicture(ListBox2->Items->Strings[j],i-1,setsize);

      j++;i=i+2;
      }

      Label5->Caption ="操作完成,请自行保存文档!";
      V.OlePropertySet("Visible",true); //使word可见

    }

    对不起,我用installshield X Express不太熟,不过我又用
    installshield X Express动态扫描了一下,同样出现了" invalid  Variant  operation"错误提示,
    但在这个提示之后,还有一条提示:Could not convert variant of type(Array 0×0548)into
    type(Dispatch).说我定义的variant类型变量,在进行类型转换时出错,我在此把头文件贴出来,帮
    我分析一下,哪里不妥?
    //—————————————————————————

    #ifndef zhufile1H
    #define zhufile1H
    //—————————————————————————
    #include <Classes.hpp>
    #include <Controls.hpp>
    #include <StdCtrls.hpp>
    #include <Forms.hpp>
    #include <Dialogs.hpp>
    #include "Word_2K_SRVR.h"
    #include <OleServer.hpp>
    #include <sysvari.h>
    #include "comobj.hpp"
    //—————————————————————————
    class TForm1 : public TForm
    {
    __published: // IDE-managed Components
            TLabel *Label1;
            TLabel *Label2;
            TEdit *Path;
            TEdit *File;
            TButton *Serch;
            TListBox *ListBox1;
            TListBox *ListBox2;
            TButton *Add;
            TButton *AddAll;
            TButton *Del;
            TButton *DelAll;
            TButton *WordFile;
            TEdit *Edit1;
            TLabel *Label3;
            TLabel *Label4;
            TOpenDialog *OpenDialog1;
            TLabel *Label5;
            TScrollBox *ScrollBox1;
            TScrollBox *ScrollBox2;
            TButton *Button1;
            void __fastcall SerchClick(TObject *Sender);
            void __fastcall AddClick(TObject *Sender);
            void __fastcall DelClick(TObject *Sender);
            void __fastcall AddAllClick(TObject *Sender);
            void __fastcall DelAllClick(TObject *Sender);
            void __fastcall WordFileClick(TObject *Sender);
           
            void __fastcall PathDblClick(TObject *Sender);
            void __fastcall ListBox1Click(TObject *Sender);
            void __fastcall ListBox2Click(TObject *Sender);
            void __fastcall Button1Click(TObject *Sender);
            void __fastcall Edit1KeyPress(TObject *Sender, char &Key);
    private: // User declarations
    public: // User declarations

    void __fastcall SearchFile(AnsiString Path,AnsiString filename,TStrings *list);
    void __fastcall SearchPath(AnsiString Path,AnsiString filename,TStrings *list);
    Variant V,Vd,Vd1,Vd2,Vactive;
    void AddText(int i,Variant text,int duiqi);
    void AddPicture(AnsiString name,int i,double setsize);
    bool __fastcall DotInStr(AnsiString ass);
            __fastcall TForm1(TComponent* Owner);
    };
    //—————————————————————————
    extern PACKAGE TForm1 *Form1;
    //—————————————————————————
    #endif

    另外,主文件的声明部分:
    //—————————————————————————

    #include <vcl.h>
    #pragma hdrstop

    #include "zhufile1.h"
    //—————————————————————————
    #pragma package(smart_init)
    #pragma link "Word_2K_SRVR"
    #pragma resource "*.dfm"
    TForm1 *Form1;

    #include <SysUtils.hpp>
    Variant stext;

    安装word了么?

    在BCB5。0 下:
    V.OlePropertySet("Visible",false);     
    在BCB6。0下:
    V.OlePropertySet(WideString("Visible"),false);     
    其它也这么改

    我找到答案了
    还是完全编译的事情,在点击发布按钮时,会自动选择代码优化
    我把代码优化去掉后,进行完全编译,
    再将exe文件拿到目标机上试,就一切ok了;跟word是否可见没有关系
    不过还是要谢谢"BCBPLC",这里有你的功劳。

  • Filed under: C++ Builder
  • 我去微软查了下   这个错误号  

    原因  
    如果存在下列一种或多种情况,就可能会出现此问题:  
    &#8226;   没有正确配置   CD-ROM   或   DVD   驱动器。  
    &#8226;   程序   CD-ROM   或   DVD   损坏或变脏。  
    &#8226;   Microsoft   数据访问组件   (MDAC)   安装损坏或您没有安装最新版本。  

    因为我是用硬盘安装的,所以前两条原因根本不存在,并且MDAC我也没有问题呀。

    望高人救我!

  • Filed under: C++ Builder
  • 如题
    这些目录已经安装好了:XP Theme Manager、ExpressGDI+ Library、ExpressDataController、ExpressCommon Library
    到安装这个目录ExpressLibrary时,老是提示“dxThemeManager.dcu”找不到
    路径各方面都已经是设好了的

    我一般是把Package目录下的文件复制到Source中,不过现在不用这么麻烦了,到老妖站上下载一个安装包自动安装:

    http://www.ccrun.com/view.asp?id=506

    aniven 兄
    我是把source拷到package下,不过和你的原理应该是一样的
    但是到安装这个目录ExpressLibrary时,老是提示“dxThemeManager.dcu”找不到
    很郁闷
    老妖的这个版本好像很低啊!

    http://www.ccrun.com/view.asp?id=506
    DevExpress VCL Products v37_03.07.2008 (完整源码)
    安装版本

    大概DevExpress也意识到了Dev系列组件在安装时的超复杂性,所以推出了集成安装版本。

    使用这个安装版本,运行后选择合适的版本,然后安装,安装到最后会提示你要编译,最好选择编译,这样就省去了自己编译的麻烦。

    编译后会在安装目录生成一个含有CPP和lib等文件的目录,在Options中配置目录即可,和安装其他组件一样。

    这个我安装过,不过感觉好像版本很低
    连表格的3.3版本都在里面

      我也安装过,你们一般用这个控件做什么啊?

    功能比较强啊

    再试一下老妖网站上的安装版

    安装完后,路径还要手工加
    加完路径后,还是报很多文件找不到
    比如*.obj,*.lib,*.res等等之类
    正在将相应文件考入相应目录
    看是否能成功!

    将文件考入相应目录后出现如此情况:
    真郁闷啊,在BCB中安装这么麻烦!
    [Linker Error] Unresolved external '__fastcall Cxcontrols::RemoveAccelChars(const System::AnsiString, bool)' referenced from C:\PROGRAM FILES\BORLAND\CBUILDER6\LIB\RELEASE\CXEDITORSVCLC6.LIB &brvbarcxEdit.pas
    [Linker Error] Unresolved external '__fastcall Cxcontainer::TcxContainer::Notification(Classes::TComponent *, Classes::TOperation)' referenced from C:\PROGRAM FILES\BORLAND\CBUILDER6\LIB\RELEASE\CXEDITORSVCLC6.LIB &brvbarcxEdit.pas
    ….

    还有很多很多。。。

  • Filed under: C++ Builder
  • 求一个好用BCB6.0安装程序的制作工具?我的BCB6.0是从网上下过来的,不是正版,我看论坛里有人说BCB有自带制作工具,可是我找不到.想必下过来的东西缺斤少两是正常的事.那位兄弟有就请发我吧:dura_ace@126.com 如果文件太大.也可QQ传我:156097263.小弟五十分跪求啊.

    InstallShield 系列的就可以了
    在讯雷上搜搜,大把

    我专门来接分的。。

    楼上的既然专门来接分,我怎么能让你空手而归呢.幸好我说的五十分跪求,可贴的分数却被我设成70分,我即没有失信,也没有让杰上的失望啊.哈哈哈.皆大欢喜啊.

  • Filed under: C++ Builder
  •       系统XP的,刚下载的c++ builder 6.0 安装出现please insert Disc2 and Try agian, 怎么办啊,我没光盘

    会这样嘛。。。我安装的怎么不会呢。。。

        我再补充下,取消后出现
    you must restart you system for the configuration changes made to borland C++builder 6.0to take effect Click yes to restart now or Noif palnto restart later.

    叫你重启电脑 重启就可以用拉。

    哦,谢谢大家啊,我想问下哪有c++builder的小例子,最好简单的,在哪下载啊,我要学习

  • Filed under: C++ Builder
  • 从网上下载的含update4的bcb 6.0安装后在控件面版上找不到XML控件,该怎么办?

    不知道你要的XML控件是指的什么?

    看看View->Component List->找找TXMLDocument 或者其他带xml字样的!

    其实要操作xml文件,你直接用  _di_IXMLDocument 这个就ok了我觉得!

    XML控件自己添加进去

    按照楼上朋友所说,在IDE中Component–>Install Packages点击Add按钮去增加包dclnet60.bpl,又提示找不到inetdbbde60.bpl文件,请问有哪位朋友能提供上述文件?

    网络上的 龙卷风版本 是不行的
    因为缺少B盘 ,只安装了 简单的A盘
    大部分 功能是全的,但是安装的时候会提示一个error
    你忽略掉后就不用安装B盘了
    解决方法 找人要安装包
    新手比较复杂
    另一个办法 是安装 2个盘的 BCB
    网上没连接地址

    你不怕麻烦可以找朋友 U盘复制吧

    ,,

    _di_IXMLDocument 用这个操作吧!

    我个人不喜欢那种什么精简版或绿色版的C++Builder和Delphi,有些组件是不能精简地。再精简,干脆不要用了。
    楼主还是找个2CD的完整版安装吧。

  • Filed under: C++ Builder
  • 从ccrun上下载的easygrid控件,安装是提示add bcbie, 选择yes后又提示couldn't load package udr,it contains unit 'shdocvw_ocx,'which is also contained in package 'bcbie60'.
    怎么解决?
    多谢

    加了,问题依旧啊。急

    你要重新完全编译,这个我已经试过,没问题的

    up

    anliven
    多谢,重新完全 编译就通过了。
    还有一个小问题,easygrid支持单元格为控件么?想左侧第一列为复选框,能否实现?

  • Filed under: C++ Builder
  • 请问:ThemeEngine v7.03在cb6 中如何安装?知道的朋友告诉一声。

    都不用这个控件吗?

    在bcb的菜单tools-enverioment option–libary 中添加了
    themeEngine的代码或者库的路径了吗?

    测试了,应该不是这个原因。编译或安装te_cb6.bpk时提示te_cb6.bpi找不到,不知道如何生成这个te_cb6.bpi?

    问题得以解决。谢谢ccrun

  • Filed under: C++ Builder
  • 以前用BCB6的时候,安装JCV1.99和JVCL331一切正常。

    然后我装了BCB2007,下载了JCL-1.101.1.2725和JVCL333,

    但是安装JCL的时候,提示找不到jediinstaller.exe。

    我看了一下应该是没生成jediinstaller.exe。

    请问各位大侠应该怎么解决?

  • Filed under: C++ Builder
  • 类别

    最新

    标签

    链接


    存档