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

Systeminfo per batch Datei auslesen

Frage Entwicklung Batch & Shell

Mitglied: LoRdNyCoN

LoRdNyCoN (Level 1) - Jetzt verbinden

22.08.2008, aktualisiert 19:57 Uhr, 9276 Aufrufe, 11 Kommentare

Hallo Forum,

ich habe vor mit einer Batch Datei die Systeminformationen auszulesen. Desweiteren möchte ich auch die installierten Service Packs und Updates auflisten.
Da ich aber bisher noch nie etwas mit batch gemacht habe, tu ich mich da jetzt etwas schwer dieses zu realisieren.

Ich wäre euch super Dankbar wenn mir das jemand kurz erklären könnte, bzw ein kleines Beispiel geben kann wie ich die Systeminformationen auslesen kann per batch.
Den rest werde ich dann schon selber zusammensuchen.

Also mit kleinem Code Beispiel.
Mitglied: Iwan
22.08.2008 um 13:29 Uhr
hallo,

ich würde dir eher zu VBS raten als zu einer Batch, denn das macht das ganze wesentlich einfacher
was genau willst du denn machen: nur lokal auslesen oder auch übers LAN oder wie stellst du dir das vor?

ich z.B. sammle die Dateien meiner Rechner im Netzwerk per Excel-Makro, mit Hilfe von VBS-Code
das wichtigstes lese ich gleich in Excel ein, der Rest wandert in eine TXT, die den Computernamen trägt
Bitte warten ..
Mitglied: LoRdNyCoN
22.08.2008 um 13:37 Uhr
Soll nur auf lokalen Rechner sein, um Fehlerquellen auszuschließen.

Bin da auch sehr offen , muß nicht unbedingt ne batch sein, dachte damit geht das am einfachsten.
Aber so kann man sich irren...

Ich habe zB folgende konstellation. Damit unser CMS Software richtig lüppt, benötigt es zB NetFramework 2x aufwärts.
Dazu wird ebenfalls bei XP min SP2 vorrausgesetzt, um die funktion zu gewähren. Ich wollte nun ein kleines script haben
womit ich diese begebenheiten prüfen kann, ohne mich großartig durch M$ zu wurschteln.

VBS habe ich allerdings noch nichts gemacht. Spreche zwar etwas C++ aber das ist auch nicht auf 1a level...
Bitte warten ..
Mitglied: Dani
22.08.2008 um 13:44 Uhr
Hi Lordnycon,
schau mal im Bereich "Anleitungen" nach. Dort sollte es eine Schritt-für-Schritt für bgInfo geben. Damit kannst du dein komplettes Netzwerk inventarisieren.


Gruss,
Dani
Bitte warten ..
Mitglied: LoRdNyCoN
22.08.2008 um 13:49 Uhr
Danke für den tipp, aber ich würde das gerne nur als txt speichern, da ich die rechner nicht am NW habe,
und es sich dabei um Embbeded XP handelt, ist auch kein Office vorhanden. Und jedesmal die Teile ins NW einbinden wäre zu aufwendig, da ich teilweise auch keinen Zugriff auf unseren Server habe, und auch nicht jedesmal zum Admin rennen möchte

Von daher wäre ne Batch bzw ne VBS Lösung besser geeignet.
Bitte warten ..
Mitglied: Iwan
22.08.2008 um 14:05 Uhr
und diese Überprüfung macht die Software nicht schon beim installieren?
klingt nach Frickelware für mich...

hier mal der VBS-Code für die Anzeige der Windows Version:
01.
arrComputers = Array("localhost") 
02.
For Each strComputer In arrComputers 
03.
   Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\CIMV2") 
04.
   Set colItems = objWMIService.ExecQuery("SELECT * FROM Win32_OperatingSystem", "WQL", wbemFlagReturnImmediately + wbemFlagForwardOnly) 
05.
   For Each objItem In colItems 
06.
      WScript.echo objItem.Caption & " " & objItem.CSDVersion 
07.
   Next 
08.
Next
Bitte warten ..
Mitglied: LoRdNyCoN
22.08.2008 um 14:22 Uhr
Wie frage ich jetzt noch die installierten updates ab, dann wäre das schwerste mal vom tisch, der rest ist kosmetik und den schaffe ich dann alleine
Bitte warten ..
Mitglied: Iwan
22.08.2008 um 15:04 Uhr
sorry, aber ich beantworte keine Fragen per PN, wenn es einen Forumseintrag dazu gibt!

für das .NET kannste ja vielleicht eine Abfrage machen, was im Ordner C:\WINDOWS\Microsoft.NET\Framework\ zu finden ist
bei mir existieren diverse Ordner, u.a. für das .Net 2.0 einer namens v2.0.50727
Bitte warten ..
Mitglied: LoRdNyCoN
22.08.2008 um 15:44 Uhr
Ja werde ich mal testen, wenn ich meine XP Probs gelöst bekomme.

Habe jetzt das Script auf nen Testrechner geschoben, und siehe da, es geht wie erwrtet nicht.
Sagt immer Datei hat keine endung, wird aber als vbs gekennzeichnet von Windows.

