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

ServicePack über Kix auslesen und in Datei umleiten

Frage Entwicklung KiXtart

Mitglied: anding

anding (Level 2) - Jetzt verbinden

01.12.2006, aktualisiert 05.12.2006, 6008 Aufrufe, 9 Kommentare

Hallo!

Ich würde gern die PCs ausfindig machen, die noch kein SP2 installiert haben...
Am besten übers vorhandene Kix LogIn-Skript

Es soll, für den Fall dass nur das SP1 installiert ist, den Computernamen in eine (txt)Datei schreiben. Am besten immer nur in eine Datei (bei Batchdateien wars ja ">>", wie es bei Kix ist, ???)

Hat jemand eine Lösung?

Thx im voraus....
Mitglied: Karo
01.12.2006 um 14:00 Uhr
Moin,

Du musst dass mir READVALUE arbeiten und dann einfach eine IF Abfrage laufen lassen.
Der Key heisst
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\CSDVersion

$strTEMP = ReadValue ("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\", "CSDVersion")
If @16034 = 0
? "Servicepack: $strTEMP @WKSTA"
if not $strTEMP="Service Pack 2"
IF Open( 9 , "C:\TEMP\log.TXT" , 5 ) = 0
$x = WriteLine( 9 , "@WKSTA $strTEMP" + Chr(13) + Chr(10) )
endif
Close(9)
endif
endif

Zwei Probleme könntest Du bekommen, nämlich:
1) Wenn zwei Clients gleichzeitig auf das Logfile zugreifen
2) Ein Client mehrmals einloggt. Dann erscheit er doppelt im Log

Darum würde ich statt einem Log für jeden Client einzeln schreiben, also statt
"C:\TEMP\LOG.TXT"
"C:\TEMP\" + @WKSTA + ".TXT" nehmen
Zudem muss natürlich C:\TEMP auf ein Netzlaufwerk (UNC oder Fest) verweisen, auf das geschreiben werden darf


Karo
Bitte warten ..
Mitglied: anding
01.12.2006 um 15:19 Uhr
Erst mal: VIELEN DANK!!

Aber wenn jede Client sein eigenes Log schreibt, dann muss ich über 200 Files öffnen...
Muss das sowieso eine Woche oder so laufen lassen, damit ich auch alle erwische...

Entweder ich nehm die Redundanz in EINEM Logfile hin, oder ich schau mir alle an... Hhhhm...
Bitte warten ..
Mitglied: superboh
02.12.2006 um 11:36 Uhr
Hi,

bei mir wird im Loginscript jedesmal beim Anmelden pro Rechner ein Eintrag im Logfile erzeugt (Rechnername, Datum, RAM, CPU, OS, ServicePack, Festplattengrösse, davon frei, ...).
Damit ich dann nicht alle Logs einzeln durchsehen muss, habe ich mit ein Script geschrieben, das jeweils die letzte Zeile jedes Logfiles ausliet und in ein gemeinsames Logfile schreibt.
So habe ich stehts den Überblick über den aktuellen Stand der Rechner.

Gruß,
Thomas
Bitte warten ..
Mitglied: anding
04.12.2006 um 08:03 Uhr
...habe ich mit ein Script geschrieben...

Hast du das vielleicht noch...?! *räusper* *zwinker*
Bitte warten ..
Mitglied: Karo
04.12.2006 um 14:02 Uhr
ööööhm, Du hast geschrieben, dass Du die Clients erwischen willst, die KEIN SP2 haben. Mit diesem Script schreiben auch nur diejenigen ein Log, die das betrifft. Wozu dann also noch in das Logfile schauen?

Karo
Bitte warten ..
Mitglied: anding
04.12.2006 um 14:58 Uhr
öööhm, Du hast geschrieben, dass Du die Clients erwischen willst, die KEIN SP2 haben. Mit
diesem Script schreiben auch nur diejenigen ein Log, die das betrifft. Wozu dann also noch in
das Logfile schauen?

*hirnbatsch* Oh mann, ist ja eigentlich eh klar... Sorry, da hab ich wohl was verplant... *g*
Sorry, und vielen Dank für deine Hilfe, werd dass dann mal testen und kurze Resonanz geben, wenn gewünscht?!
Bitte warten ..
Mitglied: superboh
04.12.2006 um 19:36 Uhr
> ...habe ich mit ein Script
geschrieben...

Hast du das vielleicht noch...?!
*räusper* *zwinker*

Klar hab ich das noch

01.
;---------------------------------------- 
02.
$path="\\Server1\Logs$\Logon\" 
03.
$tz=";" 
04.
$tempfile="%temp%\logfiles.txt" 
05.
;---------------------------------------- 
06.
 
