Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Frage Sonstige Systeme

AD Computerbeschreibung mittels VBScript einen Wert über ADODB.Connection inserten

Mitglied: IT-Eric

IT-Eric (Level 1) - Jetzt verbinden

04.10.2006, aktualisiert 05.10.2006, 9906 Aufrufe, 3 Kommentare

Hallo,

ich möchte nun meine bestehende ADODB.Connection zum AD nutzen und in die Beschreibung des AD Objekts Computer einen Wert reinschreiben.

Wie mache ich das?

Hier meine Verbindung:
Const ADS_SCOPE_SUBTREE = 2
Set objConnection = CreateObject("ADODB.Connection")
Set objCommand = CreateObject("ADODB.Command")
objConnection.Provider = "ADsDSOObject"
objConnection.Open "Active Directory Provider"
Set objCommand.ActiveConnection = objConnection
objCommand.CommandText = "??????????????????????"
objCommand.Properties("Page Size") = 1000
objCommand.Properties("Searchscope") = ADS_SCOPE_SUBTREE
Set objRecordSet = objCommand.Execute

Mir fehlt, soweit ich das beurteilen kann der richtige insert Befehl für "??????????????????????" im Script oben.

Irgendwas wie: insert beschreibung into 'LDAP://DC=test,DC=org' where typ=Computer ans name='Computername' values('Beschreibungstext1')

Gruß und Danke vorweg
IT-Eric
Mitglied: bastla
04.10.2006 um 19:22 Uhr
Hallo IT-Eric!

Zu Deinem Ansatz: Im Original-Beispiel aus dem MS-TechNet Script Center geht es so weiter ...

01.
... 
02.
objCommand.CommandText = _ 
03.
    "Select Name, Location, operatingSystemVersion from " & _ 
04.
        "'LDAP://DC=fabrikam,DC=com' where objectClass='computer'" & _ 
05.
            " and operatingSystemVersion = '5.1 (3600)'"   
06.
 
07.
...
Ergebnis: Recordset mit den entsprechenden Feldern "Name", "Location", "operatingSystemVersion" - daher müsstest Du das SQL-Statement um das Feld "Description" und um "Name = 'Computername'" ergänzen und in weiterer Folge das (hoffentlich nur aus einem Satz bestehende) Recordset zum Zurückschreiben der Description verwenden.

Einfacher könnte es so gehen (neues Script):
01.
Set objComputer = GetObject _  
02.
    ("LDAP://CN=Computername,CN=Computers,DC=test,DC=org") 
03.
 
04.
objComputer.Put "Description" , "WasAuchImmer" 
05.
objComputer.SetInfo
HTH
bastla
Bitte warten ..
Mitglied: IT-Eric
05.10.2006 um 07:23 Uhr
Danke erstmal für Deine Antwort. Den Select und das Recordset habe ich schon.
Ich habe aber keine Ahnung, wie ich das veränderte Recordset dann wieder ins AD rein bekomme.

Mit dem objComputer.Put "Description" , "WasAuchImmer" wäre es sicherlich einfacher, allerdings muss ich dann aber LDAP verwenden und wissen in welcher OU der PC steht, das will ich aber nicht bei jedem PC extra eintragen müssen.

