Problems converting vbscript to perl
- From: Tim.Gallagher@xxxxxxxxxx (Tim Gallagher)
- Date: Mon, 10 Apr 2006 12:34:48 -0400
I have a vb script example that I am trying to convert to Perl. Most of
the script is done except for the last part. Can some tell me what I am
missing? Here is the script.
Start Script
use Win32::OLE;
$strSearch = 'tim*;
$objRootDSE = Win32::OLE->GetObject('LDAP://RootDSE');
$strDomain1 = $objRootDSE->Get('DefaultNamingContext');
# Set up the ADO connection required to implement the search.
$objADOConn = Win32::OLE->new('ADODB.Connection');
$objADOConn->{Provider} = 'ADsDSOObject';
# Connect using current user credentials
$objADOConn->Open('Active Directory Provider');
$objADOCommand = Win32::OLE->new('ADODB.Command');
$objADOCommand->{ActiveConnection} = $objADOConn;
# Format search criteria using SQL syntax
$strADSQuery = 'SELECT samAccountName, givenName, sn, AdsPath FROM
\'LDAP://' . $strDomain1 . '\' WHERE samAccountName = \'' . $strSearch ..
'\'';
print $strADSQuery . "\n";
$objADOCommand->{CommandText} = $strADSQuery;
# Execute the search
$objQueryResultSet = $objADOCommand->Execute;
$intCount = 0;
while(<>)
{
$strAdsPath = $objQueryResultSet->Fields('AdsPath')->Item;
print 'The AdsPath is: ' . $strAdsPath, "\n";
print "\n";
$intCount = $intCount + 1;
$objQueryResultSet->MoveNext();
}
$objADOConn->Close();
End Script
The last part, while is not working and I cannot find out why. Here is
the VB script
Start script
strSearch = "tim.g*"
Set objRootDSE = GetObject("LDAP://RootDSE")
strDomain1 = objRootDSE.Get("DefaultNamingContext")
'Set up the ADO connection required to implement the search.
Set objADOConn = CreateObject("ADODB.Connection")
objADOConn.Provider = "ADsDSOObject"
'Connect using current user credentials
objADOConn.Open "Active Directory Provider"
Set objADOCommand = CreateObject("ADODB.Command")
Set objADOCommand.ActiveConnection = objADOConn
'Format search criteria using SQL syntax
strADSQuery = "SELECT samAccountName, givenName, sn, AdsPath FROM
'LDAP://" & _
strDomain1 & "' WHERE samAccountName = '" & strSearch & "'"
objADOCommand.CommandText = strADSQuery
'Execute the search
Set objQueryResultSet = objADOCommand.Execute
intCount = 0
While Not objQueryResultSet.EOF
strAdsPath = objQueryResultSet.Fields("AdsPath")
WScript.Echo("The AdsPath is: " & strAdsPath)
WScript.Echo("")
intCount = intCount + 1
objQueryResultSet.MoveNext
Wend
objADOConn.Close
end script
Timothy F. Gallagher
CSC Systems Engineer
.
- Follow-Ups:
- Re: Problems converting vbscript to perl
- From: Chas Owens
- Re: Problems converting vbscript to perl
- Prev by Date: Re: Web Interface for Perl programs
- Next by Date: Re: Web Interface for Perl programs
- Previous by thread: Web Interface for Perl programs
- Next by thread: Re: Problems converting vbscript to perl
- Index(es):
Relevant Pages
|