07.
$jahr=@year 
08.
If Len(@MONTHNO)=1 $monat="0"+@MONTHNO Else $monat=@MONTHNO EndIf 
09.
If Len(@MDAYNO)=1 $tag="0"+@MDAYNO Else $tag=@MDAYNO EndIf 
10.
 
11.
$pcfile=$path+"PCs_"+$jahr+$monat+$tag+".csv" 
12.
If Exist ($pcfile) Del ($pcfile) EndIf 
13.
 
14.
Shell "%COMSPEC% /c DIR "+$path+"PCs /b > "+$tempfile 
15.
 
16.
$handle1=FreeFileHandle() 
17.
$rc=Open($handle1,$pcfile,5) 
18.
$rc=WriteLine($handle1,"Rechner;User;Berechtigung;Datum;Uhrzeit;Prozessor;Taktfreq.;RAM;Betriebssystem;ServicePack;IP-Adresse;MAC-Adresse;Floppy aktiv;CDRom aktiv;Sitzungsart;HD-Größe;frei(MB);FileSystem;Auflösung"+@CRLF) 
19.
 
20.
$handle2=FreeFileHandle() 
21.
$rc=Open($handle2,$tempfile,2) 
22.
$zeile=ReadLine($handle2) 
23.
While @ERROR=0 
24.
  $handle3=FreeFileHandle() 
25.
  $rc=Open($handle3,$path+"PCs\"+$zeile,2) 
26.
  $line=ReadLine($handle3) 
27.
  While @ERROR=0 
28.
    $lastline=$line 
29.
    $line=ReadLine($handle3) 
30.
  Loop 
31.
   
32.
  $rc=WriteLine($handle1,SubStr ($zeile,1,Len($zeile)-4)+";"+$lastline+@CRLF) 
33.
  $rc=Close($handle3) 
34.
  $zeile=ReadLine($handle2) 
35.
Loop 
36.
$rc=Close($handle2) 
37.
$rc=Close($handle1) 
38.
Del ($tempfile)   
39.
 
40.
$rc=MessageBox("Habe Fertig!",@ScriptName,64) 
41.
Run("Explorer $path")
Gruß,
Thomas
Bitte warten ..
Mitglied: anding
05.12.2006 um 08:25 Uhr
@Karo

Eine Frage hab ich noch... Wie verhält sich das Skript bei TS-Clients? Bei denen läuft unser Login-Skript nach erfolgter Anmeldung am Terminalserver...
Die haben ja kein Windows XP sondern Praktisch Windows 2003 Server...
Wir für die auf eine Datei erzeugt? (ca. 70 Clients...)

Danke schon mal!
Bitte warten ..
Mitglied: Karo
05.12.2006 um 16:33 Uhr
Hi,

frag doch einfach nach dem momentanen Workstationnamen ab. Wenn der übereinstimmt, dann überspringe das erstellen des Logs damit der TS nicht berücksichtigt wird. Bedeutet:

Als allererste Zeile
If NOT @WKSTA="TSSERVERNAME"
dann das Script wie gehabt
If @16034 = 0
.....
.....
und zu guter letzt ein zusätzliches
endif
da ja eine neue Schleife gebaut wurde.

Karo

PS: Alle 70 würden in eine Datei schreiben und das wäre wieder das evtl. Prob mit gleichzeitigem Zugriff.
Bitte warten ..
Neuester Wissensbeitrag
Internet

Unbemerkt - Telekom Netzumschaltung! - BNG - Broadband Network Gateway

(3)

Erfahrungsbericht von ashnod zum Thema Internet ...

Ähnliche Inhalte
PHP
gelöst Externe XML-Datei in PHP auslesen (18)

Frage von Akrosh zum Thema PHP ...

Batch & Shell
gelöst PowerShell, Log Datei auslesen, bei Änderungen E-Mail senden (12)

Frage von swissbull zum Thema Batch & Shell ...

Installation
gelöst Mit Powershell in einer Datei eine Zeile auslesen (6)

Frage von Bommi1961 zum Thema Installation ...

Heiß diskutierte Inhalte
Switche und Hubs
Trunk für 2xCisco Switch. Wo liegt der Fehler? (17)

Frage von JayyyH zum Thema Switche und Hubs ...

Windows Server
Outlook Verbindungsversuch mit Exchange (15)

Frage von xbast1x zum Thema Windows Server ...

Microsoft Office
Keine Updates für Office 2016 (11)

Frage von Motte990 zum Thema Microsoft Office ...