Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Software-Projekte der Mitglieder (https://www.delphipraxis.net/26-software-projekte-der-mitglieder/)
-   -   DiskImage (https://www.delphipraxis.net/10415-diskimage.html)

Luckie 18. Okt 2003 03:48


DiskImage
 
DiskImage erstellt und schreibt Disketten-Images (nur NT ff.)
Features:
- Laufwerksauswahl
- Fortschrittsanzeige beim Lesen der Diskette.
- Fortschrittsanzeige bei der Low-level Formatierung der Diskette.
- Fortschrittsanzeige beim Schreiben des Images.
- Scheiben ud Lesen erfolgt in Threads.
- Exe ist nur 54 KB groß.
- Sourcen sind im Archiv drin, inklusive der nötigen Header-Übersetzungen der Jedis.

Neue Version: 1.2 - 2005-01-22
Download:
DiskImageNT [28 KB] (7Zip-Archiv)
DiskImageNT [32 KB] (Zip-Archiv)

Programm Homepage: DiskImageNT-Homepage

Alexander 18. Okt 2003 09:14

Re: DiskImage
 
Hallo Luckie,
ich habe es jetzt mal probiert, doch irgendwie braucht er verdammt lange für's Erstellen des Images bzw. beim Einlesen der Diskette...
Hast du ne Ahnung warum oder ist das normal?
Image schreiben habe ich noch nicht probiert..

MathiasSimmack 18. Okt 2003 09:17

Re: DiskImage
 
Zitat:

Zitat von Luckie
sollte auch unter Windows 9x lauffähig sein.

Ist es aber nicht.

Zum einen steckt das altbekannte Problem drin: die Öffnen- und Speicherndialoge sind nicht zu sehen. Frag mich nicht nach dem Grund, aber mit dem Problem haben alle Programme von dir zu kämpfen, wenn ich sie unter 98 starte. Ist aber nicht weiter schlimm, weil du ja den Quellcode beilegst. Ich muss den bloß mit meinem D5 kompilieren, dann geht´s auch mit den Dialogen. Nur das Merkwürdige ist, dass die sich dann auch unter 2000 oder XP öffnen.
Evtl. ist in D6 irgendwo ein Wurm drin. Jedenfalls bin ich froh, dass du Open Source entwickelst, sonst könnte ich viele Programme von dir nicht nutzen. :)

Na ja, wie auch immer - unter 98 bekomme ich die Fehlermeldung "Zugriffsnummer ungültig" (o.ä.). Dein erster Quellcode, den du hier gepostet hast, enthielt jede Menge NT-Funktionen. Da hätte es mich nicht gewundert, dass es nur unter NT und aufwärts klappt.
Vielleicht müsste man mal gucken, ob sich im Quellcode irgendwelche speziellen NT-Funktionen verbergen. Dann wäre es zweckmäßig, das Programm entsprechend auf die NT-Schiene zu begrenzen.

Und was mir nicht gefällt, ist die Combobox. Zum einen weil da auch B:\ drin steht, obwohl ich gar kein zweites Floppy habe, und zum anderen, weil man da auch problemlos selbst was eintragen kann. Nur leider bringt das nichts, denn die Antwort ist die Meldung "Das Handle ist ungültig". War also nix mit dem Image meiner Festplatte. ;)


Das mit der Geschwindigkeit kann ich nicht bestätigen. Ich habe mal zwei Floppy-Images angelegt, das ging recht flott.

Alexander 18. Okt 2003 09:25

Re: DiskImage
 
Kommando zurück, ich habe jetzt nach einer endloslangen Zeit einen CRT-Fehler bekommen.
Das liegt wohl an meiner Diskette, bei einer anderen hat es auch recht flott funktioniert.
Dennoch wundere ich mich,warum es bei der nicht geklappt hat, denn mit dem Explorer konnte ich bequem darauf zugreifen...
Getesetet unter XP

mirage228 18. Okt 2003 09:47

Re: DiskImage
 
Hi,

irgendwie hat dein Programm Probleme beim Lesen von eingien meiner Disketten (Windows Explorer zeigt sie korrekt an)...
werde gleich nochmal ein paar Disketten probieren, habe den Verdacht, dass diese dann kaputt ist...
ah, die diskette ist wirklich kaputt, mit den anderen gehts nämlich!

