none
UNC-Pfad eines AD Objects auslesen RRS feed

  • Frage

  • Hi.

    Wir haben uns vorgenommen zukünftig alle VBS Scripte zur Installation von Software auf PowerShell umzustellen, dies klappt so weit auch ganz gut, nun stehe ich allerdings vor einem kleinen Problem, für welches ich einfach keine Lösung finde.

    Bisher haben wir es so gelöst, dass wir uns im AD das Object (Type Shared Folder) "Installsource" angelegt haben, welchem wir den UNC Pfad unseres Installationsshares hinterlegt haben. Diesen haben wir über das folgende Script ausgelesen:

    Set objShare = GetObject("LDAP://CN=InstallSource,OU=Firma," & strDNSDomain)
    sSourcePath = objShare.uncname

    Ich habe bereits versucht dies irgendwie in PS nachzubauen, bekomme es aber einfach nicht hin. Hat jemand eine Idee oder eine Lösung für dieses Problem?

    Vielen Dank im Voraus,

    Carsten

    Donnerstag, 9. Februar 2012 11:49

Antworten

  • Mach mal in der PowerShell folgendes:

    $ADObjekt = [ADSI]"LDAP://CN=InstallSource,OU=Firma,$strDNSDomain"
    $ADObjekt | Get-Member

    Dann siehst du was dir das Objekt alles anbietet.
    Wenn das Property uncname dabei ist dann kannst du einfach dies machen:

    $ADObjekt = [ADSI]"LDAP://CN=InstallSource,OU=Firma,$strDNSDomain"
    $ADObjekt.UncName


    Please click “Mark as Answer” if my post answers your question and click Vote as Help if my Post helps you.
    Bitte markiere hilfreiche Beiträge von mir als Hilfreich und Beiträge die deine Frage ganz oder teilweise beantwortet haben als Antwort.
    My PowerShell Blog http://www.admin-source.info

    [string](0..21|%{[char][int]([int]("{0:d}" -f 0x28)+('755964655967-86965747271757624-8796158066061').substring(($_*2),2))})-replace" "

    • Als Antwort markiert toexelchen Donnerstag, 9. Februar 2012 13:24
    Donnerstag, 9. Februar 2012 13:03

Alle Antworten

  • Mach mal in der PowerShell folgendes:

    $ADObjekt = [ADSI]"LDAP://CN=InstallSource,OU=Firma,$strDNSDomain"
    $ADObjekt | Get-Member

    Dann siehst du was dir das Objekt alles anbietet.
    Wenn das Property uncname dabei ist dann kannst du einfach dies machen:

    $ADObjekt = [ADSI]"LDAP://CN=InstallSource,OU=Firma,$strDNSDomain"
    $ADObjekt.UncName


    Please click “Mark as Answer” if my post answers your question and click Vote as Help if my Post helps you.
    Bitte markiere hilfreiche Beiträge von mir als Hilfreich und Beiträge die deine Frage ganz oder teilweise beantwortet haben als Antwort.
    My PowerShell Blog http://www.admin-source.info

    [string](0..21|%{[char][int]([int]("{0:d}" -f 0x28)+('755964655967-86965747271757624-8796158066061').substring(($_*2),2))})-replace" "

    • Als Antwort markiert toexelchen Donnerstag, 9. Februar 2012 13:24
    Donnerstag, 9. Februar 2012 13:03
  • Die Abfrage über ADSI klappt super. Wusste bisher nicht, dass ich durch "Get-Member" die Propertyliste bekomme, das wird mich auch in Zukunft um einiges weiter bringen, danke dir.

    Hatte es isher irgendwie über das Quest Snapin versucht, das bietet aber als Property den UNCNamen erst gar nicht an. Ich denke, ich sollte mich wohl mal nach einem Tutorial für die ADSI Befehle für PS umsehen.

    Vielen Dank nochmal für deine Hilfe Peter. Nun kann ich endlich weiter machen.

    Donnerstag, 9. Februar 2012 13:27
  • Die wichtigsten Kommandos in PowerShell sind:

    Get-Help
    Get-Command
    Get-Member

    Siehe: http://www.powershellpraxis.de/Die-drei-wichtigsten-Cmdlets.946.0.html

    Es gibt mit der PowerShell verschiedene Techniken um auf das AD zu zugreifen.

    • ADSI benutzt die .NET Directory Services Objecte
    • .NET Directory Services direct
    • Die QAD cmdlest von der Firma Quest (empfohlen)
    • (und zuletzt weil zuletzt entwickelt) die cmdlets von Microsoft im Modul ActiveDirectory

    Die QAD von Quest sind am leichtesten zu nutzen. Wir benutzen die auch hier.
    Wenn du nichts nachladen willst dann nimm [ADSI] oder .NET .NET Directory Services direct.
    Ich empfehle deshalb, immer auch [ADSI] zu lernen, da man es immer sofort nutzen kann.

    Siehe: http://www.powershellpraxis.de/ActiveDirectory.949.0.html

    Das beste Buch über PowerShell in deutsch ist das vom Dr. Holger Schwichtenberger ISBN 978-3-8273-2926-4 !!!!!


    Please click “Mark as Answer” if my post answers your question and click Vote as Help if my Post helps you.
    Bitte markiere hilfreiche Beiträge von mir als Hilfreich und Beiträge die deine Frage ganz oder teilweise beantwortet haben als Antwort.
    My PowerShell Blog http://www.admin-source.info

    [string](0..21|%{[char][int]([int]("{0:d}" -f 0x28)+('755964655967-86965747271757624-8796158066061').substring(($_*2),2))})-replace" "


    Donnerstag, 9. Februar 2012 15:59