mcb1988
Goto Top

Powershell : DNS Abfrage : Ausgabe in Textbox

Hallo Zusammen,

vorweg, ich bin ein totaler Powershell-Neuling. Ich möchte für meine Kollegen ein kurzes Script erstellen zur Abfrage von DNS-Records.

Soweit bin ich momentan:

$d = Read-Host -prompt "Bitte geben Sie die Domain ein"  

$lyncdiscover = Resolve-DnsName lyncdiscover.$d -type CNAME
$sip          = Resolve-DnsName sip.$d -Type CNAME
$SRV_fed      = Resolve-DnsName _sipfederationtls._tcp.$d -Type SRV
$SRV_sip      = Resolve-DnsName _sip._tls.$d -Type SRV

$lyncdiscover,$sip,$SRV_fed,$SRV_sip 

Read-Host -Prompt "Press Enter to exit"  

Das funktioniert auch, das Ergebnis wird direkt in der Konsole ausgegeben

lyncdiscover.xxx.com CNAME 3600 Answer lyncdiscover.yyy.com
sip.xxx.com CNAME 3600 Answer sip.yyy.com

Name : _sipfederationtls._tcp.xxx.com
QueryType : SRV
TTL : 3600
Section : Answer
NameTarget : sip.xxx.com
Priority : 0
Weight : 0
Port : 5061

Name : _sip._tls.xxx.com
QueryType : SRV
TTL : 81598
Section : Answer
NameTarget : sip.xxx.com
Priority : 0
Weight : 0
Port : 443

Nun würde ich das Ergebnis gern in einer Message Box ausgeben. Habe es beispielsweise so versucht:
[System.Windows.Forms.MessageBox]::Show($lyncdiscover,"Titel",0)  


Leider wird nicht die CNAME-Auflösung ausgegeben, sondern:
"Microsoft.DnsClient.Commands.DnsRecord_PTR"


Kennt jemand einen unkomplizierten weg, das Ergebnis in einer msg-box auszugeben?

Bin für jeden Tipp dankbar face-smile

Viele Grüße

Max

Content-Key: 367558

Url: https://administrator.de/contentid/367558

Printed on: April 25, 2024 at 11:04 o'clock

Member: colinardo
Solution colinardo Mar 09, 2018 updated at 11:28:59 (UTC)
Goto Top
Servus Max.
Du musst deine Ausgabe als String formatieren, das was du hast sind ja Objekte keine Strings deswegen bekommst du nur den Klassennamen des Objekts als Ausgabe face-smile.

Add-Type -A System.Windows.Forms
$d = Read-Host -prompt "Bitte geben Sie die Domain ein"  
$lyncdiscover = Resolve-DnsName lyncdiscover.$d -type CNAME
$sip          = Resolve-DnsName sip.$d -Type CNAME
$SRV_fed      = Resolve-DnsName _sipfederationtls._tcp.$d -Type SRV
$SRV_sip      = Resolve-DnsName _sip._tls.$d -Type SRV
[System.Windows.Forms.MessageBox]::Show(($lyncdiscover,$sip,$SRV_fed,$SRV_sip  | fl | out-string),"Titel",0)   
Immer dran denken: Powershell ist objektorientiert und keine Batch wo alles nur aus Strings und Zahlen besteht!

Was du dir in diesem Zusammenhang auch mal ansehen kannst is
Out-Gridview face-wink.
# ....
$lyncdiscover,$sip,$SRV_fed,$SRV_sip | ogv

Grüße Uwe
Member: mcb1988
mcb1988 Mar 09, 2018 at 13:18:24 (UTC)
Goto Top
Hi Uwe,

Super hat funktioniert, vielen Dank für deinen Tipp face-smile
Damit komm ich erst einmal weiter


lg, Max