ahja, was mir noch aufgefallen ist: wenn ich manuell einen nicht existenten Dateinamen eingebe, wird die Fehlermeldung "Das System kann den angegeben Pfad nicht finden" beim Drücken auf den Start Knopf angezeigt. Wähle ich eine solche nicht existierende Datei über den OpenDialog aus, klappt alles.
dann ist da halt noch das phänomen combobox mit Laufwerk B:\ (wusste gar nich, dass ich so eins hab...), wie Matthias das schon gesagt hatte!

sonst eigentlich ein ziemlich nützliches programm. hab da auch noch im zimmer versteckt ein paar disketten rumliegen, die nur darauf warten auf meiner festplatte archiviert zu werden :-)

mfG
mirage228

Hansa 18. Okt 2003 10:09

Re: DiskImage
 
Zitat:

Zitat von alexander
...Das liegt wohl an meiner Diskette, bei einer anderen hat es auch recht flott funktioniert.Dennoch wundere ich mich,warum es bei der nicht geklappt hat, denn mit dem Explorer konnte ich bequem darauf zugreifen...

Inwiefern hast Du darauf zugegriffen ? Hat der Explorer Dir nur den Dateinamen angezeigt, oder auch den Inhalt ? Ihr dürft nicht die FAT mit dem Disketteninhalt verwechseln. Ist die Spur 0 noch in Ordnung, so heißt das noch lange nicht, daß dann auch z.B. die Spur 20 nicht defekt ist, wo eine Datei eventuell liegt. Ist das nämlich der Fall, so müßte man eigentlich schon akustisch die mehrfachen Leseversuche hören. Probiert doch einfach mal die Diskette zu kopieren. Geht das nicht, kann das Image auch nichts mehr machen. 8)

@Luckie: Thx für das Programm. Glaube Dich dazu animiert zu haben. :mrgreen:

Alexander 18. Okt 2003 10:11

Re: DiskImage
 
@Hansa er zeigt mir die Dateinamen und den "Inhalt" der Dateien an...

Hansa 18. Okt 2003 11:04

Re: DiskImage
 
Glaub ich nicht. :mrgreen: Aber Luckie, das Programm ist so zu gefährlich. Ich habe etwas damit rumgespielt und plötzlich hat der mir eine Diskette ohne Vorwarnung formatiert. Das ist keine sehr wichtige Diskette und die Files da drauf habe ich mehrfach. Wie kriege ich das natürlich vorher gemachte Image wieder auf die Diskette drauf ?

CalganX 18. Okt 2003 12:12

Re: DiskImage
 
Hi,
erstmal ist es ein wirklich schickes Programm, dass mich sehr stark an "RAW Write" (vom Design her) erinnert. ;) Allerdings würde ich letzteres weiterhin verwenden, weil es zum einen schneller liest und schreibt und zum anderen die Dateien komprimiert.

Ich habe gerade ein ISO von einer MS DOS-Startdiskette erstellt. Die Diskette war bis 556KB belegt. Die Iso-Datei war ganze 1,4MB groß. Dabei stellen sich mir zwei Fragen:
  1. Kannst du die Diskette nicht so auslesen, dass du nur die Sektoren ließt und schreibst, die wirklich belegt sind? Wenn ich jetzt darüber nachdenke, fällt mir ein, dass das nicht einfach wird, weil die beschriebenen Sektoren ja nicht zwingen hinterinander liegen. Allerdings kannst du ja die ganzen 0en abkürzen. ;)
  2. Warum komprimierst du die Images nicht? Z.B. mit Bzip2.
Klar. Da man ja eigentlich nur von Disketten ein Iso machen kann, macht es wenig Sinn 1.4MB zu komprimieren, allerdings würde ich das Programm auf USB-Sticks erweitern (sind ja ebenfalls beschreibbar ohne weitere API-Funktionen).

Ich werde mir nachher mal den Sourcecode ansehen und noch einige Sachen anmerken. Ggf. mache ich es so wie Mathias und schreibe das ganze Programm neu und maile es dir. Täglich eine neue Erweiterung. :twisted:

Chris

Sharky 18. Okt 2003 12:30

Re: DiskImage
 
Hai Luckie,

