Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » VC++ / MFC » Protokollfile erstellen -> Größe begrenzen?

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
07.06.2004, 13:59 Uhr
Unwissende
...die wirklich Unwissende 8-)


Hallöchen,

ich hoffe ja, das dies jetzt der letzte Beitrag zu meinem momentanen PRojekt ist und ich es nun endlich abschließen kann...
Aaaalso, mein Grundprogramm ist fertig. Eine schöne graph. Oberfläche für meine Berechnungen..
Diese Berechnungen sollen jetzt in einem Dauertest ablaufen, d.h. der Test läuft dann halt mal 12, 14Stunden. Bisher hab ich die Ergebnisse in einer PRotokollfile abgelegt.
Das PRoblem ist nur, dass die nach wenigen Tests schon über 10MB (ASCII File...)groß ist
-->
1. Gibt es eine Möglichkeit unter MFC die Dateigröße zu limitieren, das heißt
z.B. bei 30MB aufzuhören?
2. Kann ich evl. die File zippen?
oder
3. gibt es vielleicht sonst noch irgendeine Idee?

...sagt jetzt bitte nicht, ich soll weniger in die Protokollfile reinschreiben. Ich brauche relativ genaue Angaben:


Code:
--------BOARD No.: 1--------

Addressline Test....
error at address: 0x00980014 - written: 5     read: 55

Performing Dataline Test....
Error: written: -1     read:0
Error: written: 1     read:0
Error: written: 2     read:0
Error: written: 4     read:0
Error: written: 8     read:0
Error: written: 16     read:0
Error: written: 32     read:0
Error: written: 64     read:0
Error: written: 128     read:0
Error: written: 256     read:0
Dataline Test for board-nr.: 1 failed #errors:10
Test for board 1 at address 0x00000000 (0x00000000) with range 33554432 failed.
Note: Maximum number of documented errors in the protocol file:10!!!
---------------------------


--
__________________________________
Unwissenheit ist vorläufig- Dummheit für immer
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
07.06.2004, 14:30 Uhr
~mike
Gast


Hi!
Zippen kannst du mit der (z.B.) zLib
Ein anderes Bsp. wäre
www.codeproject.com/cpp/zip.asp

virtual hat zu diesem Thema eine Klasse geschrieben:
www.dev-geeks.org/forum/viewtopic.php?p=8

Ich glaub nicht, dass Win disk quota beherrscht. Aber du kannst folgendes probieren:
www.codeproject.com/file/crotarylog.asp?df=100

So ähnlich wirds auch in UNIX gemacht

mfg
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
08.06.2004, 09:05 Uhr
ao

(Operator)


Doch, ich sags. Du schreibst viel Text für wenig Information, und vor allem immer wieder dasselbe:
Error: written: 1 read: 0
Das sind 25 Zeichen, die 2 Zeichen "wertvolle" Information enthalten, und die Zeile wird 10mal wiederholt. Das könntest du kürzen und eine einfache Tabelle mit zwei Spalten machen.

Du könntest auch sagen: Wenn ein Board mehr als N solcher Fehler aufweist, brechen wir den Test ab, weil es bei der schieren Anzahl nicht mehr wichtig ist, was alles im Einzelnen nicht klappt.

Schreibst du mehrere Testreports in ein File? Die MFC-Dateiklassen haben bestimmt eine Methode, mit der die Größe abgefragt werden kann. Einfach, wenn ein neues Board kommt, die Dateigröße prüfen und, wenn ein Schwellwert überschritten ist, die Datei schließen und eine neue anfangen. Dann kriegst du eine Serie von Dateien zu je 1 MB plus/minus ein paar KB.

Bei Protokolldateien dieser Art ist es ein großer Vorteil, wenn man "mal eben" mit Notepad oder Win-Commander oder so reinschauen kann. Außerdem kann man es ganz einfach in Word, Excel oder sonstwas importieren. Darum spricht einiges dafür, am ungezippten ASCII-Format festzuhalten.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
08.06.2004, 09:34 Uhr
Unwissende
...die wirklich Unwissende 8-)


das written und read mach ich wieder raus, das hab ich jetzt auch eingesehen
Auf die geniale Idee mit der Fehlerbegrenzung bin ich heut morgen auch schon gekommen Momentan läuft der Test so, dass bei 10 Fehlern einfach nichts mehr in die Protokollfile reingeschrieben wird. Mal testen, vielleicht erhöhe ich die Zahl ja noch

Ich überlege auserdem, ob ich die Dateigröße vielleicht mit Exceptions abfangen kann:

C++:
CFileException::diskFull


das hab ich zumindest in meinem tollen Buch gefunden, das irgendwie auch wieder nich so toll ist, weil eigentlich voll unvollständig ist.......egal, bevor ich jetzt weiter blöd rumlabere verzieh ich mich mal ins Labor

--
__________________________________
Unwissenheit ist vorläufig- Dummheit für immer
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
08.06.2004, 10:17 Uhr
ao

(Operator)



Zitat:
Unwissende postete
Ich überlege auserdem, ob ich die Dateigröße vielleicht mit Exceptions abfangen kann:

C++:
CFileException::diskFull




Halte ich nicht für so ne tolle Idee. #

Erstens bedeutet "diskFull" "Diskette voll, nix geht mehr" und nicht "Datei groß genug" -> Missverständnis droht.

Zweitens musst du beim Auftreten der Exception sofort aufhören zu schreiben und kannst nicht mal den laufenden Test zuende bringen, das macht den Ablauf wahrscheinlich unnötig kompliziert.

Drittens (und das ist meine Privatmeinung) sollte man Exceptions, wie der Name schon sagt, zur Behandlung von Ausnahmesituationen wie z.B. "Diskette voll" einsetzen und nicht für ganz normale Betriebszustände. Und dass die Datei eine bestimmte Größe überschreitet, würde ich eher als normalen Betriebsfall einordnen.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
08.06.2004, 12:16 Uhr
Unwissende
...die wirklich Unwissende 8-)


okay......................
--
__________________________________
Unwissenheit ist vorläufig- Dummheit für immer
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ VC++ / MFC ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: