紧急求助````` 课程设计题目是要用DELPHI编一个数据库,具体的是使用SPCOMM控件编一个收发短信的,利用PC机与短消息模块连接进行通信,然后能把接收到的信息进行数据汇总(貌似显示在个表格中),收到的消息要对应到表格中的行列中,然后把收到的消息转发给别人````  有人会不```求教下!!!  会的人QQ详谈```````

解决方案 »

  1.   

    忘记了````QQ165472544   会的人教下````````现在我主要是不能把收到的信息进行对应入座的````还有前面利用的是AT指令的我   
      

  2.   

    设置好SPCOMM的波特率等各种属性,
    SPCOMM.StartComm打开串口
    SPCOMM.Stop;关闭串口
    下面是接收 procedure TfrmMain.COMMReceiveData(Sender: TObject; Buffer: Pointer;
      BufferLength: Word);
      var S:string;
    begin
       SetLength(s,bufferlength);
       Move(buffer^,pchar(S)^,bufferlength);
       Memo1.Lines.Add(S);
    end;
      

  3.   

    1、在节目上设置后通讯的端口等信息,然后打开串口,就是如这样的一些代码:  self.Comm1.CommName:=self.ComboBox4.Text;
      self.Comm1.BaudRate:=strtoint('9600');
      self.Comm1.ByteSize:=tbytesize(self.ComboBox1.ItemIndex);
      self.Comm1.StopBits:=tstopbits(self.ComboBox2.ItemIndex);
      self.Comm1.Parity:=tparity(self.ComboBox3.ItemIndex);
      try
        self.Comm1.StartComm;
      except
        raise exception.Create('打开串口错误');
      end;
      self.StatusBar1.SimpleText:='  '+self.ComboBox4.text+'已打开';2、发送At指令,应该有Modem什么的吧,有的还需要转换一下状态,相关的代码类似这些:
      s:='ATDT'+trim(edit2.Text)+chr(13);    // AT指令
      i:=length(s);
      comm1.WriteCommData(pchar(s),i);      //通过串口发送至MODEM
    var
      s:string;
    begin
      s:='+++';
      comm1.WriteCommData(pchar(s),length(s));  var
      s:string;
    begin
      s:='ATH0'+chr(13);
      comm1.WriteCommData(pchar(s),5);
      self.BitBtn1.Enabled:=false;3、处理接收返回数据
    类似:
    procedure Tfrmbaoshui_net.Comm1ReceiveData(Sender: TObject;
      Buffer: Pointer; BufferLength: Word);
    var
      viewstring:string;
      s:string;
      aqw325:tadoquery;
      sb_mode:string;
    begin
      setlength(viewstring,bufferlength);
      move(buffer^,pchar(viewstring)^,bufferlength);
      sleep(80);
      s:='ATA'+chr(13);
      edit3.Text := viewstring;
      if length(viewstring)>30 then
      begin
        if echo_controls_JZ(hextostring('20080808')+viewstring)=true then
        begin
          save_coffient1();
          save_tax_user_USB();
          showmessage('监控信息回传成功!');
          aqw325:=dm1.create_ado();
          aqw325.SQL.Text:='select * from bsrq';
          aqw325.Open;
          aqw325.Edit;
          aqw325.FieldByName('sb_date1').AsDateTime:=aqw325.FieldByName('sb_date').AsDateTime;
          aqw325.FieldByName('tag01').AsString:='1';
          aqw325.Post;
          aqw325.Close;
        end;
      end;   
    end;
    ===========================
    以上代码为多年之前的,仅供参考!
      

  4.   

    轮子已经有了,为什么还要去再发明一次轮子?
    下载个短信收发控件用多方便!!
    地址:
    http://download.csdn.net/source/751304
    用于收发短信的控件,是基于spcomm基础的控件,支持多线程,稳定性好。