FakeDev - Prüfung von nicht vorhandener Hardware umgehen Programme, die über FindConfigDev nach Hersteller- und Produktnummer einer Hardware suchen, können hiermit zum Laufen gebracht werden, obwohl die geforderte Hardware gar nicht vorhanden ist. Dies funktioniert allerding nur dann, wenn wirklich nur gesucht wird, um herauszufinden, ob die Hardware im System ist. Wenn tatsächlich auf die "gefundenen" Daten zugegriffen wird, wird das Programm unweigerlich abstürzen Vorgehensweise Öffne zuerst ein Shell-Fenster und starte DevSnoop. Jetzt öffne noch ein zweites Shell-Fenster und rufe dort den Befehl auf, der sonst nicht funktioniert. z.B. Mount CD2: Im ersten Fenster sollte jetzt eine Ausgabe wie diese erscheinen: patch installed. manufacturer = 1234; product = 56; find = fail manufacturer = 1234; product = 56; find = fail Aktiviere das erste Fenster und drücke Ctrl-C um DevSnoop zu beenden. Jetzt kannst du FakeDev mit den gefundenen Werten aufrufen: FakeDev 1234 56 count 2 Starte den Befehl im zweiten Fenster nocheinmal, er sollte jetzt funktionieren. (Im Falle von Mount wie in diesem Beispiel, kann es sein, daß Mount jetzt sagt, das Gerät sei bereits angemeldet. In diesem Fall kannst du stattdessen auf das Gerät zugreifen, um es zu aktivieren, z.B. mit Dir CD2:) Durch die Angabe von count 2 beendet sich der Patch nach zwei Treffern von selbst. Dies ist nützlich, weil Treiber meist nur beim Start prüfen, ob die Hardware vorhanden ist und danach der Patch nicht mehr benötigt wird. Falls das Experiment geglückt ist, kannst du FakeDev permanent in die User-Startup bzw. Startup-Sequence einbauen. Es muß vor dem bewußten Befehl eingefügt werden. Also in unserem Beispiel unmittelbar vor Mount in der Startup-Sequence. Beispiel: BindDrivers run >nil: FakeDev 1234 56 count 2 C:Mount >NIL: DEVS:DOSDrivers/~(#?.info) Parameter FAKEMANU Herstellernummer der Hardware, die vorgegaukelt werden soll. FAKEPROD Dazugehörige Produktnummer DENYMANU Herstellernummer der Hardware, die *nicht* gefunden werden soll, obwohl sie vorhanden ist. DENYPROD Dazugehörige Produktnummer COUNT Anzahl Treffer, nach der sich der Patch von selbst beenden soll. +----------------------------------------------------------------------+ | Alle Programme wurden nur für meinen Eigenbedarf geschrieben und nur | | von mir getestet. Ich übernehme keine Garantie, dass sie auf einem | | anderen Computer als meinem funktionieren und keinen Schaden | | anrichten. Benutzung auf eigene Gefahr ! | +----------------------------------------------------------------------+ thomas-rapp@web.de