這是歷史版本頁面 — 看 mIRC 最新版本

還在用 IRC 的人,mIRC 能幫你做到什麼

mIRC 軟體圖示 mIRC 7.53 資料更新 2018-11-29 閱讀約 6 分鐘

還在用 IRC 的人,大概都遇過這種時刻:想連上某個伺服器加入討論,卻發現手邊的客戶端不是介面老舊難懂,就是連線設定複雜到讓人卻步。你只是想好好掛在頻道裡,偶爾回個話、傳個檔,結果光搞設定就耗掉半小時,最後還不一定連得上。這種卡關的感覺,正是 IRC 老牌工具試圖解決的麻煩。

一般人遇到這種狀況,直覺是改用網頁版 IRC 或現代通訊軟體,但那些工具往往少了 IRC 特有的腳本自動化、多伺服器同時掛線,以及 DCC 直接傳檔的能力。這類工具的切入點,是提供一個穩定、可自訂的視窗環境,讓熟悉 IRC 指令的人能保留原本的工作流程,同時用腳本把重複動作變成自動化,而不是靠滑鼠點來點去。

mIRC 操作介面
mIRC 的操作介面

01mIRC 這套軟體到底能拿來做什麼?

它是一套 Windows 上的 IRC 用戶端,主要用來連線到 IRC 網路(例如 irc.libera.chat),加入頻道聊天、傳私人訊息、管理暱稱與頻道成員。另外支援同時連線多個伺服器、DCC 檔案傳輸、對話紀錄自動存檔,以及用內建腳本語言寫出自動化指令或聊天機器人。對常跑 IRC 的人來說,這些功能涵蓋了日常聊天與管理的大部分需求。

02它跟一般網頁版 IRC 差在哪裡?

網頁版通常只能開一個連線、功能陽春,而這套軟體可以同時掛多個 IRC 網路,每個網路各自獨立分頁,方便管理。它還能把對話紀錄存成檔案,之後用紀錄檢視器開啟,也支援關鍵字提醒、事件觸發(例如有人進出頻道時跳出通知)。這些是網頁版不容易做到的事,尤其如果你需要同時盯好幾個頻道,差異會很明顯。

03它的腳本功能實際能幫我做到什麼?

腳本可以自動化重複動作,例如設定常用指令的快捷鍵、在特定頻道自動發送歡迎訊息、根據關鍵字過濾訊息,甚至寫出一個會自動管理頻道的機器人。官方說明提到,透過腳本可以建立自訂指令與聊天機器人,用於管理或自動化。不過這需要花時間學它的腳本語法,不是打開就能用,適合願意投入時間研究的人。

04用 DCC 傳檔案是怎麼運作的?

DCC 是 IRC 上的點對點直接傳輸,讓兩台電腦直接連線交換檔案,不走伺服器中轉。官方說明指出,這項功能常被現代安全工具阻擋,因為可能被濫用。實際使用時,對方也要支援 DCC,且雙方網路環境要允許直接連線,否則會失敗。如果你只是偶爾傳個小檔,這功能堪用,但別期待它像現代通訊軟體那麼順手。

mIRC 介面畫面 2
mIRC 介面畫面

05它會自動記錄聊天內容嗎?

會,官方功能列表有「Logging」這一項,會自動記錄對話,方便事後查閱或做頻道管理。預設的記錄檔可以從狀態視窗的系統選單開啟,也可以到選項裡調整記錄的格式與存放位置。如果你需要留底或事後檢視討論內容,這功能很實用,但要注意隱私問題,記錄檔會存在本機硬碟。

06什麼樣的人適合用這套軟體?

適合已經熟悉 IRC 指令、需要同時管理多個頻道或伺服器的人,尤其是開發者、開源社群參與者,或習慣用文字介面做事的使用者。官方說明提到,它仍活躍於開發者與技術社群,因為腳本能力強、資源占用低。如果你只是偶爾想找人聊天,這套軟體對你來說可能太複雜,學習成本不划算。

07新手完全沒用過 IRC,能直接上手嗎?

可以,但會有一段陣痛期。安裝後首次設定會要求輸入暱稱、備用暱稱和伺服器資訊,之後用指令 /join #頻道名稱 加入聊天室、/msg 使用者名稱 訊息 來傳私人訊息。介面是 Windows 98 時代的風格,官方自己也說對新手可能顯得老舊或複雜。如果你願意花時間看指令說明,大概一兩天能上手,但不會像現代通訊軟體那麼直覺。

08它的介面只有英文嗎?中文使用者有障礙嗎?

