›32;40m
****************************************************************
*                                                              *
* Programm:         UnDelete                                   *
* Version:          2.15                                       *
* Datum:            01.02.93                                   * 
* Autoren:          Dirk-Michael Brosig, Mathias Nieting       *
*                                                              *
****************************************************************

›31;40m
UnDelete ist ›1;3mShareware!›0m  Es darf  nur  zusammen  mit den Dateien
 - UnDelete
 - UnDelete.info
 - UnDelete.doc
weitergegeben werden.
›1;3m
Es wird eine Benutzergebühr von 15.- DM erhoben.
›0m

UnDelete  ist  ein  in  Assembler geschriebenes OS2.04-Tool, mit
dessen Hilfe man ›1;3mgerade eben›0m gelöschte Verzeichnisse und Dateien
auf Festplatten und Disketten wiederherstellen kann.

Mit  dieser  Version  wurden einige von Enforcer angemahnte BUGs
entfernt.   Bei  der Erstellung der Node-Strucktur wurde ein Bug
in  der  Remember-Key  Routine ausgemertzt.  Weiterhin wurde die
interne logische Strucktur optimiert.

Bitte lesen Sie unbedingt die Warnungen unter Punkt 3.5!

Die  Autoren  lehnen  jegliche  Verantwortung  für  entstehende
Schäden  in  EDV-Anlagen  bei Anwendung dieses Programmes ab !!!
Die  Anwendung  erfolgt  auf  eigene  Gefahr !!!  Zu Risiken und
Nebenwirkungen  lesen Sie diese Beschreibung oder verartzten Sie
Ihren Apotheker !!!

Jedes BackUp ist besser als dieses Programm !!! :-)))

1. Anwendungsbereich