Schon dubios das ganze. Kann das sein, das ein Embbeded XP kein vbs versteht? Kann ich mir zwar nicht vorstellen,
aber scheint so zu sein...

Wenn das ganze so schon nicht geht, werde ich mir wohl etwas anderes ausdenken müßen, um diese
Parameter abzufragen.. Dann werde ich wohl doch ein kleines C++ proggie schreiben müßen.....

Trotzdem an dieser Stelle ein "Dankeschön" an dich Iwan... Hat mir sehr geholfen...
Bitte warten ..
Mitglied: Iwan
22.08.2008 um 15:57 Uhr
vielleicht hat das XPE kein WSH? kA...
Bitte warten ..
Mitglied: LoRdNyCoN
22.08.2008 um 15:59 Uhr
Doch hat es drauf, das ist ja das verwunderliche...

So nun noch 1. sache,

Class Class1
Public mos As Management.ManagementObjectSearcher

Shared Sub Main()
Dim mos As Management.ManagementObjectSearcher
Dim moc As Management.ManagementObjectCollection
Dim mo As Management.ManagementObject
Dim pd As Management.PropertyData
Console.WriteLine("Weiter mit ENTER!")
Console.ReadLine()
Console.WriteLine( _
"Die Eigenschaften aller Laufwerke auslesen:")
mos = New Management.ManagementObjectSearcher( _
"select * from win32_logicaldisk")
moc = mos.Get()
For Each mo In moc
Console.WriteLine("------------")
For Each pd In mo.Properties
Try
Console.WriteLine(pd.Name + " = " + pd.Value.ToString)
Catch
End Try
Next
Console.ReadLine()
Next
moc.Dispose()
mos.Dispose()

Class1.computer()
Console.ReadLine()
Class1.domain()
Console.ReadLine()
Class1.os()
Console.ReadLine()
Class1.shutdown()
Console.ReadLine()
Class1.systemdir()
Console.ReadLine()
Class1.user1()
Console.ReadLine()
Console.WriteLine(user)
Console.ReadLine()
Console.WriteLine(Environment.CommandLine)
Console.ReadLine()
Console.WriteLine("Ende.")
Console.ReadLine()
Class1.enter()
Console.ReadLine()
End Sub

Shared Sub enter()
Console.WriteLine("Beenden mit ENTER.")
End Sub

Shared Sub computer()
Console.WriteLine("Computername: " & Environment.MachineName)
End Sub

Shared Sub shutdown()
Console.WriteLine("Shutdown: " &
Environment.HasShutdownStarted)
End Sub

Shared Sub systemdir()
Console.WriteLine("System-Ordner: " & _
Environment.SystemDirectory)
End Sub

Shared Sub domain()
Console.WriteLine("Aktive Domain: " & _
Environment.UserDomainName)
End Sub

Shared Sub os()
Console.WriteLine(Environment.OSVersion)
End Sub

Shared Sub user1()
Console.WriteLine("Aktiver User: " & Environment.UserName)
End Sub

Private _lastacces As Date
Private _lastwrite As Date

Public Sub New(ByVal s As String)
MyBase.new()
_lastwrite = Now
End Sub

Public Function getlastacces() As Date
Return _lastacces
End Function

Public Function getlastwrite() As Date
Return _lastacces
End Function

Public Shared Property user()
Get
Return user
End Get
Set(ByVal s)
user = s
End Set
End Property
End Class

Wo soll da der fehler sein?
Bitte warten ..
Mitglied: miniversum
22.08.2008 um 19:57 Uhr
Also wenns Batch sein soll hast du folgende Möglichkeiten.
Entweder du gehst über den WMIC Befehl.
Da kannst du an einige Infos zu System rausholen.

Die andere Möglichkeit wäre in der Registry die entsprechenden Einträge rauszuexportieren. In diesem Bereich der Seite gibts auch einen Beitrag indem das für die installierte Software gemacht wird.
Bitte warten ..
Neuester Wissensbeitrag
Ähnliche Inhalte
Batch & Shell
gelöst BATCH ini Datei Datei auslesen (2)

Frage von Juergen42 zum Thema Batch & Shell ...

VB for Applications
gelöst Bestimmte Spalten aus CSV-Datei auslesen (VBS) (9)

Frage von Gurkenhobel zum Thema VB for Applications ...

Heiß diskutierte Inhalte
Windows Userverwaltung
Ausgeschiedene Mitarbeiter im Unternehmen - was tun mit den AD Konten? (29)

Frage von patz223 zum Thema Windows Userverwaltung ...

LAN, WAN, Wireless
FritzBox, zwei Server, verschiedene Netze (21)

Frage von DavidGl zum Thema LAN, WAN, Wireless ...

Viren und Trojaner
Aufgepasst: Neue Ransomware Goldeneye verbreitet sich rasant (20)

Link von Penny.Cilin zum Thema Viren und Trojaner ...

Windows Netzwerk
Windows 10 RDP geht nicht (18)

Frage von Fiasko zum Thema Windows Netzwerk ...