This is the story of my journey to find a way to run a process (or a program on a remote pc)
This wasn’t an easy thing at all…
Overall, I thought, this should be an easy thing to do.
I found this C# code on a Microsoft forums
1 2 3 4 5 6 7 | object [] theProcessToRun = { "notepad.exe" }; ConnectionOptions theConnection = new ConnectionOptions(); theConnection.Username = "username" ; theConnection.Password = "password" ; ManagementScope theScope = new ManagementScope( "<\\\\" + IP + "\\root\\cimv2" , theConnection); ManagementClass theClass = new ManagementClass(theScope, new ManagementPath( "Win32_Process" ), new ObjectGetOptions()); theClass.InvokeMethod( "Create" , theProcessToRun); |
I tried this code, not after forgetting to disable the firewall on the remote computer – a big downside but I guess if I had gone with it I’d hunt a way to stable port to unblock in the firewall.
Then I found the big downside (which can be an upside to some of you):
The remote process this way will never have a GUI window opened (In this example, a process of notepad will be opened in the background).
This can be a big advantage to system admins which want to run scripts.
Ok, back to the quest.