tolles Programm! Was mir noch nicht klar ist: Wofür ist der Button "Speichern unter"?

Hansa 18. Okt 2003 12:31

Re: DiskImage
 
Zitat:

Zitat von Chakotay1308
...Ich werde mir nachher mal den Sourcecode ansehen und noch einige Sachen anmerken. Ggf. mache ich es so wie Mathias und schreibe das ganze Programm neu und maile es dir. Täglich eine neue Erweiterung. :twisted:

Chris

Das hört sich schwer nach Meckern an. Sei froh, daß Luckie das Programm gemacht hat und es sogar dir als Source zur Verfügung stellt. :mrgreen: Und das mit dem komprimieren ist auch so eine Sache. Das ganze muß nämlich auch wieder entkomprimiert werden und zwar genau so wie es vorher war.

Sag mir lieber einer mal, wie ich das machen muß, siehe mein letzter Beitrag.

Luckie 18. Okt 2003 12:34

Re: DiskImage
 
Zitat:

Zitat von MathiasSimmack
Zitat:

Zitat von Luckie
sollte auch unter Windows 9x lauffähig sein.

Ist es aber nicht.

Zum einen steckt das altbekannte Problem drin: die Öffnen- und Speicherndialoge sind nicht zu sehen. Frag mich nicht nach dem Grund, aber mit dem Problem haben alle Programme von dir zu kämpfen, wenn ich sie unter 98 starte. Ist aber nicht weiter schlimm, weil du ja den Quellcode beilegst. Ich muss den bloß mit meinem D5 kompilieren, dann geht´s auch mit den Dialogen. Nur das Merkwürdige ist, dass die sich dann auch unter 2000 oder XP öffnen.
Evtl. ist in D6 irgendwo ein Wurm drin. Jedenfalls bin ich froh, dass du Open Source entwickelst, sonst könnte ich viele Programme von dir nicht nutzen. :)

Das ist doch zum Haareraufen mit den Dialogen. :evil:

Zitat:

Vielleicht müsste man mal gucken, ob sich im Quellcode irgendwelche speziellen NT-Funktionen verbergen. Dann wäre es zweckmäßig, das Programm entsprechend auf die NT-Schiene zu begrenzen.
Es sind die ganzen DevbiceIoControl Funktionen. Allerdings lies es sich unter ME starten. Da ich nichts dynamisch importiere, bin ich davon ausgegeangen, dass es auch unter Windows 9x läuft, da ich beim Start keine fehlermeldung bekam. Weiter konnte ich nicht testen, da mein Vater gerade an seinem Rechner gearbeitet hatte.

Zitat:

Und was mir nicht gefällt, ist die Combobox. Zum einen weil da auch B:\ drin steht, obwohl ich gar kein zweites Floppy habe, und zum anderen, weil man da auch problemlos selbst was eintragen kann. Nur leider bringt das nichts, denn die Antwort ist die Meldung "Das Handle ist ungültig". War also nix mit dem Image meiner Festplatte. ;)
Da habe ich vergessen sie readonly zu machen. Und a: und b: habe ich fest eingetragen. Ich suche also gar nicht erst nach den vorhandenen Diskettentenlaufwerken.

Zitat:

Das mit der Geschwindigkeit kann ich nicht bestätigen. Ich habe mal zwei Floppy-Images angelegt, das ging recht flott.
Ich kann auch nicht sagen, dass es irgendwie besonders langsam ist.

Luckie 18. Okt 2003 12:37

Re: DiskImage
 
Zitat:

Zitat von mirage228
ahja, was mir noch aufgefallen ist: wenn ich manuell einen nicht existenten Dateinamen eingebe, wird die Fehlermeldung "Das System kann den angegeben Pfad nicht finden" beim Drücken auf den Start Knopf angezeigt. Wähle ich eine solche nicht existierende Datei über den OpenDialog aus, klappt alles.

Bei schreiben des Iamges auf Diskette? Da wäre die Fehlermeldung korrekt. Ein nicht vorhandenes Image kann ja nicht geschrieben werden.

Zitat:

dann ist da halt noch das phänomen combobox mit Laufwerk B:\ (wusste gar nich, dass ich so eins hab...), wie Matthias das schon gesagt hatte!
Siehe oben.