官方介面語系只有英文,沒有繁體中文選項。對不熟悉英文介面的人來說,選單和設定項目會需要對照翻譯才能理解。不過 IRC 指令本身都是英文,頻道內也常以英文溝通,所以如果你已經習慣 IRC 環境,英文介面影響不大;但若你完全不懂英文,操作上會比較吃力。

mIRC 介面畫面 3
mIRC 介面畫面

09這套軟體免費嗎?還是要付費?

官方提供 30 天免費試用,試用期滿後需要一次性付費註冊,費用是 19.95 美元,終身使用。官方說明提到,如果沒付費,軟體仍會以受限模式繼續運作,但功能會打折。如果你只是短期試用,30 天很夠;若要長期使用,就得考慮這筆費用值不值得。

10什麼情況不該選它?有沒有更簡單的替代方案?

如果你只是想要一個現代化、圖形介面漂亮的聊天工具,這套軟體不適合,它的介面停留在舊時代,官方也承認這點。另外,如果你需要手機上使用,它不支援行動裝置,官方說明明確寫了「Not mobile-compatible」。若你只是偶爾上 IRC 看看,可以考慮網頁版 IRC 客戶端,或試試 Pidgin、XChat 這類功能相近的軟體,但它們的評分人數也不多,穩定性需自行評估。

11它的安全性如何?適合談敏感話題嗎?

官方說明指出,它支援 SSL 加密連線,但 IRC 本質上不是完全安全的協定,敏感對話建議使用私人伺服器或額外加密。另外,DCC 傳檔可能被安全工具阻擋,這也代表某些環境下這功能會失效。如果你需要高度隱私的通訊,IRC 本身就不是好選擇,這套軟體也無法改變這點。

12這套軟體還有人在維護嗎?會不會突然沒更新?

根據版本紀錄,它近 12 個月更新了 3 次,近 24 個月更新 6 次,代表開發者仍持續維護,最近一次更新在 2026 年 6 月。官方說明也提到新增了 Windows 10/11 的深色模式支援、修復了多個崩潰問題。不過它的更新頻率不算高,如果你需要頻繁新增功能的軟體,這點要列入考量。

下載與官方連結

前往官方網站 下載 mIRC

mirc753.exe · 2.64 MB · 連結指向軟體原廠

版本紀錄

再看 5 筆

看完整版本清單

這一版改了什麼

What's new in this version:

Changes:
- Added /set -g switch that makes /set change a global variable
- Added /unset -gl switches that make /unset change a global or local variable
- Changed udpate check/other features to avoid insecure SSL protocols in HTTP requests under Windows XP
- Changed all time-related features to use 64bit time values
- Fixed hotlink parsing of mailto: and similar URIs
- Added hotlink parsing of URIs xmpp, teamspeak, ssh, and sftp
- Extended /drawpic -o [N] to refer to frames in a GIF file
- Added /drawpic -f switch that works with -o to specify the Nth icon and the Mth frame in that icon by using /drawpic -of [N] [M]
- Extended $pic() to support properties .icons, .frames, .delay and to allow specifying N and M parameters
- Added voice selection to speech options
- Fixed $onpoly() not handling zero area polygons correctly
- Changed $onpoly()/$inpoly() implementations from regions to maths
- Updated PCRE regex library to v8.42
- Fixed script parser bug that caused mIRC to process Windows messages while a script was running
- Changed $encode() base32 to use 72 character chunks
- Fixed /ialfill not displaying channel name when fill completes
- Updated CA root certificates cacert.pem file
- Fixed $ctime() returning incorrect result at midnight before a new year begins
- Changed the way maximum server line lengths are applied to various commands and features
- Added /privmsg command
- Added support for CPRIVMSG and CNOTICE. If listed in numeric 005, PRIVMSG and NOTICE will be automatically upgraded for most outgoing messages if you are an op/voice on a channel and message a user on the same channel
- Added support for numeric 005 STATUSMSG=@+ and WALLVOICES and added commands /vmsg, /vnotice, and /wallvoices. If server does not support STATUSMSG, WALLCHOPS, or WALLVOICES, mIRC uses own method to send to multiple targets

