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, 8188 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
Backup
Find-Befehl - Es hakt gerade
Frage von it-fraggleBackup1 Kommentar

Vielleicht sollte ich endlich schlafen gehen, aber DAS muss ich noch zuende machen. Wo ist der Fehler? In /media/backups/ ...

Debian

Find: sys kernel debug Permission denied

Frage von vikozoDebian

guten Tag ich habe unter Proxmox ein LXC Container erstellt Linux prox1 4.4.15-1-pve (gcc version 4.9.2 (Debian 4.9.2-10) wenn ...

Batch & Shell

Nonsense Error - find ihn nicht. (Batch)

gelöst Frage von clragonBatch & Shell7 Kommentare

Hey Leute! Ich bin's wieder. Heute habe ich ein besonders unnötiges Problem,. Aus irgendeinem Grund hat dieses Script einen ...

KiXtart

KIX - Löschen von Dateien bei Anmeldung

gelöst Frage von PhilzipKiXtart14 Kommentare

Hallo zusammen, wir haben folgendes Szenario: Für den Zugriff auf eines unserer Systeme wird ein einzigartiges Zertifikat benötigt, welches ...

Neue Wissensbeiträge
LAN, WAN, Wireless

Cisco Mikrotik VPN Standort Vernetzung mit dynamischem Routing

Anleitung von aqui vor 5 StundenLAN, WAN, Wireless

1. Allgemeine Einleitung Das nachfolgende Tutorial ist eine Fortführung der hier bei Administrator.de schon bestehenden VPN Tutorials und beschreibt ...

Windows Mobile

Support für Windows Mobile endet im Dezember 2019

Information von transocean vor 1 TagWindows Mobile

Moin, Microsoft empfiehlt als Alternative den Umstieg auf iOS oder Android, wie man hier lesen kann. Gruß Uwe

Internet

Kommentar: Bundesregierung erwägt Ausschluss von Huawei im 5G-Netz - Unsere Presse wird immer sensationsgieriger

Information von Frank vor 3 TagenInternet5 Kommentare

Hier mal wieder ein schönes Beispiel für fehlgeleiteten Journalismus und Politik zugleich. Da werden aus Gerüchten plötzlich Fakten, da ...

Windows 10

Netzwerk-Bug in allen Windows 10-Versionen durch Januar 2019-Updates

Information von kgborn vor 3 TagenWindows 101 Kommentar

Nur ein kurzer Hinweis für Admins, die Windows 10-Clients im Portfolio haben. Mit den Updates vom 8. Januar 2019 ...

Heiß diskutierte Inhalte
LAN, WAN, Wireless
Temporäre WLAN Verbindung für AD-Login
Frage von Christian.WidauerLAN, WAN, Wireless15 Kommentare

Hallo zusammen, ich weiß leider nicht unter welchem Begriff ich dafür suchen muss, daher habe ich bisher leider nichts ...

LAN, WAN, Wireless
Bekannte Drosselungen bei Providern ?
Frage von HenereLAN, WAN, Wireless15 Kommentare

Servus zusammen, in bereits angefangen, aber ich hoffe dass der Beitrag hier mehr Informationen bringt. Sind Portdrosselungen bzw gezielte ...

Netzwerkmanagement
Reverse Proxy für TCP und UDP Anfragen
gelöst Frage von flxklsNetzwerkmanagement14 Kommentare

Hallo zusammen, ich besitze einen Rootserver, der nur eine öffentliche IP besitzt und auf dem mehrere VMs laufen. Da ...

Netzwerkmanagement
Server bauen
Frage von JugendringNetzwerkmanagement11 Kommentare

Moin Moin, wir, der Jugendring sind ein ständig wachsender Verein mit vielen Unterprojekten. Da liegt es nah, dass wir ...