Top-Themen

Aktuelle Themen (A bis Z)

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 Kix - Finde Fehler nicht

Mitglied: Dani

Dani (Level 5) - Jetzt verbinden

26.03.2006, aktualisiert 11.07.2006, 8145 Aufrufe, 4 Kommentare

Hallo,

ich habe hier ein kl. Script geschrieben:

01.
;Automatischer Zeilenumbruch 
02.
Break On; 
03.
 
04.
;Tab und Absätze definieren 
05.
$crlf=chr(13)+chr(10); 
06.
$tab=chr(9); 
07.
 
08.
;Liest die Zeilen aus C:\outlook.log 
09.
$pfad = Open (3,"C:\outlook.log"); 
10.
$pfadpo = ReadLine(3); 
11.
$pfadar = ReadLine(3); 
12.
 
13.
;Gibt die Userinfo's aus 
14.
$x = $x+ "Allg. Info's:" +$crlf; 
15.
$x = $x+ "  Netzwerk Username:" +$tab       +@USERID 		 		   +$crlf; 
16.
$x = $x+ "  User-Privillegien:" +$tab +$tab +@PRIV   		 		   +$crlf; 
17.
$x = $x+ "  Primäre Guppe:"     +$tab +$tab +@PRIMARYGROUP 		       +$crlf; 
18.
$x = $x+ "  Anmelde-Domaene:"   +$tab       +@LDOMAIN		 		   +$crlf; 
19.
$x = $x+ "  Login-SERVER:"	    +$tab +$tab +@LSERVER 	   + ".WYDLER" +$crlf;   
20.
$x = $x+ "  Workstation:"	 	+$tab +$tab +@WKSTA  		 		   +$crlf +$crlf; 
21.
 
22.
 
23.
;Liest die pst File aus 
24.
$x = $x+ "Outlook:" +$crlf; 
25.
$pstLocation = $pfadpo ; 
26.
$pstFileSize = getFileSize($pstLocation); 
27.
$pstSize 	 = $pstFileSize / (1024); 
28.
 
29.
 
30.
;Gibt eine Meldung aus, wenn Datei zu gross ist! 
31.
$x = $x + "   Persönlicher Ordner:" +$tab +$pstSize + " KB" +$crlf; 
32.
if $pstSize > 50000  
33.
 $error = $crlf +"  Ihr aktuelles Profil ist zu gross!!" +$crlf; 
34.
 $icon  = "48"; 
35.
else 
36.
 $icon = "64";  
37.
endif 
38.
 
39.
 
40.
$pstLocation = $pfadar; 
41.
$pstFileSize = getFileSize($pstLocation); 
42.
$pstSize 	 = $pstFileSize / (1024); 
43.
$x = $x + "   Archiv Ordner:" +$tab +$tab +$pstSize + " KB" +$crlf; 
44.
 
45.
$x = $x + $error; 
46.
$ok=messagebox($x,"Outlook - Information",$icon,0);
So sieht das Ergebnis aus:
e40cb3440542ae90e13ac8f4d07ae9d1-snap1 - Klicke auf das Bild, um es zu vergrößern

Da müssen eigentlich keine Nullen stehen!


So mit diesem Batch les ich den Speicherordner von der PST File aus:
01.
del "C:\outlook.log" 
02.
For /F "delims=" %%i in ('dir /s /b U:\Outlook.pst U:\archive.pst') do echo %%i >>C:\outlook.log 
In C:\outlook.log steht auch alles korrekt drinne. Habe mein Kixscript schon x mal durchgelesen. Find aber keinen Fehler! Vielleicht findet ihn von euch einer!


Gruß
Dani
Mitglied: gogoflash
28.03.2006 um 17:26 Uhr
Hi,

a)
erstmal würde ich die Semikolons aus dem Skript entfernen, diese sind zum Kommentieren da. Ändert an der Funktion des Skriptes nichts.
b)
Zum zweiten ist die Open Anweisung nicht richtig. $pfad = open geht nicht. Nur open Anweisung nutzen.
Statt $pfad= open(3,...) nur open(3,.....) ins Skript eingeben.
Dann geht es auch wieder .....

Mit $pfad=open(3,...) gibt dir Kix den Errorcode vom Open Kommando aus. Hier wäre er bei Existenz der Datei Null. Du willst aber keinen Errorcode sondern die Datei öffnen.

Ich würde eher über eine direkte Übergabe der Parameter ans KIX Skript gehen (ohne log Datei). Wie folgt:

c) Starten von KIX.
Mein Vorschlag wäre ohne Logdatei.
01.
FOR /F %%a in ('dir c:\archiv.pst /s /b') do (For /F %%i in ('dir c:\outlook.pst /s /b') do (kix32 test.kix $pfad=%%i $pfadar=%%a))
Damit übergeben wir direkt an das KIX-Skript die Pfade.

d) Das neue Skript sieht dann so aus :

Eigentlich wurden nur die Readline und Open Anweisungen gekillt, sonst keine wesentlichen Änderungen.

01.
;Automatischer Zeilenumbruch 
02.
Break On 
03.
 
