I've thought a bit more about this. The issue is that you are doing things all wrong. You should quit mIRC before you put your computer to sleep.

IRC servers send ping messages to each client and expect a reply (pong message) from them. If it doesn't get replies then it assumes that your connection has gone dead, as it has - PC in sleep mode.

On PC wake up it is probably set to reconnect on disconnect (Options, Connect, Options, Reconnect on disconect - you probably also have Connect on Startup set as well).

You might want to look in the Perform section (click on the perform button) and see what is in the perform commands box. That is the most likely place for people who are not scripters to put the login/authentication lines and then any join commands (which might not be required given the above rejoin tick box).

If there is nothing in the perform box or the Enable Perform on connect is unticked, then you have to star tlooking through any scripts files you have loaded - see the script editor (button on toolbar or Tools, Scripts editor).

What I don't understand is that this works if machine is started up but doesn't on wake-up after sleep mode, but as I said, sleep mode can case all manner of upsets for applications.

Basically what is happening is that your nickname is NOT being authenticated (/Nickserv Identify <password). One other point to be considered here is to make sure that you are using your nickname and not your alternate nickname (set in Tools, Option, Connect).

Have a look at the nickname in use, it will be displayed on the title bar of the status window straight after 'Status:'.

Once you have figured out why you are not being authenticated then you fix that and the rest should work.

The user mode +r will be set by the server once you have authenticated (identified) and you can re-join the channels. Once it is set you will see the + and 'r' within square brackets just after the nickname in the title bar of the status window.

One final thing if you are in fact being autheticated correctly, then it is possible that you are not using script lines to re-join the channels in which case the 'Rejoin channels on connect' (see my previous message) is causing the rejoin attempt(s) to happen BEFORE you have (re-)authenticated, which would result in the 'you need to ..' message. mIRC is trying to re-join the channels BEFORE +r usermode has been set.

This is the main reason that I don't normally use the perform box: people try to make it do actions 1,2,3 on connecting and hope it works. More often you have to code lines in a scipt because they are event driven. In other words they wait for something to happen, and when it does they do something - like waiting for +r to be set and only then (re-)join the channels.

I do hope this provides some clarity and helps you sort things out.