If the server does not understand PRIVMSG it's barely an IRC server, but I'll bite:

You can write a script that acts as a proxy and set your /firewall settings to 127.0.0.1 before connecting.. that would be easier than hooking anything with a dll. Using that method you could rewrite any message passing through the proxy with a simple $replace, or what have you.

Alternatively, you can just write aliases to send the commands you need to the server, with on INPUT events to remap the message. This *is* possible in script...

Code:
alias privmsg { raw $iif(!$show,-q) PM $1 : $+ $2- }
on *:INPUT:*:echo $target $+(<,$me,>) $1- | .privmsg $target $1-


You can do similar things for other output functions, but not for input.. again, mIRC is designed to understand the IRC protocol which is defined strictly with PRIVMSG as the command.. there's no reason to have support for any other command, that wouldn't be IRC. Inform the admins that they completely disregarded the IRC protocol ( http://www.faqs.org/rfcs/rfc1459.html ) and that just about every client will be affected by this. If their change was intentional to keep certain clients out, well, then we won't help you break their rules.

The dll solution in this case would require extensive reverse engineering of the exe which is really far to involved for anyone here to cover or even recommend trying.



- argv[0] on EFnet #mIRC
- "Life is a pointer to an integer without a cast"