Beefy Boxes and Bandwidth Generously Provided by pair Networks
go ahead... be a heretic

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 lurking in the Monastery: (4)
As of 2015-11-27 04:22 GMT
Find Nodes?
    Voting Booth?

    What would be the most significant thing to happen if a rope (or wire) tied the Earth and the Moon together?

    Results (717 votes), past polls