| |
VB Skript (VBS)Alle MAC-Adressen mit VBScript in einer Liste anzeigen? | | | Autor: ananda | Datum: 18.03.10 09:32 |
| Hallo,
Ich möchte die MAC-Adressen per VBScript in einer Liste anzeigen lassen und per Knopfdruck in die Zwischenablage kopieren.
Mein Problem ist, dass Ich mit VBScript es nich schaffe eine Liste auszugeben.
Im folgenden Beispiel muss Ich immer erst mit OK bestätigen um das nächste Objekt anzeigen zu lassen. Ich möchte aber alle Objekte auf einmal sehen.
strComputer = "."
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\CIMV2")
Set colItems = objWMIService.ExecQuery( _
"SELECT * FROM Win32_NetworkAdapterConfiguration",,48)
For Each objItem In colItems
If NOT objItem.MACAddress = "" Then
Wscript.Echo "MACAddress: " & objItem.MACAddress
End If
Next p.s. Ich weiß, dass es mit cmd oder C# funktioniert, aber cmd ist für die meisten User schon zu kompliziert und c# erfordert immer das .NET Framework.
Vielleicht hat ja Jemand eine Idee wie Ich das Lösen könnte.
Gruss ananda | |
Re: Alle MAC-Adressen mit VBScript in einer Liste anzeigen? | | | Autor: ananda | Datum: 23.03.10 09:32 |
| Wenn Ich Response.write verwende erhalte Ich folgende Fehlermeldung:
Fehler: Objekt erforderlich: 'Response'
Code: 800A0A1A8
Quelle: Laufzeitfehler in Microsoft VBScript | |
Re: Alle MAC-Adressen mit VBScript in einer Liste anzeigen? | | | Autor: ananda | Datum: 30.03.10 11:31 |
| Mit cscript werden alle Werte in der Konsole angezeigt. Gibt es jetzt die Möglichkeit alle Werte in einem Windows-Fenster anzuzeigen? Wenn das nicht geht, kann Ich beim Ausführen der vbs-Datei automatisch cscript verwenden, ohne gleich den Interpreter im System umzustellen?
Das Script sieht folgendermaßen aus:
strComputer = "."
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\CIMV2")
Set colItems = objWMIService.ExecQuery( _
"SELECT * FROM Win32_NetworkAdapterConfiguration",,48)
For Each objItem in colItems
if NOT objItem.MACAddress = "" Then
Wscript.Echo "MACAddress: " & objItem.MACAddress
end if
Next | |
Re: Alle MAC-Adressen mit VBScript in einer Liste anzeigen? | | | Autor: mayho | Datum: 07.04.10 09:58 |
| Hi!
Also ein Möglichkeit die mir einfällt wäre folgende.
######CODE
Dim Ausgabe
strComputer = "."
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\CIMV2")
Set colItems = objWMIService.ExecQuery( _
"SELECT * FROM Win32_NetworkAdapterConfiguration",,48)
For Each objItem In colItems
If NOT objItem.MACAddress = "" Then
Ausgabe = "MACAddress: " & objItem.MACAddress & vbcrlf
End If
Next
msgbox Ausgabe
#####Code
Bei jedem Durchlauf der For Each- Schleife speicherst du eine Zeile und bewirkst einen Zeilenvorschub mit vbcrlf
in der Ausgabe sieht das dann schön formatiert aus
Wer sagt: "Alles ist m?glich!" ist entweder ein Genie oder dem Wahnsinn verfallen. Ich bin ein Genie! | |
Re: Alle MAC-Adressen mit VBScript in einer Liste anzeigen? | | | Autor: ananda | Datum: 07.04.10 10:36 |
| Hab es gerade unter Windows 7 getestet. Jetzt wird nur noch eine von sechs Mac-Adressen angezeigt. Nach Klick auf OK beendet sich das Script. | |
Re: Alle MAC-Adressen mit VBScript in einer Liste anzeigen? | | | Autor: mayho | Datum: 07.04.10 12:13 |
| Hi!
Bei mir lest das Scriopt alle Adapter aus.
Du hast nur den localen Adapter abgefragt. Willst du alle PC aus einer Range abfragen musst du das explizit angeben bei strComputer = "."
Bsp:
Dim Ausgabe
strComputer = ".|IP1|IP2|IP3" 'hier die IP der PC eintragen die du auslesen willst. der Punkt ist der locale PC
Computers = Split(strComputer, "|") 'Teilt strComputer in ein array auf
lencomputers = UBound(computers) 'liest die Menge des Array
x = 0
Do Until x >= lencomputers +1
Set objWMIService = GetObject("winmgmts:\\" & Computers(x) & "\root\CIMV2")
Set colItems = objWMIService.ExecQuery( _
"SELECT * FROM Win32_NetworkAdapterConfiguration",,48)
For Each objItem In colItems
If NOT objItem.MACAddress = "" Then
Ausgabe = Ausgabe & "MACAddress: " & objItem.MACAddress & vbcrlf
End If
Next
x = x + 1
Loop
msgbox Ausgabe
Der Rest ist eine formatierungssache
MAyho
Wer sagt: "Alles ist m?glich!" ist entweder ein Genie oder dem Wahnsinn verfallen. Ich bin ein Genie! | |
Re: Alle MAC-Adressen mit VBScript in einer Liste anzeigen? | | | Autor: ananda | Datum: 09.04.10 09:43 |
| Schon mal vielen Dank für deine Hilfe.
Ich möchte nur die MAC-Adressen vom lokalen PC auslesen. Der Code von deinem Beitrag zeigt mir aber nur eine Mac-Adresse an, obwol der lokale PC 5 Mac-Adressen hat. Unter XP mit zwei MAC-Adressen wird ebenfalls nur eine Adresse angezeigt.
Das Script soll alle MAC-Adressen vom PC gleichzeitig in einem Fenster anzeigen.
Hier noch mal der Code, der nur eine MAC vom lokalen PC anzeigt:
Dim Ausgabe
strComputer = "."
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\CIMV2")
Set colItems = objWMIService.ExecQuery( _
"SELECT * FROM Win32_NetworkAdapterConfiguration",,48)
For Each objItem In colItems
If NOT objItem.MACAddress = "" Then
Ausgabe = "MACAddress: " & objItem.MACAddress & vbcrlf
End If
Next
msgbox Ausgabe
Beitrag wurde zuletzt am 09.04.10 um 09:55:46 editiert. | |
Re: Alle MAC-Adressen mit VBScript in einer Liste anzeigen? | | | Autor: mayho | Datum: 09.04.10 12:49 |
| Hm. Interessant. Ich habs unter XP Pro uner W7 Ultimate versucht und da ließt er brach alle MACs aus. Eventuell sind die Adapter deaktiviert?
Wer sagt: "Alles ist m?glich!" ist entweder ein Genie oder dem Wahnsinn verfallen. Ich bin ein Genie! | |
Re: Alle MAC-Adressen mit VBScript in einer Liste anzeigen? | | | Autor: ananda | Datum: 13.04.10 14:17 |
| Nein, deaktiviert sind diese nicht.
Das folgende Script gibt die Adressen immer noch nacheinander aus, sprich an den Netzwerkadaptern kann es nicht liegen.
strComputer = "."
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\CIMV2")
Set colItems = objWMIService.ExecQuery( _
"SELECT * FROM Win32_NetworkAdapterConfiguration",,48)
For Each objItem in colItems
' 00:1F:D0:2E:AE:B6
' if objItem.MACAddress <> "" Then'
if NOT objItem.MACAddress = "" Then
Wscript.Echo "MACAddress: " & objItem.MACAddress
end if
Next | |
| Sie sind nicht angemeldet! Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.
Einloggen | Neu registrieren |
|
|
sevOutBar 4.0
Vertikale Menüleisten á la Outlook
Erstellen von Outlook ähnlichen Benutzer- interfaces - mit beliebig vielen Gruppen und Symboleinträgen. Moderner OfficeXP-Style mit Farbverläufen, Balloon-Tips, u.v.m. Weitere InfosTipp des Monats TOP Entwickler-Paket
TOP-Preis!!
Mit der Developer CD erhalten Sie insgesamt 24 Entwickler- komponenten und Windows-DLLs. Die Einzelkomponenten haben einen Gesamtwert von 1605.50 EUR...
Jetzt nur 599,00 EURWeitere Infos
|
|
|
Copyright ©2000-2024 vb@rchiv Dieter Otter Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.
Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel
|
|