當前正在嘗試製作一個簡單的IRC Gui客戶端。我使用SmartIrc4net作爲基礎,因爲它似乎是所有這些中最支持的,在這裏找到:http://www.codeproject.com/Articles/8323/SmartIrc4net-the-C-IRC-library在我的IRC客戶端中使用命令
現在我遇到的問題是操作命令。例如,爲了讓自己的OPER,您可以鍵入
/歌劇管理員密碼或changehost,將/ sethost mynewhost
我的問題是,當我通過該值通過一個文本框,而不是讓我聯繫,或更換我的主機。我的輸入只是在聊天中顯示爲文本。
這裏是我的代碼:
string[] serverlist;
serverlist = new string[] { "mydomain.com" };
int port = 6667;
string channel = "#MyChannel#";
try
{
irc.Connect(serverlist, port);
irc.Login("SmartIRC", "SmartIrc4net Test Bot");
irc.RfcJoin(channel);
irc.SendMessage(SendType.Message, channel, "/oper admin mypass");
irc.SendMessage(SendType.Action, channel, "/sethost mynewhost");
irc.Listen();
但是當我通過這些值,它所做的只是顯示我在聊天打字,而無需實際讓我OPER,或改變我sethost。
有什麼方法可以讓我們將命令傳遞給IRC服務器,而不僅僅是在聊天中顯示原始文本?
任何幫助,將不勝感激,謝謝
研究IRC協議。 IRC客戶端不會以PRIVMSG方式將/ oper發送到服務器,而是作爲OPER命令發送。您可以從運行wireshark開始,使用連接到某個服務器的IRC客戶端,輸入命令並查看WS究竟是通過線路發送的。 – nothrow
是的,我剛剛檢查過Wireshark,發現使用PRIVMSG發送的正常消息,而OPER和SETHOST等命令沒有PRIVMSG Infront。現在我怎麼讓我的命令沒有PPRIVMSG盈方呢?感謝您的回覆 –