This alternative of RunAs utility allows to specify a password in command line.
It does same as standard runas.exe does. The only difference is you can specify your user password right in command line.
It can be used by System Administrators in batch jobs to run tasks under admin account.
Syntax:
runasuser [-u user] [-p password] [-d domain] someprogram.exe [params]
Here is full source code:
It does same as standard runas.exe does. The only difference is you can specify your user password right in command line.
It can be used by System Administrators in batch jobs to run tasks under admin account.
Syntax:
runasuser [-u user] [-p password] [-d domain] someprogram.exe [params]
Here is full source code:
using System; using System.Diagnostics; using System.Security; namespace RunAsUser { class Program { static int Main(string[] args) { string username = "", password = "", domain = "", apppath = "", arguments = ""; for( int i=0; i<args.Length; i++) { switch (args[i].ToLower()) { case "-u": username = args[++i]; break; case "-p": password = args[++i]; break; case "-d": domain = args[++i]; break; default: if (apppath == "") apppath = args[i]; else arguments += args[i] + (i<args.Length?" ":""); break; } } if (args.Length == 0 || apppath == "" ) { Console.WriteLine("\nCommand line syntax:\nrunasuser [-u user] [-p password] [-d domain] someprogram.exe [params]\n"); return 1; } Console.WriteLine(arguments); return RunAs(apppath, arguments, domain, username, password); } static int RunAs(string apppath, string arguments, string domain, string username, string password) { Process userProcess; try { userProcess = Process.Start( apppath, arguments, username, GetSecure(password), domain); while (!userProcess.HasExited) ; return userProcess.ExitCode; } catch (Exception e) { Console.WriteLine(e.Message); } return -1; } static SecureString GetSecure(string str) { SecureString SecureStr = new SecureString(); foreach (char c in str) { SecureStr.AppendChar(c); } return SecureStr; } } }