Hier mein mein Code, den ich bisher habe, dieses möchte ich erweitern und Werte in die Computer Beschreibung ins AD eines bestimmten PCs schreiben(Später werden die Beschreibungen und PCs aus einer Textdatei ausgelesen:

Const ADS_SCOPE_SUBTREE = 2
Const ForReading = 1, ForWriting = 2, ForAppending = 8

Set objConnection = CreateObject("ADODB.Connection")
Set objCommand = CreateObject("ADODB.Command")
Set objFileSystem = CreateObject("Scripting.FileSystemObject")
sFilePath = "c:\misc\vbs\description.txt"
Set fOutput = objFileSystem.OpenTextFile(sFilePath, ForWriting, True)
objConnection.Provider = "ADsDSOObject"
objConnection.Open "Active Directory Provider"

Set objCommand.ActiveConnection = objConnection
objCommand.CommandText ="Select Name, Description, Location from " & "'LDAP://DC=DOMAINE,DC=ORG' where objectClass='computer'"

objCommand.Properties("Page Size") = 1000
objCommand.Properties("Searchscope") = ADS_SCOPE_SUBTREE
Set objRecordSet = objCommand.Execute
objRecordSet.MoveFirst

'Zeigt das ganze auch noch an

Do Until objRecordSet.EOF
if objRecordSet.Fields("Name").Value ="COMPUTERNAME1" then
fOutput.WriteLine join(objRecordset.Fields("Description").Value)

'Set objRecordSet = objCommand.Execute
end if
objRecordSet.MoveNext
Loop
fOutput.Close
Set fOutput = Nothing


Im Script wird die Beschreibung von COMPUTERNAME1 in die Textdatei geschrieben. Die Erweiterung soll das einfach umgekehrt machen, ohne zu wissen in welcher OU der PC ist.

Viele Grüße
Eric
Bitte warten ..
Mitglied: IT-Eric
05.10.2006 um 07:46 Uhr
Ich habe mir wie folgt nun geholfen:
Nachdem ich im Recordset den entsprechenden PC gefunden habe, kann ich ja den LDAP Pfad mit auslesen. Den weiss ich ja dann auch. Danach kann ich mit Deinen Befehlen den Wert schreiben.

Danke!

Hier mein Code:
Const ADS_SCOPE_SUBTREE = 2
Const ForReading = 1, ForWriting = 2, ForAppending = 8

Set objConnection = CreateObject("ADODB.Connection")
Set objCommand = CreateObject("ADODB.Command")
Set objFileSystem = CreateObject("Scripting.FileSystemObject")
set objDomain = GetObject("WinNT://" & domain)
domain = "DOMAINE.org"

sFilePath = "c:\misc\vbs\description.txt"
Set fOutput = objFileSystem.OpenTextFile(sFilePath, ForWriting, True)
objConnection.Provider = "ADsDSOObject"
objConnection.Open "Active Directory Provider"

Set objCommand.ActiveConnection = objConnection
objCommand.CommandText ="Select Name, Description, ADsPath from " & "'LDAP://DC=DOMAINE,DC=org' where objectClass='computer'"

objCommand.Properties("Page Size") = 1000
objCommand.Properties("Searchscope") = ADS_SCOPE_SUBTREE
Set objRecordSet = objCommand.Execute
objRecordSet.MoveFirst



Do Until objRecordSet.EOF
if objRecordSet.Fields("Name").Value ="ComputerName1" then

Set objaktuellerPC = GetObject (objRecordset.Fields("ADsPath").Value)
objaktuellerPC.Put "Description" , "WasAuchImmer"
objaktuellerPC.SetInfo

end if
objRecordSet.MoveNext
Loop
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Computerbeschreibung im AD per Batch einfügen
gelöst Frage von Fighter-01Batch & Shell3 Kommentare

Hallo an die Experten. Ich versuche, per Batch die Beschreibung von Computerkonten im AD zu ergänzen. Das Script ist ...

Batch & Shell
PS Werte CSV-Datei in AD Attribut
gelöst Frage von lupoloBatch & Shell3 Kommentare

Hallo Leute, ich komm grad irgendwie nicht weiter. Wir müssten für jeden AD Benutzer ein AD-Attribut (scanPath) mit dem ...

Datenbanken
Primärschlüsselfehler bei insert Statement
gelöst Frage von dax4funDatenbanken6 Kommentare

Hi liebe Leute, info: habe bei einer DB per select die gewünschten Daten abgefragt und in eine csv gesichert. ...

Datenbanken
TSQL - Tabellen Export als Insert Statement
Frage von ooAlbertDatenbanken3 Kommentare

Hallo, ich möchte ganz gern eine Tabelle aus meiner Datenbank (SQL Server 2008 R2) programatisch exportieren, als Insert Statment. ...

Neue Wissensbeiträge
Linux

Meltdown und Spectre: Linux Update

Information von Frank vor 8 StundenLinux1 Kommentar

Meltdown (Variante 3 des Prozessorfehlers) Der Kernel 4.14.13 mit den Page-Table-Isolation-Code (PTI) ist nun für Fedora freigegeben worden. Er ...

Tipps & Tricks

Solutio Charly Updater Fehlermeldung: Das Abgleichen der Dateien in -Pfad- mit dem Datenobject ist fehlgeschlagen

Tipp von StefanKittel vor 1 TagTipps & Tricks

Hallo, hier einmal als Tipp für alle unter Euch die mit der Zahnarztabrechnungssoftware Charly von Solutio zu tun haben. ...

Sicherheit

Meltdown und Spectre: Wir brauchen eine "Abwrackprämie", die die CPU-Hersteller bezahlen

Information von Frank vor 1 TagSicherheit12 Kommentare

Zum aktuellen Thema Meltdown und Spectre: Ich wünsche mir von den CPU-Herstellern wie Intel, AMD oder ARM eine Art ...

Sicherheit

Meltdown und Spectre: Realitätscheck

Information von Frank vor 1 TagSicherheit9 Kommentare

Die unangenehme Realität Der Prozessorfehler mit seinen Varianten Meltdown und Spectre ist seit Juni 2017 bekannt. Trotzdem sind immer ...

Heiß diskutierte Inhalte
Sicherheit
Meltdown und Spectre: Die machen uns alle was vor
Information von FrankSicherheit24 Kommentare

Aktuell sieht es in den Medien so aus, als hätten die Hersteller wie Intel, Microsoft und Co den aktuellen ...

Netzwerkgrundlagen
Welches Modem für VDSL 50000 der T-Com
gelöst Frage von Windows10GegnerNetzwerkgrundlagen23 Kommentare

Hallo, ein Kollege von mir will sich VDSL50000 von der T-Com holen, um daran einen Server zu betreiben. Ich ...

Ubuntu
Ubuntu - Starter für nicht vertrauenswürdige Anwendungen
Frage von adm2015Ubuntu17 Kommentare

Hallo zusammen, Ich verwende derzeit die Ubuntu Versionen 17.10 bzw. im Test 18.04. Ich habe mehrere .desktop Dateien in ...

Netzwerke
Packet loss bei "InternetLeitungsvollauslastung"
gelöst Frage von Freak-On-SiliconNetzwerke17 Kommentare

Servus; Ja der Titel klingt komisch, is aber so. Wenn die Internetleitung voll ausgelastet ist, hab ich extreme packet ...