mbond has asked for the wisdom of the Perl Monks concerning the following question:

Hey guys, I'm working on a perl script for a windows NT 4.0 box (eventually will be 2000) ... The script will have to preform some tasks on a web server that are normally reserved for the administrator (because of file permissions)... Is there a way to run the script as administrator on NT? or do i have to allow everyone modify access in the directory? Thanks in advance Mbond.

Replies are listed 'Best First'.
Re: running perl scripts as admin
by $code or die (Deacon) on Jan 26, 2001 at 02:43 UTC
    You've a few options depending on what your script is going to do:...

    1. clemburg's suggestion
    2. IIS lets you designate a default user for a file or folder to run under. You could set this to Administrator - although I don't recommend it!
    3. You can simply deny "Anonymous Access" by unchecking the box in the "directory security" tab or by removing IUSR_computer_name from the script or folder you want to run under Admin. Then you make sure that Admin has full control over that script (and anything else it needs). When you hit the page, it will prompt for a username and password. Enter the Administrator credentials and the script will run under Administrator.

    If your script doesn't need to run from a web browser you have the following options:
    1. Schedule the script to run with the AT command (Scheduler Service).
    2. Log in as Administrator and run the script manually
    3. Download Win32::Daemon from Here and create your own windows service running as administrator.

    $code or die
    Using perl at
    The Spiders Web
Re: running perl scripts as admin
by clemburg (Curate) on Jan 26, 2001 at 02:15 UTC

    I am not really sure about what you want to do, but you might be interested in the CreateProcessAsUser() function from Win32::AdminMisc by Dave Roth (see Win32 AdminMisc FAQ).

    Christian Lemburg
    Brainbench MVP for Perl
    http://www.brainbench.com