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, 8160 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
Ausbildung

Linux-Ausstieg in Niedersachsen - Windows statt Bugfix

Information von StefanKittel vor 43 MinutenAusbildung

Sind ja nur Steuergelder

Microsoft

Neuigkeiten zu Server und Office 365 was läuft mit was und was nicht

Tipp von AlFalcone vor 1 TagMicrosoft4 Kommentare

Da diese Infos scheinbar unerwünscht sind, habe ich diese wider gelöscht.

Speicherkarten

Neuer Speicherkartentyp - zunächst nur für Huawei-Smartphones (künftig auch für Notebooks u. Tablets?)

Tipp von VGem-e vor 1 TagSpeicherkarten1 Kommentar

Servus, als ob das "Chaos" i.S. Speicherkarten noch nicht groß genug wäre?! Evtl. kommt dieser neue Kartentyp bald auch ...

Sicherheit

Diverse D-Link-Router durch drei Schwachstellen kompromittierbar

Information von kgborn vor 2 TagenSicherheit

Hat jemand D-Link-Router in Verwendung? Einige Modelle sind sicherheitstechnisch offen wie ein Scheunentor. Äußerst unschöne Sache, aber nichts neues ...

Heiß diskutierte Inhalte
Off Topic
SysAdmin im öffentlichen Dienst - jemand Erfahrungen?
Frage von JohnDorianOff Topic21 Kommentare

Hallo zusammen, hat jemand Erfahrung wie es so ist als SysAdmin im öffentlichen Dienst (Landkreis) im Südwesten der Republik ...

TK-Netze & Geräte
Low budget TK-Anlage für KMU
Frage von HeinklugTK-Netze & Geräte16 Kommentare

Hallo Admins, ich bin auf der Suche nach eine kostengünstigen Telefonanlage für mein kleines Büro mit 4-5 Mitarbeitern. Dabei ...

SAN, NAS, DAS
Nas mit USB und LAN gleichzeitig zugreifen
gelöst Frage von MarkBeakerSAN, NAS, DAS16 Kommentare

Hallo zusammen, ich suche eine Art NAS, womit ich via LAN und USB zugreifen kann. Folgender Aufbau ist gedacht: ...

DSL, VDSL
PPPOE Einwahl über Sophos UTM und FritzBox per PPPOE Passthrough
gelöst Frage von Leo-leDSL, VDSL16 Kommentare

Hallo zusammen, vielleicht habt Ihr noch eine Idee?? Ich besitze einen 1u1 Anschluss und möchte meine UTM ASG 110 ...