帮助需要使用Indy组件在Delphi 2010中编写IRC客户端

时间:2010-09-12 21:22:42

标签: delphi indy irc

我试图使用Indy组件在Delphi 2010中编写基本的irc客户端。 我可以使用下面的示例A连接到我的irc服务器(unrealircd)。

连接后,我有许多程序在收到私人消息,ping,ctcp,频道模式等时应该执行操作,但它们从不对这些传入事件做出任何反应。

样本A: 按下button4时,它连接到IRC服务器。 它成功地使用指定的名称加入频道。

procedure TForm1.Button4Click(Sender: TObject);
begin
  IdIRC1.Host := '72.20.53.142';
  IdIRC1.Port := 6667;
  IdIRC1.Nickname := ssh.frmmain.Edit1.text;//insert your nickname here
    try
    idIRC1.Connect;
  except
    if not idIRC1.Connected then
      begin
        Memo2.Lines.add('Error Connecting to ' + idIRC1.Host);
        Exit;
      end;
  end;
  Memo2.Lines.add ('Connected to Auth Server');
  idIRC1.Join(channel,key);
  Memo2.Lines.add ('Auth Accepted');
end;

这些事件根本不起作用,在编译期间不会产生错误。

procedure TForm1.IdIRC1Connected(Sender: TObject);
begin
  memo2.Lines.Clear;
  memo2.Lines.add ('2Connected');
end;

procedure TForm1.IdIRC1ServerVersion(ASender: TIdContext; Version, Host, Comments: String);
begin
memo2.Lines.Add(Version +'Host '+Host+'Comments '+Comments);
end;

1 个答案:

答案 0 :(得分:1)

我曾经有几个人看过这个,看起来似乎有些unicode问题破坏了我的TClientSocket irc设置,即使我搬到indy并在官方网站上使用样本我仍然无法得到任何东西例如onconnect事件。

一位朋友在Delphi 2010中使用相同版本的indy编写了一份应用程序副本,我设法导入他的项目并开始工作。

不确定原因