Not a bad idea. This will get you by in the meantime:
Code:
ON *:START: {
  if (%ws.mirctime == $null) {
    set %ws.mirctime $file(mirc.exe).atime
  }
  .timermt 0 600 mirctime
}
alias mirctime {
  if ($file(mirc.exe).atime > %ws.mirctime) {
    echo -ta You have more than one instance of mIRC running.
  .timermt off
  }
}
ON *:EXIT: {
  unset %ws.mirctime
}
This is a bit rough but basically it checks for a second instance every five minutes.