Luckie 18. Okt 2003 12:40

Re: DiskImage
 
Zitat:

Zitat von Hansa
Glaub ich nicht. :mrgreen: Aber Luckie, das Programm ist so zu gefährlich. Ich habe etwas damit rumgespielt und plötzlich hat der mir eine Diskette ohne Vorwarnung formatiert.

Da sollte ich wohl noch eine Abfrage einbauen. :roll:

Zitat:

Wie kriege ich das natürlich vorher gemachte Image wieder auf die Diskette drauf ?
Schon den zweiten Seitenreiter entdeckt? :gruebel:

Luckie 18. Okt 2003 12:46

Re: DiskImage
 
Zitat:

Zitat von Chakotay1308
Hi,
erstmal ist es ein wirklich schickes Programm, dass mich sehr stark an "RAW Write" (vom Design her) erinnert. ;) Allerdings würde ich letzteres weiterhin verwenden, weil es zum einen schneller liest und schreibt und zum anderen die Dateien komprimiert.

Ist Rawrite nicht im Stile eines Assistenten gehalten?

Zitat:

Ich habe gerade ein ISO von einer MS DOS-Startdiskette erstellt. Die Diskette war bis 556KB belegt. Die Iso-Datei war ganze 1,4MB groß. Dabei stellen sich mir zwei Fragen:
Logisch. Es wird ja auch jeder Sektor kopiert.

Zitat:

Kannst du die Diskette nicht so auslesen, dass du nur die Sektoren ließt und schreibst, die wirklich belegt sind? Wenn ich jetzt darüber nachdenke, fällt mir ein, dass das nicht einfach wird, weil die beschriebenen Sektoren ja nicht zwingen hinterinander liegen. Allerdings kannst du ja die ganzen 0en abkürzen. ;)
Ein nicht belegter Sektor muss nicht zwangsläufig nur 0 beinhalten. Wird eien datei gelöscht, wird nur ihr Eintrag im FAT als geläöscht markiert, physisch ist sie noch auf der Diskette vorhanden.

Zitat:

Warum komprimierst du die Images nicht? Z.B. mit Bzip2.
Weil mir das zu aufwendig war. Und so sollte das Image von jeden beliebigen Programm zurückschreibbar sein.

Zitat:

Klar. Da man ja eigentlich nur von Disketten ein Iso machen kann, macht es wenig Sinn 1.4MB zu komprimieren, allerdings würde ich das Programm auf USB-Sticks erweitern (sind ja ebenfalls beschreibbar ohne weitere API-Funktionen).
USB Sticks? Habe ich leider keinen. Aber es sollte auch ohne große Erweiterungen gehen. Versuch einfach mal den Stick als Laufwerk anzzugeben in der Combobox.

Zitat:

Ich werde mir nachher mal den Sourcecode ansehen und noch einige Sachen anmerken.
Am Quellcode selber dürfte es nichts zu mäkeln geben. :evil:

Luckie 18. Okt 2003 12:47

Re: DiskImage
 
Zitat:

Zitat von Sharky
Hai Luckie,
tolles Programm! Was mir noch nicht klar ist: Wofür ist der Button "Speichern unter"?

Um einen Dateinamen auszuwählen unter dem das Image gespeichert werden soll? :roll:

Sharky 18. Okt 2003 12:53

Re: DiskImage
 
Klonk.

Jetzt habe ich es verstanden. Ich dacht das ich in dem Edit-Feld eine Beschreibung für das Image angeben kann.
Aber dort kommt direkt der Name der Datei rein.

Christian Seehase 18. Okt 2003 12:54

Re: DiskImage
 
Moin Luckie,

Zitat:

Zitat von Luckie
Da ich nichts dynamisch importiere, bin ich davon ausgegeangen, dass es auch unter Windows 9x läuft, da ich beim Start keine fehlermeldung bekam.

Es gibt aber auch Parameter von Funktionen, die nicht auf allen Windowsversionen funktionieren.
Wenn ich das richtig gesehen habe stehen sämtliche IoControlCodes die Du in dem Programm verwendest nur unter NT zur Verfügung (gemäss PSDK)

mirage228 18. Okt 2003 12:56

Re: DiskImage
 
Zitat:

Zitat von Luckie
Zitat:

Zitat von mirage228
ahja, was mir noch aufgefallen ist: wenn ich manuell einen nicht existenten Dateinamen eingebe, wird die Fehlermeldung "Das System kann den angegeben Pfad nicht finden" beim Drücken auf den Start Knopf angezeigt. Wähle ich eine solche nicht existierende Datei über den OpenDialog aus, klappt alles.

Bei schreiben des Iamges auf Diskette? Da wäre die Fehlermeldung korrekt. Ein nicht vorhandenes Image kann ja nicht geschrieben werden.

Damit meinte ich, dass die Datei auch erstellt werden sollte, falls ich sie nicht über den Open-Dialog auswähle. (Wäre noch ne nette dreingabe)

mfG
mirage228

CalganX 18. Okt 2003 12:56

Re: DiskImage
 
Zitat:

Zitat von Luckie
Zitat:

Zitat von Chakotay1308
Hi,
erstmal ist es ein wirklich schickes Programm, dass mich sehr stark an "RAW Write" (vom Design her) erinnert. ;) Allerdings würde ich letzteres weiterhin verwenden, weil es zum einen schneller liest und schreibt und zum anderen die Dateien komprimiert.

Ist Rawrite nicht im Stile eines Assistenten gehalten?

Öhm... nein... also nicht wirklich zumindest.

[-- schnipp --]
Da waren ein paar Denkfehler drin. Sorry...
Deswegen beantworte ich die Fragen jetzt mal nicht, weil du Recht hast. ;)
[-- schnapp --]

Zitat:

Zitat von Luckie
Zitat:

Klar. Da man ja eigentlich nur von Disketten ein Iso machen kann, macht es wenig Sinn 1.4MB zu komprimieren, allerdings würde ich das Programm auf USB-Sticks erweitern (sind ja ebenfalls beschreibbar ohne weitere API-Funktionen).
USB Sticks? Habe ich leider keinen. Aber es sollte auch ohne große Erweiterungen gehen. Versuch einfach mal den Stick als Laufwerk anzzugeben in der Combobox.

Hab ja auch keinen. :(

Zitat:

Zitat:

Ich werde mir nachher mal den Sourcecode ansehen und noch einige Sachen anmerken.
Am Quellcode selber dürfte es nichts zu mäkeln geben. :evil:
Sorry... war gar nicht so gemeint. *tröst*
Ich finde da ja auch nichts. ;)
Aber noch ein kleiner Tipp: vielleicht solltest du Filter für den Save- und den OpenDialog festlegen, denn das sieht irgendwie schöner aus. Aber das ist nunmal Geschmackssache.

Chris

Luckie 18. Okt 2003 12:57

Re: DiskImage
 
Dann unterstütze ich eben MS in seinem Bestreben Windows 9x aussterben zu lassen, soll mir nur recht sein, ein OS weniger auf das man Rücksicht nehmen muss. :evil:

Luckie 18. Okt 2003 13:00

Re: DiskImage
 
Zitat:

Zitat von mirage228
Damit meinte ich, dass die Datei auch erstellt werden sollte, falls ich sie nicht über den Open-Dialog auswähle. (Wäre noch ne nette dreingabe)

Wie jetzt? Wird sie doch in beiden Fällen. Zu mindest bei mir. Gibst du beim erstellen des Iamges nur eine Dateinamen ein ohne Pfad, landet das Image im aktuellen Ordner. Oder reden wir jetzt aneinander vorbei? :gruebel:

Luckie 18. Okt 2003 13:03

Re: DiskImage
 
Zitat:

Zitat von Chakotay1308
Zitat:

Zitat von Luckie
Zitat:

Klar. Da man ja eigentlich nur von Disketten ein Iso machen kann, macht es wenig Sinn 1.4MB zu komprimieren, allerdings würde ich das Programm auf USB-Sticks erweitern (sind ja ebenfalls beschreibbar ohne weitere API-Funktionen).
USB Sticks? Habe ich leider keinen. Aber es sollte auch ohne große Erweiterungen gehen. Versuch einfach mal den Stick als Laufwerk anzzugeben in der Combobox.