Changed line splitting method for long messages when:
- Sending message through editbox of a channel/query window
- Using commands /ame /amsg /describe /me /msg /omsg /privmsg /qme /qmsg /query /sound /vmsg /wallchops
- Note: when line splitting, the /sound command switches to an ACTION message for the second line onwards
- Note: line splitting is not performed on NOTICEs, so is not applied to /notice /onotice /vnotice /wallvoices
- Changed multiple target handling in PRIVMSG and NOTICE so that if TARGMAX or MAXTARGETS are not specified in numeric 005, mIRC assumes the maximum is one target per message
- Changed channel favorites dialog drag-resize method
- Changed channel mode parsing in numeric 324 and MODE events to handle channel keys hidden from non-ops only on the Undernet ircd. As there is no numeric 005 token for this, this is based on the Undernet ircd version number in numeric 004
- Note: Added support for numeric 005 HIDDENKEY token. When specified, this means that non-ops on a channel receive the * character as the channel key in numeric 324 and MODE events. Clients should treat the * character (or whatever character/string is sent) as a non-key if they are not ops. If the user is then opped, their client can issue a MODE to retrieve the real key Changed STATUSMSG support to use only NOTICE on the Undernet ircd, which is the only method Undernet supports. On all other ircds, STATUSMSG implies NOTICE/PRIVMSG. As there is no numeric 005 token for this, this is based on the Undernet ircd version number in numeric 004
- Increased the size of short, medium, and long string lengths used throughout mIRC that affect features such as variables, window names, and so on
- Increased stack reserve size from 2 to 8 megabytes
- Added identifiers $maxlens $maxlenm $maxlenl that return the maximum string lengths for small, medium, and large strings
- Note: although it is possible in some situations, eg. when assigning values to variables, to store slightly longer strings, the values returned by the above identifiers should be treated as maximums
- Changed CAP packet-size request to use mIRC's medium string length, as returned by $maxlenm. The previous version was requesting 1024. If a server replies with a different value, mIRC will use it, with a mimumum of 512 and a maximum of $maxlenm
- Changed base64 implementation for $decode() to handle invalid input lengths better
- Added $eventparms identifer that returns the event-specific parameters passed to an executed command in a script
- Changed /ialfill to not issue a WHO if it thinks the IAL list is already filled or currently filling
- Changed $base() to only remove the 0x prefix from base16 input
- Changed perform, and the joining of channels, on connect to trigger only after a short delay, if the server connection uses nickserv to identify a nickname. This ensures that you are able to join channels that only allow identified users
- Fixed while loop parsing bug when $& is used to separate comparison parameters
- Changed when the raw event for invite (as a channel notification) triggers to allow the /haltdef of default display text
- Fixed options/connect dialog new status window being opened with the current status window's SSL port/state
- Updated OpenSSL library to v1.0.2p
- Added support for IRCv3 nested batches. This goes beyond the basic batch support in previous versions and implements the full specification, which includes nested batches and delaying batch execution until end of batch is received. This includes support for draft/label and draft/labeled-response
- Extended $hfind() 'w' and 'r' parameters to search entire length of binary variable data. Note that in the case of 'r', long results will be truncated due to internal string length limits. Fixed $hash() parsing bug that caused a break evaluation error
- Changed how mIRC manages its string pool memory to ensure that very large strings are freed immediately
- Changed $hfind() to allow $null text parameter
- Fixed on NOTIFY/UNOTIFY events not resetting print/halt state across events
- Changed the way long lines are displayed to get around ExtTextOut() timeout limitation
- Changed default hash table hash function to modified FNV-1A for improved distribution
- Added support for dynamic-resizing in hash tables for features like the IAL, nickname lists, INI files, etc. that start off with small hash tables and expand as necessary to improve performance
- Fixed $readini() reporting an evaluation error when reading a line that contains only empty spaces
- Changed the [dirs] section to always contain "getdir", refers to the default item in [extensions]
- Updated TagLib sound library to latest fixes
- In preparation for language translation support, changes have been made to the way resources are loaded, the resources file has been changed to Unicode, and many string resources have been cleaned up and/or re-worded to improve context and make translation easier
- Fixed $cb() not delimiting different combinations of $cr, $lf, and $crlf correctly in the same text
- Fixed $var().secs for local variables returning global variable values
- Added /load -aN switch that loads alias file into Nth position
- Fixed $cb(0,u) not returning line count
- Extended /debug -t timestamp to apply to log files
- Changed how /clipboard and $cb() are called to mitigate clipboard being in use by other applications
- Fixed $isbit()/$biton()/$bitoff() allowing N outside range 1 to 32
- Changed /var to report an error if it is used outside a script
- Added /hload and /hsave -B switch that uses a larger index to allow longer binary data to be saved. This is not compatible with files created by the -b switch
- Changed script editor editbox to allow longer lines before it starts wrapping
- Changed DCC Send file dialog to display some custom controls better under dark mode in Windows 10
- Fixed /ignore -l not showing items in ignore list