04.
;Tab und Absätze definieren 
05.
$crlf=chr(13)+chr(10) 
06.
$tab=chr(9) 
07.
 
08.
;Gibt die Userinfo's aus 
09.
$x = $x+ "Allg. Info's:" +$crlf 
10.
$x = $x+ "  Netzwerk Username:" +$tab       +@USERID                     +$crlf 
11.
$x = $x+ "  User-Privillegien:" +$tab +$tab +@PRIV                       +$crlf 
12.
$x = $x+ "  Primäre Guppe:"     +$tab +$tab +@PRIMARYGROUP                +$crlf 
13.
$x = $x+ "  Anmelde-Domaene:"   +$tab       +@LDOMAIN                    +$crlf 
14.
$x = $x+ "  Login-SERVER:"        +$tab +$tab +@LSERVER        + ".WYDLER" +$crlf   
15.
$x = $x+ "  Workstation:"         +$tab +$tab +@WKSTA                      +$crlf +$crlf 
16.
 
17.
;Liest die pst File aus 
18.
$x = $x+ "Outlook:" +$crlf 
19.
$pstLocation = $pfadpo  
20.
$pstFileSize = getFileSize($pstLocation) 
21.
$pstSize      = $pstFileSize / (1024) 
22.
 
23.
;Gibt eine Meldung aus, wenn Datei zu gross ist! 
24.
$x = $x + "   Persönlicher Ordner:" +$tab +$pstSize + " KB" +$crlf 
25.
if $pstSize > 50000  
26.
 $error = $crlf +"  Ihr aktuelles Profil ist zu gross!!" +$crlf 
27.
 $icon  = "48" 
28.
else 
29.
 $icon = "64"  
30.
endif 
31.
 
32.
$pstLocation = $pfadar 
33.
$pstFileSize = getFileSize($pstLocation) 
34.
$pstSize      = $pstFileSize / (1024) 
35.
$x = $x + "   Archiv Ordner:" +$tab +$tab +$pstSize + " KB" +$crlf 
36.
 
37.
$x = $x + $error 
38.
$ok=messagebox($x,"Outlook - Information",$icon,0)
e) Nach Eindampfen einiger Variablen, entsteht eine leicht Verbesserte Fassung::

01.
;Automatischer Zeilenumbruch 
02.
Break On 
03.
 
04.
;Tab und Absätze definieren 
05.
$crlf=chr(13)+chr(10) 
06.
$tab=chr(9) 
07.
 
08.
;Gibt die Userinfo's aus 
09.
$x = $x+ "Allg. Info's:" +$crlf 
10.
$x = $x+ "  Netzwerk Username:" +$tab       +@USERID                     +$crlf 
11.
$x = $x+ "  User-Privillegien:" +$tab +$tab +@PRIV                       +$crlf 
12.
$x = $x+ "  Primäre Guppe:"     +$tab +$tab +@PRIMARYGROUP                +$crlf 
13.
$x = $x+ "  Anmelde-Domaene:"   +$tab       +@LDOMAIN                    +$crlf 
14.
$x = $x+ "  Login-SERVER:"        +$tab +$tab +@LSERVER        + ".WYDLER" +$crlf   
15.
$x = $x+ "  Workstation:"         +$tab +$tab +@WKSTA                      +$crlf +$crlf 
16.
$x = $x+ "  Pfad-Outlook.pst:"         +$tab +$tab +     $pfad                      +$crlf +$crlf 
17.
$x = $x+ "  Pfad-Archiv.pst:"         +$tab +$tab +     $pfadar                      +$crlf +$crlf 
18.
 
19.
;Liest die pst File aus 
20.
$x = $x+ "Outlook:" +$crlf 
21.
$pstSize  = getFileSize($pfad) / 1024 
22.
 
23.
;Gibt eine Meldung aus, wenn Datei zu gross ist! 
24.
$x = $x + "   Persönlicher Ordner:" +$tab +$pstSize + " KB" +$crlf 
25.
if $pstSize > 50000  
26.
 $error = $crlf +"  Ihr aktuelles Profil ist zu gross!!" +$crlf 
27.
 $icon  = "48" 
28.
else 
29.
 $icon = "64"  
30.
endif 
31.
 
32.
$pstSize = getFileSize($pfadar) / (1024) 
33.
$x = $x + "   Archiv Ordner:" +$tab +$tab +$pstSize + " KB" +$crlf 
34.
 
35.
$x = $x + $error 
36.
$ok=messagebox($x,"Outlook - Information",$icon,0) 
37.
 





Gruß Miguel



Do be continued......
Bitte warten ..
Mitglied: Dani
28.03.2006 um 21:38 Uhr
Hi,
Vielen Dank für deine Mühe. Jetzt gehts, aber frag mich nicht warum!
Wünsch dir noch was...


Gruß
Dani
Bitte warten ..
Mitglied: Biber
28.03.2006 um 22:18 Uhr
Moin Dani und gogoflash,

wenn es jetzt -ohne den Zwischenschritt des Schreibens in und Lesens aus einer Datei- klappt, dann kann es eigentlich nur daran gelegen haben, dass Pfadangaben mit Umlauten ("..\Persönlicher Ordner\..") bei den *.pst-Dateiei dabei waren UND und CMD.exe und diie Kix32.exe unterschiedliche Codepages benutzen.