Hab ja auch keinen. :(

Und wie willst du dann das für USB Sticks erweitern? Ist mir irgendwie ein Rätsel.

Zitat:

Aber noch ein kleiner Tipp: vielleicht solltest du Filter für den Save- und den OpenDialog festlegen, denn das sieht irgendwie schöner aus. Aber das ist nunmal Geschmackssache.
Haben denn Disketten Images eine feste Dateinamenerweiterung?

mirage228 18. Okt 2003 13:05

Re: DiskImage
 
Zitat:

Zitat von Luckie
Zitat:

Zitat von mirage228
Damit meinte ich, dass die Datei auch erstellt werden sollte, falls ich sie nicht über den Open-Dialog auswähle. (Wäre noch ne nette dreingabe)

Wie jetzt? Wird sie doch in beiden Fällen. Zu mindest bei mir. Gibst du beim erstellen des Iamges nur eine Dateinamen ein ohne Pfad, landet das Image im aktuellen Ordner. Oder reden wir jetzt aneinander vorbei? :gruebel:

Ich weiss nicht, was ich beim Posten des Beitrages auf Seite 1 angestellt habe, aber jetzt funktinoiert es bei mir auch. War wohl irgendwie mein Fehler, sorry.

mfG
mirage228

CalganX 18. Okt 2003 13:26

Re: DiskImage
 
Zitat:

Zitat von Luckie
Zitat:

Zitat von Chakotay1308
Zitat:

Zitat von Luckie
Zitat:

Klar. Da man ja eigentlich nur von Disketten ein Iso machen kann, macht es wenig Sinn 1.4MB zu komprimieren, allerdings würde ich das Programm auf USB-Sticks erweitern (sind ja ebenfalls beschreibbar ohne weitere API-Funktionen).
USB Sticks? Habe ich leider keinen. Aber es sollte auch ohne große Erweiterungen gehen. Versuch einfach mal den Stick als Laufwerk anzzugeben in der Combobox.

Hab ja auch keinen. :(

Und wie willst du dann das für USB Sticks erweitern? Ist mir irgendwie ein Rätsel.

Du meinst sicherlich "wieso": ganz einfach. Ich bin nicht der Einzige User, außerdem werde ich sicherlich irgendwann mal einen haben.

[/quote]
Zitat:

Aber noch ein kleiner Tipp: vielleicht solltest du Filter für den Save- und den OpenDialog festlegen, denn das sieht irgendwie schöner aus. Aber das ist nunmal Geschmackssache.
Haben denn Disketten Images eine feste Dateinamenerweiterung?[/quote]
.iso? :roll:

Chris

Hansa 18. Okt 2003 13:29

Re: DiskImage
 
Das Programm ist einwandfrei ! Nur ein paar Schönheitsfehler noch:

Die Namensgebung ist etwas verwirrend, z.B. ist da ein Reiter "Image schreiben" und ein Button "Image schreiben".

Vor dem Überschreiben/Formatieren muß unbedingt gewarnt werden !! Um meinen Fehler wieder zu beseitigen habe ich die Diskette neu formatiert, beim Image schreiben wurde sie dann nochmals formatiert. Ist das nötig ?

P.S.: das Programm ist sogar in der Lage einen Virus mitzukopieren. :mrgreen:

Luckie 18. Okt 2003 13:45

Re: DiskImage
 
Sie muss lowlevel formatiert werden.

So, jetzt reicht es mir, die Dialoge habe ich gekillt. Jetzt muß man eben die Pfade eintippen. (Hat noch mal 3 KB gebracht, wem falls etwas. :roll:)

Die Sicherheitsabfrage ist jetzt auch drin.

MathiasSimmack 18. Okt 2003 13:58

Re: DiskImage
 
Ich fänd´s amüsant, wenn du eine CloneCD-ähnliche Oberfläche machst. ;) Vier Buttons: Image erstellen, Image schreiben, Floppy kopieren, & Floppy löschen. Oder ein Assistent im Stil von Drive Image (DOS-Version). Mit einer Startseite und zwei Buttons (Image erstellen, Image schreiben), usw.


Das Problem mit den Dialogen lag IMHO nicht an den Dialogen. Der Fehler steckte irgendwo anders. Wie gesagt, wenn ich den Quellcode kompiliere, dann geht´s ja - ob unter 98, 2000 oder XP. Also muss das Problem wohl in D6 zu suchen sein. Könnte es sein, dass D6 bereits das erweiterte Record "TOpenFileName" enthält? Mit den zwei zusätzlichen Membervariablen? In dem Fall sollte es ausreichend sein, wenn du die alte Größe initialisierst. Dafür müsste es IMHO sogar eine Konstante geben. Schau doch mal in die "CommDlg.pas" rein.
Letzten Endes aber egal. Wenn es unter ME läuft, aber unter 9x definitiv nicht, dann bau am besten eine Sperre ein, damit man es unter 9x auch nicht starten kann; sprich: Versionskontrolle.


Zitat:

Zitat von Chakotay1308
Ggf. mache ich es so wie Mathias und schreibe das ganze Programm neu und maile es dir. Täglich eine neue Erweiterung. :twisted:

Da spricht die gequälte Seele, die zusehen musste, wie ich ihr Programm umschreibe und auch noch das Setup komplett umbaue. :mrgreen:

CalganX 18. Okt 2003 14:06

Re: DiskImage
 
Hi Mathias,
Zitat:

Zitat von MathiasSimmack
Zitat:

Zitat von Chakotay1308
Ggf. mache ich es so wie Mathias und schreibe das ganze Programm neu und maile es dir. Täglich eine neue Erweiterung. :twisted:

Da spricht die gequälte Seele, die zusehen musste, wie ich ihr Programm umschreibe und auch noch das Setup komplett umbaue. :mrgreen:

*g* Wie sehr es das trifft. :lol: :mrgreen:

Chris

Luckie 18. Okt 2003 14:07

Re: DiskImage
 
Delphi-Quellcode:
type
  POpenFilenameA = ^TOpenFilenameA;
  POpenFilenameW = ^TOpenFilenameW;
  POpenFilename = POpenFilenameA;
  {$EXTERNALSYM tagOFNA}
  tagOFNA = packed record
    lStructSize: DWORD;
    hWndOwner: HWND;
    hInstance: HINST;
    lpstrFilter: PAnsiChar;
    lpstrCustomFilter: PAnsiChar;
    nMaxCustFilter: DWORD;
    nFilterIndex: DWORD;
    lpstrFile: PAnsiChar;
    nMaxFile: DWORD;
    lpstrFileTitle: PAnsiChar;
    nMaxFileTitle: DWORD;
    lpstrInitialDir: PAnsiChar;
    lpstrTitle: PAnsiChar;
    Flags: DWORD;
    nFileOffset: Word;
    nFileExtension: Word;
    lpstrDefExt: PAnsiChar;
    lCustData: LPARAM;
    lpfnHook: function(Wnd: HWND; Msg: UINT; wParam: WPARAM; lParam: LPARAM): UINT stdcall;
    lpTemplateName: PAnsiChar;
    pvReserved: Pointer;
    dwReserved: DWORD;
    FlagsEx: DWORD;
  end;
  {$EXTERNALSYM tagOFNW}
  tagOFNW = packed record
    lStructSize: DWORD;
    hWndOwner: HWND;
    hInstance: HINST;
    lpstrFilter: PWideChar;
    lpstrCustomFilter: PWideChar;
    nMaxCustFilter: DWORD;
    nFilterIndex: DWORD;
    lpstrFile: PWideChar;
    nMaxFile: DWORD;
    lpstrFileTitle: PWideChar;
    nMaxFileTitle: DWORD;
    lpstrInitialDir: PWideChar;
    lpstrTitle: PWideChar;
    Flags: DWORD;
    nFileOffset: Word;
    nFileExtension: Word;
    lpstrDefExt: PWideChar;
    lCustData: LPARAM;
    lpfnHook: function(Wnd: HWND; Msg: UINT; wParam: WPARAM; lParam: LPARAM): UINT stdcall;
    lpTemplateName: PWideChar;
    pvReserved: Pointer;
    dwReserved: DWORD;
    FlagsEx: DWORD;
  end;
  {$EXTERNALSYM tagOFN}
  tagOFN = tagOFNA;
  TOpenFilenameA = tagOFNA;
  TOpenFilenameW = tagOFNW;
  TOpenFilename = TOpenFilenameA;
  {$EXTERNALSYM OPENFILENAMEA}
  OPENFILENAMEA = tagOFNA;
  {$EXTERNALSYM OPENFILENAMEW}
  OPENFILENAMEW = tagOFNW;
  {$EXTERNALSYM OPENFILENAME}
  OPENFILENAME = OPENFILENAMEA;
So ist sie in D6 deklariert.

Christian Seehase 18. Okt 2003 14:51

Re: DiskImage
 
Moin Luckie,

guckst Du zu dem Thema mal hier:

Der neue FileSplitter ist da

speziell die ersten beiden Seiten.

Luckie 18. Okt 2003 15:03

Re: DiskImage
 
Ich verliere langsam die Übersicht. Wie muss ich es denn jetzt machen, damit es funktioniert? So, wie im FileSplitter?`

Aber DiskImage bleibt jetzt so, wie es ist. Das ändere ich nicht noch mal.

Christian Seehase 18. Okt 2003 15:48

Re: DiskImage
 
Moin Luckie,

zusammengefasst:
Damit die neuen Dialoge korrekt angezeigt werden, muss bei Windows Versionen vor Windows 2000 (auch bei NT 4 geht's nicht mit der neueren OPENFILENAME Struktur), der Member lStructSize auf OPENFILENAME_SIZE_VERSION_400 (=40hex) gesetzt werden.

Luckie 18. Okt 2003 16:13

Re: DiskImage
 
Gut. Ich habe gerade mal beim Filesplitter gekuckt, da hatte ich mir eien Include Datei gem,acht, die das alles schon berücksichtig, wie es aussieht.

MathiasSimmack 18. Okt 2003 17:10

Re: DiskImage
 
Zitat:

Zitat von Christian Seehase
Damit die neuen Dialoge korrekt angezeigt werden, [...]

Nicht die "neuen", Christian. Generell ist IMHO das Zauberwort. Die Probleme werden vermutlich daher kommen, dass Windows 9x und NT4 mit diesem erweiterten Record nichts anfangen können ... und wollen. Da meines Wissens nach die zusätzlichen Variablen ohnehin nur benutzt werden, um die "Places bar" (diese Leiste links am Dialog) abzuschalten, kann man auch darauf verzichten.
Ganz korrekt wäre natürlich, wenn man die Größe versionsabhängig lädt. Da sich aber bspw. XP auch nicht beschwert, wenn ich ein unter 98 (und mit altem Record) kompiliertes Programm starte, ist die alte Recordgröße wohl vorzuziehen.

Und daher muss ich mich gleich selbst korrigieren
Zitat:

Zitat von MathiasSimmack
Letzten Endes aber egal. Wenn es unter ME läuft, aber unter 9x definitiv nicht, dann bau am besten eine Sperre ein, damit man es unter 9x auch nicht starten kann; sprich: Versionskontrolle.

Ich habe NT4 vergessen. Technisch wird das Erstellen und Schreiben von Floppy-Images wohl klappen. Nur die Dialoge dürften hier das gleiche Problem haben, da die "Places bar" erst ab ME und 2000 vorhanden sein sollte. :)

Luckie 19. Okt 2003 04:15

Re: DiskImage
 
So, etwas Kosmetik betrieben, die Fortschrittsanzeige läuft jetzt beim Schreiben nur noch einmal durch.

Luckie 8. Jan 2004 07:52

Re: DiskImage
 
Falls es von Interesse ist, ich habe gerade festgestellt, dass meine DiskettenImages mit Rawrite kompatibel sind. ;)

Luckie 15. Mär 2004 13:29

Re: DiskImage
 
So, ich habe noch mals festgestellt, dass es Rawwrite kompatible ist. (Wusste gar nicht, dass ich das schon mal festgestellt hatte. :? )

Aber ich habe jetzt Version 1.1, mit hoffentlich funktionierenden Datei-Öffnen und Datei-Speichern Dialogen.

hummer 15. Mär 2004 14:19

Re: DiskImage
 
Hm irgendwie geht der Download bei mir nicht. Kommt immer en Fehler. :gruebel:

Michael Leyhe 15. Mär 2004 16:26

Re: DiskImage
 
Bei mir geht der Link zum Download auch nicht aber musste mal unter www.luckie-online.de schauen da findest du alle programme von ihm.


Alle Zeitangaben in WEZ +1. Es ist jetzt 15:19 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz