There are two advantages of using
WSH's Run method: you can delay the script until the program finishes, and you can control the window attribute (hidden, min/maximized etc). But you can't retrieve the program's output during or after the execution in this way.
There's a
Standard Input/Output Interface DLL made by DragonZap that allows mIRC to receive a program's output and analyze it before sending further inputs. Although this DLL is somewhat outdated it can still become useful.