UnDelete  ist  in der Lage alle angemeldeten Drives zu erkennen.
Die  bei  früheren  Versionen  auftretenden  Beschränkungen  bei
Partitionsnamen  sind  nicht  mehr gültig.  Es sollte eigentlich
alles erkannt werden was da ist, einschließlich der RAD`s.

UnDelete erkennt sowohl OFS und FFS.  Es kann auch beide Formate
bearbeiten,  man sollte sich aber bei FFS darüber klar sein, daß
die  Datensicherheit  von zurückgeholten Dateien nicht besonders
groß ist.

Es  können  Partitionen bis zu einer Maximalgröße von 16.777.215
Blocks  behandelt  werden  (also  rund  8000  MB).   Das  trifft
natürlich  nur  auf  FFS-Partitionen zu da OFS-Partitionen durch
die fehlenden Bit-Map-Extesion-Blocks auf 52 MB begrenzt sind.
So  sich  jemand  wundert,  warum man kein Ausgabedevice angeben
kann,  sei  Ihm darauf geantwortet, daß UnDelete gelöschte Files
direkt  auf  dem  Datenträger  zurückholt,  dort  wo  sie früher
gestanden haben.

2. Programmstart

UnDelete  kann  sowohl  von  der Workbench, als auch aus der CLI
gestartet werden.


3. Arbeitsweise

3.1 Das Zerstören

Es besteht die Möglichkeit Files und Directories vollständig vom
Drive   zu   verbannen   (praktisch   wird  die  Checksumme  des
Headerblocks  vermauschelt).   Das  hat den Zweck, daß die Liste
der  gelöschten  Files nicht von Mal zu Mal länger wird, und man
Files,  die  man  wirklich  nicht mehr haben will, aus der Liste
entfernten  kann.   So muß man nicht mehr in einer Liste von 400
Files ein einziges suchen.

Kann ein File nicht zurückgeholt werden, z.B.  weil es von einem
anderen  Programm  teilweise  überschrieben  wurde,  so  wird es
automatisch zerstört und taucht beim nächsten Scannen nicht mehr
auf.

3.2 Das Zurückholen und Zerstören von Directories

Wurde  ein  Directory  zurückgeholt,  so kann der User dann ent-
scheiden,  ob  alle Files dieses Direktories zurückgeholt werden
sollen  oder  nicht.   Das  trifft  auf  auch  darin  enthaltene
Subdirectories zu.

Existiert  scon  ein  File oder Dir mit gleichem Namen, wird der
User  darauf  aufmerksam  gemacht.   Der  Name  wir  durch  eine
Extension .ud01 erweitert.  Existiert auch diese schon, wird mit
.ud02, .ud03 usw.  erweitert.

TIP:

Hat  man  "ausversehen" das FONTS-Dir gelöscht, so wird zwar der
ganze  Inhalt  gelöscht, aber nicht das Verzeichnis selber, weil
meistens  ein ASSIGN oder PATH drauf steht.  In diesem Fall wird
empfohlen  das ASSIGN (assign fonts:  remove) und den Pfad (path
fonts:   remove)  zu entfernen, und das Verzeichnis dann auch zu
löschen.  Das hat den Vorteil, daß man dann im UnDelete nur noch
das  Verzeichnis FONTS komplett zurückzuholen braucht, ohne sich
um einzelne Files oder Unterverzeichnisse kümmern zu müssen.

Diese  Funktion steht auch beim Zerstören zur Verfügung und zwar
genau  seit dem Tag, an dem ich versucht habe das Spiel "EMERALD
MINE" (3 Dirs und 303 Files) von meiner Platte zu verbannen.

3.3 Dauer des Scannens

Als  Grundlage dafür gilt:  Je voller die Diskette (Festplatte),
umso  schneller  geht das Scannen.  Man kann für eine fast leere
Diskette  ungefähr  mit  2-3  Minuten rechnen.  Bei einer zu 42%
gefüllten 52MB-Festplatte dauert es ungefähr 8-9 Minuten.

3.4 Fehlermeldungen

Wie üblich gibt es mehrere Arten von Fehlermeldungen, solche die
zum  Abbruch  einer  Aktion  führen  und solche die dem User auf
etwas aufmerksam machen wollen.
Zur  ersten  Sorte gehören die, die beim Scannen auftreten.  Und
das sind genau fünf.

1. ABBRUCH: Lesefehler auf Drive
Dieser  Fehler  hat  eine  ganz  besondere  Bedeutung, weil beim
Scannen  immer nur die Blöcke beachtet werden, die in der Bitmap
als  nicht  belegt  gekennzeichnet sind.  Testprogramme wie z.B.
DisCovery  testen immer nur die belegten Blöcke, der Fehler kann
also  von  DisCovery  nicht bemerkt werden.  Tritt dieser Fehler
auf  heißt  das also:  ein noch nicht belegter Block ist defekt.
Sie  sollten die Diskette neu formatieren (natürlich nachdem sie
die  Daten gerettet haben), denn wenn sie versuchen die Diskette
ganz voll zu machen kommt es garantiert zu Fehlern.

2. ABBRUCH: Zu wenig Speicher
Es  sind  so  viele  gelöschte  Files  auf  der Disk, daß sie im
Speicher  nicht  mehr  untergebracht werden können. Pro File muß
ein Platzbedarf von rund 50 Bytes eingeplant werden. Es gibt im-
mer noch die Möglichkeit UnDelete von der InitialCLI zu starten,
oder seinen Speicher zu erweitern.

3. ABBRUCH: Kann nur OFS / FFS Disks bearbeiten
Klar  die  Diskette ist nicht in Ordnung.  Meistens nicht forma-
tiert.   Ansonsten kann UnDelete den Bootblock nicht finden oder
Die Bitmap ist als ungültig gekennzeichnet.

4. ABBRUCH: Diskette gewechselt
Der  Fehler  tritt  zwar  nicht  beim  Scannen auf (sondern beim
Entfernen/Wechseln  der  Diskette  in der File/Dir-Auswahl), hat
aber  dieselbe  Wirkung , wie seine drei Brüder.  Es wird sofort
nach der Bestätigung in die Drive-Auswahl zurückgekehrt.

5. ABBRUCH: Disk zu groß
Klar die Diskette ist einfach zu groß.

Die  anderen  Fehler  treten auf wenn UnDelete nicht in der Lage
ist  ein  File  oder  Dir  zurückzuholen.   Der  Grund wird dann
angezeigt und davon gibt es Stücker vier.

1. (Lesefehler) ... <file>
Ein  Block  konnte  nicht  gelesen  werden.   Dieser  Fehler ist
eigentlich  unmöglich, weil das normalerweise schon beim Scannen
bemerkt wird.

2. (Struktur defekt) ... <file>
Vor  der  Wiederherstellung  eines  Files wird sehr genau darauf
geachtet, ob die Filestruktur  noch korrekt ist.  Bei OFS werden
sämtliche  Parameter  eines  Blocks  überprüft.  Bei FFS ist die
Sache  schon  schwieriger.  Dort basiert der Test darauf, daß an
der Stelle wo normalerweise die Checkksumme steht, keine gültige
Checksumme  stehen  darf.   Die  Datensicherheit  ist also nicht
besonders groß.  Das sollte man unbedingt beachten.
Also  noch mal im Klartext um Mißverständnisse zu vermeiden:  Es
wird  lediglich die Diskstruktur getestet.  Die Filestructur bei
ausführbaren  Files  wird  nicht  überprüft.   Schön wäre es ja,
vorallem  würde  es  auch  die Datensicherheit bei FFS-Disks er-
höhen.

3. (benutzte Sektoren) ... <file>
Der  häufigste  Fehler.  Ein Block des alten Files wurde bereits
von einem anderen Programm überschrieben.

4. (zu wenig Speicher) ... <file>
Dieser  Fehler  dürfte normalerweise nicht auftreten es sei den,
das  System  ist  wirklich  am Ende ist.  Der benötigte Speicher
hängt von der Länge des Files ab (Anzahl Blocks*4).


3.5 Fehlerreports

Dank  umfangreicher Tests können Fehler (außer den Aufgeführten)
mit  fast  75%-iger Sicherheit :-)) ausgeschlossen werden.  Alle
Fehler  früherer  Versionen,  gerade  im Bezug auf nichterkannte
Drives,   wurden   abgestellt   (so   hoffe   ich   jedenfalls).
Auftretende  Fehler  bitte  an  Adresse  unter 5.  melden.  Wenn
möglich  mit  detailierter Beschreibung des Festplattentyps, der
Partitionsnamen,   -größen,   -länge,   -lowblock,   usw.   Je
ausführlicher  die  Beschreibung,  umso schneller ist Abhilfe zu
erwarten.


BUG:   Hat  ein File nicht komplett auf eine Diskette gepaßt, so
       ist  dies  aus  der  Struktur  (auch  bei  OFS)  nicht zu
       erkennen,  und  das  Programm  meldet  keinen Fehler beim
       Wiederherstellen! (Das ist auch nicht zu ändern.)

WARN:  Hat  eine   Festplatte  defekte  Blocks,  die  vom Forma-
       tierungsprogramm   in  eine eigens dafür vorhandene Liste
       der  Platte eingetragen werden, sollte man Undelete nicht
       einsetzen, da dieser Fall nicht berücksichtigt wurde.

WARN:  Entnehmen  Sie niemals eine Diskette, solange Sie sich in
       der File/Dir-Auswahl befinden.

WARN:  UnDelete geht  davon aus, daß die DOS-Struktur des Drives
       in Ordnung ist,  und führt keinen Test dahingehend durch.
       Ist Sie nicht in Ordnung vergrößert UnDelete das Chaos.

4.  Programmbeschreibung

4.1 Die Auswahl des Drives

Man hat die Möglichkeit aus einem ListView-Gadget das gewünschte
Laufwerk  auszuwählen.   Und  dann  geht auch gleich das Scannen
los.    Die   gefundenen   Files/Dirs   werden   sofort  in  das
ListView-Gadget  eingetragen.   Der User kann also, wenn das von
Ihm  gesuchte  File  im  ListView-Gadget  erscheint, das Scannen
abbrechen (STOP-Gadget).

4.2 Die Auswahl des Files

Nachdem  man  nun mehr oder weniger lange gewartet hat, kann man
sich  ein  File  oder  Dir  auswählen,  oder  nicht,  wenn keins
gefunden  wurde.   In  dem  Fall  gehts  automatisch  zurück zur
Drive-Auswahl.

Als  ausgewählt gilt ein File nur dann, wenn unter dem ListView-
Gadget  auch  "AUSGEWÄHLT  ...  <file/dir>" steht, und auch erst
dann kann man es ZERSTÖREN oder ZURÜCKHOLEN.

Das  Zurückholen  oder Zerstören eines Files/Dirs muß, mit einer
Ausnahme, immer bestätigt werden.  Die Ausnahme betrifft auf das
Bearbeiten  von  Directories zu (siehe 3.2).  Denn dort wird der
ganze  Inhalt  des  Dirs  Stück  für  Stück und nacheinander be-
arbeitet.   Dem  User  bleibt die Möglichkeit des Abbrechens mit
dem STOP-Gadget.

5. Credits

       Mathias Nieting
       Heinrich-Heine-Straße 10
       O-2530 Warnemünde

Z-Netz     : MATHIAS@MAFIA.ZER
CompuServe : Mathias Nieting CIS 100022.3052
Voice      : +49/381-51100
