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

Systeminfo (CMD) in VBScript ausführen -.-

Frage Entwicklung VB for Applications

Mitglied: gonlife

gonlife (Level 1) - Jetzt verbinden

19.11.2007, aktualisiert 20.11.2007, 9797 Aufrufe, 4 Kommentare

Hallo liebe (hoff ich doch) Leute

Ich habe ein Problem, aber zuerst einmal, was ich machen will:

Ich weiss leider nicht, was für Rechner meine Benutzer haben, bzw. Wieviel Memory Sie haben, CPU, Betriebssystem (W2k oder XP), Was für Office sie draufhaben etc. Alles das liefert mir Systeminfo.

Nun, um meine lieben Benutzer nicht stören zu müssen (was vermutlich schneller ginge), und mit einem USB Stick herumrennen zu müssen, damit ich bei jeden Benutzer lokal "Systeminfo /S localhost /U Computername/Administator /P einschönespw /FO List > USBSTiCK/folder/%computername%" schreiben muss, wollte ich ein VBScript schreiben.

Teil eins des Scriptes:

Ich habe beim Active Directory alle Computer exportiert (textfile), dieses Textfile danach in Excel Importiert, das sieht in etwa so aus :>
+--+--------------------+-------------------+
| |A |B | C...
+-------------------------+-------------------+
| 1|Laptop1 |Computer |
+---+--------------------+-------------------+
| 2|Desktop1 |Computer |
+---+--------------------+-------------------+
| ...

Ich lese diese Datei relativ einfach aus

01.
Dim arrComputer(255) 
02.
 
03.
Set objExcel = CreateObject("Excel.Application") 
04.
objExcel.Visible = false 
05.
objExcel.Workbooks.Open ("F:\sysnfo\Computername.xls") 
06.
objExcel.Sheets("Computer").Select 
07.
Zeile = 1 
08.
Spalte = 1 
09.
arrayplatz = 0 
10.
 
11.
 
12.
 
13.
Do While ComputerName <> "" 
14.
  ComputerName = objExcel.Cells(Spalte, Zeile).Value 
15.
  arrComputer(arrayplatz) = ComputerName 
16.
  arrayplatz = arrayplatz + 1 
17.
  zeile = zeile + 1 
18.
Loop 
19.
arrayplatz = 0
So, nun hätten wir unser Array gefüllt mit den Computernamen (atm 0-30)

Nun will ich von jedem Rechner ein Systeminfo haben, dazu muss ich wissen ob der Rechner am Netz ist;

01.
For each Computer in arrComputer 
02.
 
03.
  Set objShell = CreateObject("WScript.Shell") 
04.
  Set objExec = objShell.Exec("ping -n 1 -w 1000 " & strTarget) 
05.
   
06.
  Zeile = Arrayplatz + 1 'ist ja 0 am anfang 
07.
   
08.
  strPingResults = LCase(objExec.StdOut.ReadAll) 
09.
 
10.
[/code] 
11.
 
12.
Bis hierher funktionierts. Ich komm auch nur hier rein, wenn ich den Rechner erreicht habe. 
13.
 
14.
[code] 
15.
  If InStr(strPingResults, "reply from") Then 
16.
   objExcel.Cells(Zeile, 3).Value = "Replyed" 
17.
'####################### 
18.
'### Nun der Teil der nicht geht!!1# 
19.
'####################### 
20.
'####################### 
21.
'### Die Rechte stimmen####### 
22.
 
