none
DNS server mit script setzen, Übergabe von Eingabebox zu Funktion klappt nicht RRS feed

  • Frage

  • Hallo,

    wenn ich dies verwende läuft alles fein:

    $NIC_DNS = $(
     $selection = read-host 'NIC name <10.0.0.2,10.0.0.3 is default>'
     if ($selection) {$selection} else {'10.0.0.2','10.0.0.3'}
    )

    $intIndex = (gwmi Win32_NetworkAdapter | where {$_.netconnectionid -eq $NIC_Name}).InterfaceIndex
     $objNetworkInterface = Get-WmiObject Win32_NetworkAdapterConfiguration | where {$_.InterfaceIndex -eq $intIndex}
     $objNetworkInterface.SetDNSServerSearchOrder($NIC_DNS)

     

    Verwende ich hingegen das

    $NIC_DNS = [Microsoft.VisualBasic.Interaction]::InputBox("Enter a NIC DNS servers", "NIC DNS servers", "10.0.0.150 10.0.0.151")

    $intIndex = (gwmi Win32_NetworkAdapter | where {$_.netconnectionid -eq $NIC_Name}).InterfaceIndex
    $objNetworkInterface = Get-WmiObject Win32_NetworkAdapterConfiguration | where {$_.InterfaceIndex -eq $intIndex}
    $objNetworkInterface.SetDNSServerSearchOrder($NIC_DNS)

     

    Mit Write-host $NIC_DNS sehen beide Werte je gleich aus.

     

    Hat jemand eine Idee?

     

    Frank

     

    Montag, 8. August 2011 12:03

Antworten

  • Im ersten Script erhältst du ein Array aus zwei Werten zurück, im zweiten Script einen einzigen String. Splitte den String einfach in ein Array auf, dann sollte es gehen (setzt das Komma zwischen den Werten voraus):

    $NIC_DNS = $NIC_DNS.split(",")
    

    Grüße, Denniver

     


    Blog: http://bytecookie.wordpress.com

    Hilf mit und markiere hilfreiche Beiträge als "Hilfreich" und Beiträge die deine Frage ganz oder teilweise beantwortet haben als "Antwort".


    • Als Antwort markiert FrankinBerlin Montag, 8. August 2011 13:59
    Montag, 8. August 2011 13:42
    Moderator

Alle Antworten

  • Hallo Frank,

    in der Inputbox gibst Du ja den Default Wert wird. Dort hast Du einfach das Komma vergessen.

    $NIC_DNS = [Microsoft.VisualBasic.Interaction]::InputBox("Enter a NIC DNS servers", "NIC DNS servers", "10.0.0.150,10.0.0.151")

    so sollte es passen.

    Viele Grüße

    Frank


    -- Frank Röder blog.iteach-online.de --
    Montag, 8. August 2011 12:44
  • HAllo Frank,

    Danke. Hatte ich auch schon getestet. Kein Fehler, jedoch nichts gesetzt.

    Die Übergabe ohne Inputbox sieht so aus: 10.0.0.150 10.0.0.151

    Also nur ein SPACE dazwischen.

    Die Vari ist ein Stringarray

    DNSServerSearchOrder

    String array

    Array of server IP addresses to be used in querying for DNS servers.

    Da brauche ich noch Hilfe....;-((

    Frank


    Montag, 8. August 2011 12:50
  • Im ersten Script erhältst du ein Array aus zwei Werten zurück, im zweiten Script einen einzigen String. Splitte den String einfach in ein Array auf, dann sollte es gehen (setzt das Komma zwischen den Werten voraus):

    $NIC_DNS = $NIC_DNS.split(",")
    

    Grüße, Denniver

     


    Blog: http://bytecookie.wordpress.com

    Hilf mit und markiere hilfreiche Beiträge als "Hilfreich" und Beiträge die deine Frage ganz oder teilweise beantwortet haben als "Antwort".


    • Als Antwort markiert FrankinBerlin Montag, 8. August 2011 13:59
    Montag, 8. August 2011 13:42
    Moderator
  • Hey Denniver,

    Super das war es!

     

    Danke

    Frank

    Montag, 8. August 2011 13:59