Q&A

  • 문자메세지 전달시 엔티키 처리하는 방법좀 갈켜주세요..
문자메세지보내기 프로그램을 구현해 봤는데요...

엔터키값까지 보내면 엔터키값 이후의 문자는 모두 잘려 버리던데...

왜그런지 좀 알려주세요...

그리구 해결 방법도 아시면 알려 주세요..

그럼 고수님들의 많은 조언 부탁드립니다...

즐코하세요.. 그럼 20000

1  COMMENTS
  • Profile
    최석기 2000.08.11 03:03
    이진우 wrote:

    > 문자메세지보내기 프로그램을 구현해 봤는데요...

    > 엔터키값까지 보내면 엔터키값 이후의 문자는 모두 잘려 버리던데...

    > 왜그런지 좀 알려주세요...

    > 그리구 해결 방법도 아시면 알려 주세요..

    > 그럼 고수님들의 많은 조언 부탁드립니다...

    > 즐코하세요.. 그럼 20000



    어 제가 며칠전에 태스트 해보구선 자료실에 올려놓은거 있는디..



    다음 소스 참고 하세요..



    공백과 엔터키 특수문자 처리를 할 수 있게 바꿔 보았습니다.



    unit Unit1;



    interface



    uses

    Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,

    StdCtrls, Psock, NMHttp;



    type

    TForm1 = class(TForm)

    Edit1: TEdit;

    Edit2: TEdit;

    Memo1: TMemo;

    Button1: TButton;

    NMHTTP1: TNMHTTP;

    Label1: TLabel;

    Label2: TLabel;

    procedure Button1Click(Sender: TObject);

    private

    { Private declarations }

    public

    { Public declarations }

    end;



    var

    Form1: TForm1;



    implementation



    {$R *.DFM}



    function HTTPTrans(St: string): string;

    var

    i: integer;

    begin

    Result := '';

    for i := 1 to Length(St) do

    if St[i] in ['a'..'z','A'..'Z','0','1'..'9'] then

    Result := Result + St[i]

    else if St[i] = ' ' then

    Result := Result + '+'

    else

    Result := Result + '%' + IntToHex(Byte(St[i]),2);

    end;



    procedure TForm1.Button1Click(Sender: TObject);

    var

    DufURL : String;

    Number1,Number2,msg :String;

    begin

    number1 := edit1.Text;

    number2 := edit2.Text;

    Msg := memo1.Text;

    Msg := HTTPTrans(msg);

    DufURL := 'http://webcenter.chollian.net/cgi-bin/mycappy2.cgi?step=second&number1=' + number1 + '&mesg=' + Msg + '&number2=' + number2 + '&submit_button=%C0%FC%BC%DBc';

    try

    NMHTTP1.Get(DufURL);

    edit2.Clear;

    memo1.Clear;

    showmessage('메시지를 전송하였습니다.');

    except

    showmessage('문자전송 실패... 다시 해봐엽');

    end;

    end;



    end.