23.
Set objShell1 = CreateObject("WScript.Shell") 
24.
Set objExec1 = objShell.Exec("systeminfo /s " & Computer & " /U Domain\Administrator /P Passwort /FO LIST > F:\Systeminfo\" & Computer & ".txt")  
25.
  Else 
26.
   objExcel.Cells(Zeile, 3).Value = "No respond" 
27.
  End if 
28.
 
29.
Next
Also, es geht hier wirklich um den Systeminfo teil, der andere teil wurde nun von mir hier nur sinngemäss und in etwa geschrieben, er ist getestet und funktioniert. Nur das mit dem Systeminfo funktioniert nicht (keine Fehler, er machts einfach nicht).


Grüsse

Gonlife
Mitglied: bastla
19.11.2007 um 18:12 Uhr
Hallo gonlife und willkommen im Forum!

Wie sieht's mit
01.
Set objExec1 = objShell.Exec("cmd /c systeminfo /s " & Computer & " /U Domain\Administrator /P Passwort /FO LIST > F:\Systeminfo\" & Computer & ".txt")
aus (wobei mir allerdings ein
01.
WshShell.Run "cmd /c systeminfo /s " & Computer & " /U Domain\Administrator /P Passwort /FO LIST > F:\Systeminfo\" & Computer & ".txt", 0
besser gefiele ...)?

Grüße
bastla
Bitte warten ..
Mitglied: gonlife
20.11.2007 um 10:29 Uhr
Danke für deine schnelle Hilfestellung und für die herzliche Begrüssung. Hat soweit geklappt, was nicht heisst das es funktioniert :D Ich muss in den Computern in den richtlinien beibringen, dass sie noch den RPC Dienst gestartet haben.

"ERROR: The RPC server is unavailable" grml. man sieht, das viele Leute an diesem Netzwerk gebastelt haben (kein corperate "design")

Aber was anderes:

Ich habe eine Host datei, die ich gerne ändern möchte; es geht dafür um die Verbindung mit Lotus Notes; zum einen in der Domäne, zum anderen via UMTS durch einen SSH Tunnel.

Nun, in der Domäne heisst die Datei:

01.
#comment comment comment 
02.
#comment comment comment 
03.
127.0.0.1            localhost 
04.
192.168.0.1        lotus1 
05.
192.168.0.2        lotus2
mein Batchfile müsste danach nur die das Batchfile (mit Administratorrechten!!!) ändern in

01.
#comment comment comment 
02.
#comment comment comment 
03.
127.0.0.1            localhost 
04.
127.0.0.1        lotus1 
05.
192.168.0.2        lotus2
D.h. ich müsste es auslesen, welcher Eintrag drin ist, und es dementsprechend Switchen :>, immer und immer wieder in etwa:

01.
if zeilesowieso = "127.0.0.1" then 
02.
   write zeilesowieso "192.168.0.1 
03.
else 
04.
if zeilesowieso = "192.168.0.1" then 
05.
   write zeilesowieso "127.0.0.1" 
06.
else 
07.
   write zeilesowieso "192.168.0.1" 
08.
end if 
09.
end if
So mal so von der Struktur her gesehen :>

Grüsse

Gonlife
Bitte warten ..
Mitglied: bastla
20.11.2007 um 10:41 Uhr
Hallo gonlife!

Aber was anderes:
... würde besser in einen anderen Thread passen.

Grüße
bastla
Bitte warten ..
Mitglied: Biber
20.11.2007 um 10:55 Uhr
@bastla, @gonlife

... würde besser in einen anderen Thread passen.

Jepp. Unterstütze ich. Auch dadurch, dass ich diesen Thread jetzt schliesse.

Grüße
Biber
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Mit ISO Datei CMD Befehle ausführen (15)

Frage von Alexsus zum Thema Batch & Shell ...

Batch & Shell
Iso einlegen und cmd ausführen (4)

Frage von Morslupatus zum Thema Batch & Shell ...

Batch & Shell
gelöst Powershell-Script als Admin über CMD ausführen (2)

Frage von Tobiased zum Thema Batch & Shell ...

Neue Wissensbeiträge
Windows Server

Verschieben von Servergespeicherten Profilen an einen anderen Speicherort

Erfahrungsbericht von Enriqe zum Thema Windows Server ...

Windows 10

Plattformdienst für unbekannte Geräte (7023)

Tipp von KMUlife zum Thema Windows 10 ...

Administrator.de Feedback

Umgangsformen auf der Seite

(16)

Information von Frank zum Thema Administrator.de Feedback ...

Heiß diskutierte Inhalte
Windows Server
Windows Server Komplettspiegelung (17)

Frage von pdiddo zum Thema Windows Server ...

Batch & Shell
gelöst Dir tc Befehl unter Windows 10 macht Probleme (14)

Frage von sugram zum Thema Batch & Shell ...

Windows 10
IP sperren? (12)

Frage von knowon zum Thema Windows 10 ...