in reply to su on winnt

Take a look at Dave Roth's Win32::AdminMisc program. From the FAQ:

use Win32::AdminMisc; use Win32; if (Win32::AdminMisc::LogonAsUser($Domain, $User, $Password, LOGON32_L +OGON_INTERACTIVE)){ print "Successfully logged on.\n"; print "\nLaunching $Program...\n"; $Result = Win32::AdminMisc::CreateProcessAsUser( $Process, "Flags", CREATE_NEW_CONSOLE, "XSize", 640, "YSize", 400, "X", 200, "Y", 175, "XBuffer", 80, "YBuffer", 175, "Title", "Title: $User" . "'s $Pr +ocess program", "Fill", BACKGROUND_BLUE | FOREGROUND_RED | FOREGROUND_BLUE | FOREGROUND_INTENSITY | FOREGROUND_GREEN, ); if ($Result){ print "Successful! The new PID is $Result.\n"; }else{ print "Failed.\n\tError: " . Win32::FormatMessage(Win32::Admin +Misc::GetError()) . "\n"; } }else{ print "Failed to logon.\n\tError: " . Win32::FormatMessage(Win32:: +AdminMisc::GetError()) "\n"; } Returns: undef if unsuccessful process id (PID) if successful

As a side note, if you happen to have any Win2K servers, the runas command <emphasis>finally</emphasis> gives you a command-line su in Win32.

----Asim, known to some as Woodrow.

Replies are listed 'Best First'.
Re: Re: su on winnt
by mce (Curate) on Nov 09, 2001 at 19:11 UTC
    Wow, Super cool this module.
    Why isn't this module available from CPAN?
    Dr. Mark Ceulemans

    Senior Consultant

    IT Masters, Belgium