2011-12-05 21 views
-2

このスクリプトで何が問題になっていますか?Microsoft VBScriptコンパイルエラー:期待されるステートメント

Option Explicit 

Dim objRootDSE, strDNSDomain, adoConnection 
Dim strBase, strFilter, strAttributes, strQuery, adoRecordset 
Dim dtmStart, dtmEnd, strStart, strEnd 
Dim strID, strFirst, strLast, strNTName 

dtmEnd = Now() 
dtmStart = DateAdd("d", -7, dtmEnd) 
strStart = CStr(Year(dtmStart)) _ 
& Right("0" & CStr(Month(dtmStart)), 2) _ 
& Right("0" & CStr(Day(dtmStart)), 2) & "000000.0Z" 
strEnd = CStr(Year(dtmEnd)) _ 
& Right("0" & CStr(Month(dtmEnd)), 2) _ 
& Right("0" & CStr(Day(dtmEnd)), 2) & "235959.0Z" 

' Determine DNS domain name. 
Set objRootDSE = GetObject("LDAP://RootDSE") 
strDNSDomain = objRootDSE.Get("defaultNamingContext") 

' Use ADO to search Active Directory. 
Set adoConnection = CreateObject("ADODB.Connection") 
adoConnection.Provider = "ADsDSOObject" 
adoConnection.Open "Active Directory Provider" 

Set adoRecordset = CreateObject("ADODB.Recordset") 
adoRecordset.ActiveConnection = adoConnection 

' Search entire domain. 
strBase = "<LDAP://" & strDNSDomain & ">" 

'For user accounts for people created in the last week 
strFilter = "(&(objectCategory=person)(objectClass=user)" _ 
& "(whenCreated>=" & strStart & ")(whenCreated<=" & strEnd & "))" 

' Comma delimited list of attribute values to retrieve. 
strAttributes = "employeeID,sn,givenName,sAMAccountName" 

' Construct the LDAP query. 
strQuery = strBase & ";" & strFilter & ";" & strAttributes & ";subtree" 

' Run the query. 
adoRecordset.Source = strQuery 
adoRecordset.Open 

' Enumerate the resulting recordset. 
Do Until adoRecordset.EOF 
' Retrieve values. 
strID = adoRecordset.Fields("employeeID").Value 
strLast = adoRecordset.Fields("sn").Value 
strFirst = adoRecordset.Fields("givenName").Value 
strNTName = adoRecordset.Fields("sAMAccountName").Value 
Wscript.Echo """" & strID & """,""" & strLast & """,""" & strFirst 
& """,""" & strNTName & """" 
adoRecordset.MoveNext 
Loop 

' Clean up. 
adoRecordset.Close 
adoConnection.Close 
cscript //nologo test.vbs > users.csv 

戻り

(53, 1) Microsoft VBScript compilation error: Expected statement 
+0

再度お送りいただく前にFAQをお読みください。 – Chopper3

+2

VBScriptにはありますか? ; - / – ceejayoz

答えて

2

あなたはこのスニペットの最初の行の末尾にアンダーラインの継続を逃している:

Wscript.Echo """" & strID & """,""" & strLast & """,""" & strFirst 
& """,""" & strNTName & """" 

それはのようになります。これは:

Wscript.Echo """" & strID & """,""" & strLast & """,""" & strFirst _ 
& """,""" & strNTName & """" 
関連する問題