Win32::Process only creates processes on the local machine. When you run a web server, from Win32::Process's point of view, the web server is the local machine.
There are calls to create processes on other machines, but it involves security cooperation, and a few other things. You *could* write a
Win32::API set of calls to implement remote processing, or you can write a custom application that acts as a remote processor by using
Soap, or something similiar.
Windows supports Remote Procedure Calls as one method of process delegation. With this, you write stubs that do the processing you want, and bind them to the O/S. You can also set authentication levels, minimum or maximum load level requirements, and some other fun stuff. There's a *large* chapter about this in the MSDN stuff. As far as I know, and I haven't looked into this much, you can't just throw an arbitrary process to a machine to be run. There's all sorts of nasty things that can happen, that would make VBScript viruses look like a pleasant thing to have happen.
The reason you don't see the notepad.exe window on the server, is because the web server does not have permission to interact with the desktop. There is a bit that can be set as to whether that's permitted or not for a background process. Most processes (DNS, web serving, etc) do not require the ability to display windows on the desktop. Since notepad.exe is a child process of the web server, the notepad.exe window does not show up on the desktop.
--Chris
e-mail jcwren