Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

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
GELÖST

Mit VBscript WMI-Daten in Excel schreiben

Frage Netzwerke Netzwerkmanagement

Mitglied: degNLB

degNLB (Level 1) - Jetzt verbinden

12.09.2012, aktualisiert 14:38 Uhr, 2980 Aufrufe, 2 Kommentare

Hallo,

ich habe für mein Netzwerk ein Script geschrieben, welches Momentan für einen Wunschrecher div. Daten aus der Registry ausliest über WMI und diese Daten erfolgreich in eine Textdatei schreibt.
Ich Prüfe erst, welche Windows-Version installiert ist und hole mir anschließend die Daten (da ich noch Neuling in Sachen VB-Script bin, bitte nicht wundern wegen der Übersichtlichkeit etc ;) )
Mein Problem welches ich momentan habe ist, dass ich die Daten gerne in eine Excel-Tabelle hätte, mich aber schwer tu, dieses zu realisieren.
Desweiteren wäre ein weiterer Schritt - zu dem ich hin will-, dass das Script meinen ganzen IP-Adressraum durchsucht, die vergebenen IP-Adressen + Rechnernamen heraussucht und diese dann mit den Registry-Daten hintereinander in die Excel-Tabelle schreibt (aber das ist erstmal nicht so wichtig, vielmehr würde ich gerne erstmal hinbekommen, dass ich die Daten in Excel ausgeben kann).
Hier der "txt-Datei"-Quellcode... mit meinen Excel-versuchen verschone ich euch lieber:



01.
option explicit 
02.
 
03.
Const HKEY_LOCAL_MACHINE = &H80000002 
04.
Dim WshShell 
05.
Dim wmi_object 	 
06.
Dim TxtDatei   	 
07.
Dim oTxt 		 
08.
Dim strValue 	 
09.
Dim ma_pkey, ma_w7ulti_path, ma_w7_vkey, win_version_path, win_version_key, win_sp_key, ma_path, xp_path, xp_key, xp_sp_path 
10.
Dim AbfragePc		'Welcher PC abgefragt wird 
11.
 
12.
ma_path			 = "SOFTWARE\McAfee\DesktopProtection"				 
13.
ma_pkey 		 = "Product" 
14.
ma_w7ulti_path 	 = "SOFTWARE\Wow6432Node\McAfee\DesktopProtection"  
15.
ma_w7_vkey   	 = "szProductVer" 
16.
win_version_path = "SOFTWARE\Microsoft\Windows NT\CurrentVersion"  
17.
win_version_key  = "ProductName" 
18.
win_sp_key		 = "CSDVersion" 
19.
xp_path			 = "SOFTWARE\Microsoft\Windows NT\CurrentVersion" 
20.
xp_key			 = "ProductName" 
21.
xp_sp_path		 = "SOFTWARE\Microsoft\Windows NT\CurrentVersion" 
22.
 
23.
AbfragePc = "." 
24.
 
