WSUSPraxis 48 Posted April 14, 2006 Report Share Posted April 14, 2006 Bis jetzt war ich der meinung das ich mit: csvde -f ausgabe.csv -r (objectClass=User) -l proxyAddresses oder "objectClass=publicfolder" oder "objectClass=group" alle E-Mailaddresen einer Domaine auslesen kann ? Leider wirft die *.csv nicht wirklich E-Mailadressen aus sondern eigentlich alle Domaineobjekte ? Was mache ich in der Abfrage falsch ? Oder gibt es ein anderen sinnvollen Weg alle(wirklich alle) E-Mailadressen angezeigt zu bekommen ? Quote Link to comment
GuentherH 61 Posted April 15, 2006 Report Share Posted April 15, 2006 Hi. Schau mal - http://www.sbspraxis.de/exchange/ex03020/ex03020.html LG Günther Quote Link to comment
WSUSPraxis 48 Posted April 16, 2006 Author Report Share Posted April 16, 2006 Hallo Günther, leider kann ich die Seite http://www.faq-o-matic.net nicht öffnen........ Hast du die Scripts noch irgendwie ...... ? Und was ich nicht verstehe ? Was ist hier falsch ? csvde -f ausgabe.csv -r (objectClass=User) -l proxyAddresses Quote Link to comment
WSUSPraxis 48 Posted April 16, 2006 Author Report Share Posted April 16, 2006 Also seit grad kann ich die Seite auch wieder erreichen ! Ich habe es so gemacht wie Günther es auf seiner Seite beschrieben hat ? Aber irgendwie bekomme ich immer Ausgabefehler....... ''''''''''''''''''''''''''''''''''''''''''''''''''''' ' AD-Mailadressen_anzeigen.vbs ' Beschreibung ' ' Version: 1.1a ' Datum: 21.04.2005/23.08.2005 ' Autor: Nils Kaczenski (Vorname at Nachname .de) ' Letzte Änderungen: ' ' Nils Kaczenski stellt dieses Skript ohne jede ' Gewährleistung zur Verfügung. ' Die Verwendung geschieht auf eigene Gefahr. ' ''''''''''''''''''''''''''''''''''''''''''''''''''''' Option Explicit Dim strMail ' Dim arrMember ' Dim arrObjectClass ' Dim arrProxyAddresses ' Dim i ' Dim objConn ' Dim objExplorer ' Dim objRSAD ' Dim objRSlokal ' Dim strAusgabe ' Dim strConn ' Dim strMember ' Dim strObjectClass ' Dim strSQL ' Dim objRootDim testfirma.local Set objConn = CreateObject("ADODB.Connection") Set objRSlokal = CreateObject("ADODB.Recordset") ' Domänenzugriff ... set objRoot = GetObject("LDAP://rootDSE") strDomain = objRoot.Get("DefaultNamingContext") ' Datenbankzugriff ... strConn = "Provider=ADsDSOObject;" objConn.Open strConn ' Zugriff auf die gesamte Tabelle strSQL = "SELECT name,mailNickname,mail,proxyAddresses,member,objectClass " _ & "FROM 'LDAP://" & strDomain & "' WHERE mailNickname='*'" Set objRSAD = objConn.Execute(strSQL) ' lokales Recordset zur Anzeige definieren objRSlokal.Fields.Append "Mailadresse", 202, 255 objRSlokal.Fields.Append "Name", 202, 255 objRSlokal.Fields.Append "Alias", 202, 255 objRSlokal.Fields.Append "Typ", 202, 255 objRSlokal.Fields.Append "Mitglieder", 202, 16384 objRSlokal.Open Do Until objRSAD.EOF arrProxyAddresses = objRSAD("proxyAddresses") strMail = objRSAD("mail") If Not IsNull(objRSAD("member")) Then arrMember = objRSAD("member") strMember = Join(arrMember, "<br>") Else strMember = "" End If arrObjectClass = objRSAD("objectClass") strObjectClass = arrObjectClass(UBound(arrObjectClass)) For i=0 To UBound(arrProxyAddresses) If LCase(Left(arrProxyAddresses(i),5)) = "smtp:" Then ' Neuen Datensatz lokal einfügen objRSlokal.AddNew objRSlokal("Name") = objRSAD("name") objRSlokal("Alias") = objRSAD("mailNickname") objRSlokal("Typ") = strObjectClass objRSlokal("Mailadresse") = Mid(arrProxyAddresses(i),6) objRSlokal("Mitglieder") = strMember objRSlokal.Update End If Next objRSAD.MoveNext Loop objRSlokal.Sort="Mailadresse" objRSlokal.MoveFirst strAusgabe = objRSlokal.GetString(2, -1, "</TD><TD>", "</TD></TR>" _ & vbCrLf & "<TR><TD>", " ") strAusgabe = "<HTML><BODY style=""font-family:sans-serif;"">" _ & "<TABLE border=""1""><TR><TD>" _ & strAusgabe & "</TD></TR></TABLE></BODY></HTML>" Set objExplorer = CreateObject("InternetExplorer.Application") objExplorer.Navigate "about:blank" objExplorer.ToolBar = 0 objExplorer.StatusBar = 0 objExplorer.Width=500 objExplorer.Height = 400 objExplorer.Left = 0 objExplorer.Top = 0 objExplorer.Visible = 1 objExplorer.document.writeln(strAusgabe) Leider bin ich nicht so der .vbs Scripter und weiß nicht genau wo ich meine Domaine noch einsetzen muss ? Quote Link to comment
detlev 10 Posted April 17, 2006 Report Share Posted April 17, 2006 Hallo Der Schwabe, der Fehler ist hier Dim objRootDim testfirma.local Es muss heissen Dim objRoot Dim strDomain dann funktioniert das script. Gruß Detlev Quote Link to comment
WSUSPraxis 48 Posted April 17, 2006 Author Report Share Posted April 17, 2006 Wow vielen Dank Und noch schöne Ostern............. Quote Link to comment
WSUSPraxis 48 Posted April 17, 2006 Author Report Share Posted April 17, 2006 Jetzt habe ich das 2 Script auch noch getestet ? Aber nun erhalte ich auch ein Fehler in Zeile 91 strAusgabe = objRSlokal.GetString(2, -1, "</TD><TD>", "</TD></TR>" _ & vbCrLf & "<TR><TD>", " ") Was ist hier noch falsch ? Quote Link to comment
WSUSPraxis 48 Posted April 17, 2006 Author Report Share Posted April 17, 2006 ''''''''''''''''''''''''''''''''''''''''''''''''''''' ' AD-Mailadressen_suchen.vbs ' Beschreibung ' ' Version: 1.1a ' Datum: 27.04.2005/23.8.2005 ' Autor: Nils Kaczenski (Vorname at Nachname .de) ' Letzte Änderungen: ' ' Nils Kaczenski stellt dieses Skript ohne jede ' Gewährleistung zur Verfügung. ' Die Verwendung geschieht auf eigene Gefahr. ' ''''''''''''''''''''''''''''''''''''''''''''''''''''' Option Explicit Dim strSuchstring ' Dim strMail ' Dim arrMember ' Dim arrObjectClass ' Dim arrProxyAddresses ' Dim i ' Dim objConn ' Dim objExplorer ' Dim objRSAD ' Dim objRSlokal ' Dim strAusgabe ' Dim strConn ' Dim strMember ' Dim strObjectClass ' Dim strSQL 'Dim objRootDim strDomain Set objConn = CreateObject("ADODB.Connection") Set objRSlokal = CreateObject("ADODB.Recordset") strSuchstring = InputBox("Wonach wird in der Mailadresse gesucht?", _ "Mailadresse suchen") ' Domänenzugriff ... set objRoot = GetObject("LDAP://rootDSE") strDomain = objRoot.Get("DefaultNamingContext") ' Datenbankzugriff ... strConn = "Provider=ADsDSOObject;" objConn.Open strConn ' Zugriff auf die gesamte Tabelle strSQL = "SELECT name,mailNickname,mail,proxyAddresses,member,objectClass " _ & "FROM 'LDAP://" & strDomain & "' WHERE proxyAddresses='*" _ & strSuchstring & "*'" Set objRSAD = objConn.Execute(strSQL) ' lokales Recordset zur Anzeige definieren objRSlokal.Fields.Append "Mailadresse", 202, 255 objRSlokal.Fields.Append "Name", 202, 255 objRSlokal.Fields.Append "Alias", 202, 255 objRSlokal.Fields.Append "Typ", 202, 255 objRSlokal.Fields.Append "Mitglieder", 202, 16384 objRSlokal.Open Do Until objRSAD.EOF arrProxyAddresses = objRSAD("proxyAddresses") strMail = objRSAD("mail") If Not IsNull(objRSAD("member")) Then arrMember = objRSAD("member") strMember = Join(arrMember, "<br>") Else strMember = "" End If arrObjectClass = objRSAD("objectClass") strObjectClass = arrObjectClass(UBound(arrObjectClass)) For i=0 To UBound(arrProxyAddresses) If (InStr(LCase(arrProxyAddresses(i)), LCase(strSuchstring)) <> 0 _ AND LCase(Left(arrProxyAddresses(i),5)) = "smtp:") Then ' Neuen Datensatz lokal einfügen objRSlokal.AddNew objRSlokal("Name") = objRSAD("name") objRSlokal("Alias") = objRSAD("mailNickname") objRSlokal("Typ") = strObjectClass objRSlokal("Mailadresse") = Mid(arrProxyAddresses(i),6) objRSlokal("Mitglieder") = strMember objRSlokal.Update End If Next objRSAD.MoveNext Loop If Not objRSlokal.EOF Then objRSlokal.Sort="Mailadresse" objRSlokal.MoveFirst strAusgabe = objRSlokal.GetString(2, -1, "</TD><TD>", "</TD></TR>" _ & vbCrLf & "<TR><TD>", " ") strAusgabe = "<HTML><BODY style=""font-family:sans-serif;"">" _ & "<H1>Mailadressen mit dem Inhalt " & strSuchstring & "</H1>" _ & "<TABLE border=""1""><TR><TD>" _ & strAusgabe & "</TD></TR></TABLE></BODY></HTML>" Else strAusgabe = "<HTML><BODY style=""font-family:sans-serif;"">" _ & "<p>Die Suche nach Mailadressen mit dem Inhalt " _ & strSuchstring & " hatte kein Ergebnis.</p>" _ & "</BODY></HTML>" End If Set objExplorer = CreateObject("InternetExplorer.Application") objExplorer.Navigate "about:blank" objExplorer.ToolBar = 0 objExplorer.StatusBar = 0 objExplorer.Width=500 objExplorer.Height = 400 objExplorer.Left = 0 objExplorer.Top = 0 objExplorer.Visible = 1 objExplorer.document.writeln(strAusgabe) Quote Link to comment
detlev 10 Posted April 17, 2006 Report Share Posted April 17, 2006 Hallo Der Schwabe, aus dieser Zeile Dim strSQL 'Dim objRootDim strDomain müssen drei Zeilen werden Dim strSQL ' Dim objRoot Dim strDomain dann geht`s. Gruß Detlev Quote Link to comment
WSUSPraxis 48 Posted April 17, 2006 Author Report Share Posted April 17, 2006 Hat jemand noch ne Idee wo es am 2 Script hängt ? Quote Link to comment
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.