Beefy Boxes and Bandwidth Generously Provided by pair Networks
Problems? Is your data what you think it is?

by jjhorner (Hermit)
on Feb 14, 2002 at 18:27 UTC ( #145525=sourcecode: print w/ replies, xml ) Need Help??

Category: Win32 web stuff
Author/Contact Info J. J. Horner
Description: For those of us who have to administer IIS installations, we find it backward that the mmc (THE IIS ADMIN TOOL!) can't set the DefaultLogonDomain property of the MSFTPSVC. Instead of using some loopy VB way to do it, I wrote a simple utility and use it now. Easy, straightforward and a small example of ADSI code.
# Filename:
# Author:      J. J. Horner (
# Date:        2/14/2002
# Purpose:     Sets DefaultLogonDomain property of MSFTPSVC
#              on $machine.
# Usage:       $0 <machine_name> <new defaultlogondomain>
# License:     GPL
#          (
use warnings;
use strict;
use diagnostics;
use Win32::OLE;

my $DEBUG = 0;                          # In case I need to write some
+ DEBUG messages
$^W = 1;
Win32::OLE->Option(Warn => 1);          # Nice, informative error mess
+ages, but don't die.

my $usage = "\n\n $0 <machine_name> <new value>\n\n";
die $usage unless (@ARGV == 2);
my $server = shift;
my $newlogondomain = shift;

eval {
     ### GetObject and get current value.  For main FTP server IIS://$
+server/MSFTPSVC is needed
     my $ftpobj = Win32::OLE->GetObject("IIS://$server/MSFTPSVC") or d
+ie "Couldn't get object: $!\n";
     my $oldlogondomain = $ftpobj->{DefaultLogonDomain};
     ### Since Domains are not case sensitive, use case-insensitive re
     if ($oldlogondomain =~ /^$newlogondomain$/i) {
          ### Already functionally the same, all done!
          print "No change needed.  Current DefaultLogonDomain setting
+ correct.\n";
     } else {
          ### Set, commit, and report...
          $ftpobj->{DefaultLogonDomain} = $newlogondomain;
          print "DefaultLogonDomain changed from $oldlogondomain to $n
### Report any errors...
print Win32::OLE->LastError()."\n" if (Win32::OLE->LastError());

Comment on
Download Code

Back to Code Catacombs

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: sourcecode [id://145525]
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others making s'mores by the fire in the courtyard of the Monastery: (8)
As of 2015-10-07 10:37 GMT
Find Nodes?
    Voting Booth?

    Does Humor Belong in Programming?

    Results (178 votes), past polls