25.
set TxtDatei = CreateObject ("Scripting.FileSystemObject") 
26.
set WshShell = CreateObject("WScript.Shell")  
27.
set oTxt = TxtDatei.OpenTextFile("C:\temp\" & AbfragePc & ".txt" , 8 , true) 
28.
 
29.
set wmi_object = GetObject("winmgmts:{impersonationLevel=impersonate}!\\" & _ 
30.
	AbfragePc & "\root\default:StdRegProv") 
31.
 
32.
 
33.
wmi_object.GetStringValue HKEY_LOCAL_MACHINE, win_version_path, win_version_key, strValue	 
34.
if strValue = "Windows 7 Ultimate" then 
35.
	wmi_object.GetStringValue HKEY_LOCAL_MACHINE, ma_w7ulti_path, ma_pkey, strValue 
36.
	oTxt.WriteLine "Programm:  " & strValue 
37.
	wmi_object.GetStringValue HKEY_LOCAL_MACHINE, ma_w7ulti_path, ma_w7_vkey, strValue 
38.
	oTxt.WriteLine "Produktversion:  " & strValue 
39.
	wmi_object.GetStringValue HKEY_LOCAL_MACHINE, win_version_path, win_version_key, strValue 
40.
	oTxt.WriteLine "Windowsversion -64Bit:  " & strValue 
41.
	wmi_object.GetStringValue HKEY_LOCAL_MACHINE, win_version_path, win_sp_key, strValue 
42.
	oTxt.WriteLine "ServicePack:   " & strValue 
43.
		else 
44.
			if strValue = "Microsoft Windows XP" then 
45.
				wmi_object.GetStringValue HKEY_LOCAL_MACHINE, ma_path, ma_pkey, strValue 
46.
				oTxt.WriteLine "Programm:  " & strValue 
47.
				wmi_object.GetStringValue HKEY_LOCAL_MACHINE, ma_path, ma_v_xp_key, strValue 
48.
				oTxt.WriteLine "Produktversion:  " & strValue 
49.
				wmi_object.GetStringValue HKEY_LOCAL_MACHINE, xp_path, xp_key, strValue 
50.
				oTxt.WriteLine "Windowsversion:  " & strValue 
51.
				wmi_object.GetStringValue HKEY_LOCAL_MACHINE, xp_sp_path, win_sp_key, strValue 
52.
				oTxt.WriteLine "ServicePack:  " & strValue 
53.
				else 
54.
					if	strValue = "Windows 7 Professional" then 
55.
						wmi_object.GetStringValue HKEY_LOCAL_MACHINE, ma_w7ulti_path, ma_pkey, strValue 
56.
						oTxt.WriteLine "Programm:  " & strValue 
57.
						wmi_object.GetStringValue HKEY_LOCAL_MACHINE, ma_w7ulti_path, ma_w7_vkey, strValue 
58.
						oTxt.WriteLine "Produktversion:  " & strValue 
59.
						wmi_object.GetStringValue HKEY_LOCAL_MACHINE, win_version_path, win_version_key, strValue 
60.
						oTxt.WriteLine "Windowsversion -64Bit:  " & strValue 
61.
						wmi_object.GetStringValue HKEY_LOCAL_MACHINE, win_version_path, win_sp_key, strValue 
62.
						oTxt.WriteLine "ServicePack:   " & strValue 
63.
					 
64.
						else 
65.
							if strValue = "Windows 7 Home Basic" then 
66.
								on error resume next 
67.
									wmi_object.GetStringValue HKEY_LOCAL_MACHINE, win_version_path, win_sp_key, strValue 
68.
							if err.Number = 0 then 
69.
								wmi_object.GetStringValue HKEY_LOCAL_MACHINE, ma_path, ma_pkey, strValue 
70.
								oTxt.WriteLine "Programm:  " & strValue 
71.
								wmi_object.GetStringValue HKEY_LOCAL_MACHINE, ma_path, ma_w7_vkey, strValue 
72.
								oTxt.WriteLine "Produktversion:  " & strValue 
73.
								wmi_object.GetStringValue HKEY_LOCAL_MACHINE, win_version_path, win_version_key, strValue 
74.
								oTxt.WriteLine "Windowsversion -32Bit:  " & strValue 
75.
								wmi_object.GetStringValue HKEY_LOCAL_MACHINE, win_version_path, win_sp_key, strValue 
76.
								oTxt.WriteLine "ServicePack:   " & strValue 
77.
								else 
78.
									wmi_object.GetStringValue HKEY_LOCAL_MACHINE, ma_path, ma_pkey, strValue 
79.
									oTxt.WriteLine "Programm:  " & strValue 
80.
									wmi_object.GetStringValue HKEY_LOCAL_MACHINE, ma_path, ma_w7_vkey, strValue 
81.
									oTxt.WriteLine "Produktversion:  " & strValue 
82.
									wmi_object.GetStringValue HKEY_LOCAL_MACHINE, win_version_path, win_version_key, strValue 
83.
									oTxt.WriteLine "Windowsversion -32Bit:  " & strValue 
84.
									wmi_object.GetStringValue HKEY_LOCAL_MACHINE, win_version_path, win_sp_key, strValue 
85.
									oTxt.WriteLine "Kein ServicePack vorhanden!" 
86.
									err.Clear 
87.
							end if 
88.
							else 
89.
								MsgBox "Error" 
90.
							end if 
91.
						end if 
92.
			end if	 
93.
end if
Mitglied: bastla
12.09.2012, aktualisiert um 17:58 Uhr
Hallo degNLB und willkommen im Forum!
Mein Problem welches ich momentan habe ist, dass ich die Daten gerne in eine Excel-Tabelle hätte
Ändere einfach die Zeile 27 auf
set oTxt = TxtDatei.OpenTextFile("C:\temp\" & AbfragePc & ".csv" , 8 , true)
und die Ausgabezeilen wie etwa Zeile 36 auf
oTxt.WriteLine "Programm:;" & strValue
Grüße
bastla
Bitte warten ..
Mitglied: degNLB
13.09.2012, aktualisiert um 07:26 Uhr
ok... dass die Lösung so einfach ist, ist ja fast peinlich nach 2 Tagen suche und probieren...

Vielen Dank bastla, Du hast mir sehr geholfen.!
Bitte warten ..
Neuester Wissensbeitrag
Ähnliche Inhalte
Batch & Shell
gelöst Loginzeiten aus dem Ereignisprotokoll in Excel schreiben (1)

Frage von l-Ne0n zum Thema Batch & Shell ...

Batch & Shell
gelöst VBscript - WMI - ServerAddress + ConnectionStatus (Windows 7) (10)

Frage von Highend01 zum Thema Batch & Shell ...

Microsoft Office
gelöst Daten (Tabelle) aus E-Mail nach Excel übertragen (6)

Frage von kaiuwe28 zum Thema Microsoft Office ...

VB for Applications
Excel VBA Sortierung von Daten (5)

Frage von easy4breezy zum Thema VB for Applications ...

Heiß diskutierte Inhalte
DSL, VDSL
gelöst DSL 200m verlängern (15)

Frage von Angela44 zum Thema DSL, VDSL ...

LAN, WAN, Wireless
Per Script auf UniFi-controller zugreifen und WPA2-Key ändern (11)

Frage von Winfried-HH zum Thema LAN, WAN, Wireless ...

Windows Server
SBS 2011 Standard virtualisieren (11)

Frage von HeinrichM zum Thema Windows Server ...

Exchange Server
gelöst DHCP Sever MS Server 2012 Problem (10)

Frage von Florian86 zum Thema Exchange Server ...