I'd agree with you on that statement about the exe and function within dos shell.

When a new process is started, what is "cls" acting upon? I couldn't find cls.* under NT, so I suppose it is just a string that gets parsed in cmd.exe under NT and prints blank lines and locates the cursor to the top of the window.

Strange. I thought I'd find cls.exe or cls.bat or cls.com. The main thing is to think of a new procees space. In fact, that is why you can get a Process object back if you needed one.

But you should be able to call an exe and pass it some parameter. In that way, you might say you are calling a function within an exe, but the exe would have to be programmed to take a command line arg.