Das obige Skriptchen läuft auch mit "..Persönlichen Ordnern\" etc, wenn vor dem FOR-Befehl des CMD-Interpreters ein "CHCP 1252" abgesetzt wird.

Aber das überarbeitete Skript sieht schon deutlich übersichtlicher aus.

Ändern würde ich aber die ersten beiden Zeilen:

;Automatischer Zeilenumbruch
Break On

...... denn die haben nichts miteinander zu tun...das ist verwirrend.

Und am Ende wird auf jeden Fall die Variable $error verarbeitet, obwohl die nur im Fehlerfall initialisiert ist ($x = $x + $error).

Das ist höchst gefährlich in ziemlich allen (auch Skript-) Sprachen - würde ich mir frühzeitig abgewöhnen. Ebenso die überflüssige Variable "$ok" unten. Wenn die letzte Messagebox keinen Rückgabewert verarbeitet, dann reicht doch ein einfaches "Messagebox( bla)" statt "$ok= Messagebox( bla)"

To be cont'd...

Gruß
Biber
Bitte warten ..
Mitglied: superboh
11.07.2006 um 02:49 Uhr
Kleiner Tip noch:

$crlf=chr(13)+chr(10)

Dafür kannst Du auch das Makro @CRLF verwenden.

Gruß,
Thomas
Bitte warten ..
Ähnliche Inhalte
LAN, WAN, Wireless
Fehler im Netzwerk finden
Frage von jujeizeLAN, WAN, Wireless4 Kommentare

Hi Admin-Community, mal angenommen ihr hättet merkwürdige Aussetzer in einem ganz kleinen Netzwerk, wie würdet ihr an die Sache ...

Mac OS X
OSX 10.10 Fehler Finder 36
Frage von demetzMac OS X2 Kommentare

Hallo zusammen, habt Ihr diesen Fehler schon mal gehabt: Clients (OSX 10.10) mit Dateizugriff auf OSX 10.10 Server. Fehlermeldung ...

LAN, WAN, Wireless

Wie Fehler in Verkabelung (LSA2-Verteiler) finden?

gelöst Frage von bytecounterLAN, WAN, Wireless10 Kommentare

Hallo zusammen, ich habe mal wieder die EDV bei einem Unternehmen übernommen und habe gleich ein nettes Problem. Laut ...

Batch & Shell

Fehler in Batch - Das System kann den Pfad nicht finden

gelöst Frage von dan0neBatch & Shell3 Kommentare

Moin, kann mir mal bitte jemand erklären wieso das geht: Set desk="%userprofile%\Desktop" del /s /q /f "%desk%\C73 - Service ...

Neue Wissensbeiträge
Humor (lol)
Meine Variante der DSGVO
Tipp von Henere vor 12 StundenHumor (lol)1 Kommentar

Datenschutzerklärung Jede gute Website braucht eine Datenschutzerklärung? Ok, dann machen Sie sich auf etwas gefasst. Präambel Artikel 12 der ...

Administrator.de Feedback

Entwicklertagebuch: Datenschutzerklärung nach DS-GVO

Information von admtech vor 19 StundenAdministrator.de Feedback

Hallo Administrator User, Wir respektieren eure Privatsphäre und möchten euch daher auf die Möglichkeiten für den Umgang mit euren ...

Voice over IP

Rufnummernblock aufbrechen nun möglich bei DTAG

Tipp von Datenreise vor 22 StundenVoice over IP

Bei der Telekom ist es seit einigen Tagen laut Aussage der Geschäftskunden-Hotline möglich, eine Rufnummernübernahme auch dann durchzuführen, wenn ...

Netzwerke
Riesiges Botnetz in Deutschland
Tipp von FFSephiroth vor 1 TagNetzwerke1 Kommentar

Überprüft mal eure Router und NAS

Heiß diskutierte Inhalte
HTML
Link nicht vollständig
Frage von jensgebkenHTML33 Kommentare

Hallo Gemeinschaft, ich erstelle mit Word einen Serienbrief, den ich per Mail versende. Nun mein Problem der Wordserienbrief holt ...

Voice over IP
VOIP: Lösungen für Notruf?
Frage von MimemmmVoice over IP26 Kommentare

Hey Welche Möglichkeiten hat man eigentlich noch bei VOIP um zuverlässige Notrufe zu ermöglichen? Ein aufgeladenes Handy habe ist ...

Server-Hardware
ILO4 auf HP DL20 Gen9 deaktivieren
Frage von it-fraggleServer-Hardware16 Kommentare

Hallo, es ist zum verrückt werden. Auf dem Server lässt sich iLO nicht abschalten. Das Problem hatte ich schon ...

Windows Server
Fragwürdige GPO Fehler im Syslog
gelöst Frage von Ex0r2k16Windows Server13 Kommentare

Hallo! Ich kriege bei manchen (oder sogar allen? -prüfe noch) Clients folgenden Fehler bei mehreren GPOs (aber nicht bei ...