AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Delphi Defragmentier- oder datenrecovery programm realisieren?
Thema durchsuchen
Ansicht
Themen-Optionen

Defragmentier- oder datenrecovery programm realisieren?

Ein Thema von starY · begonnen am 5. Jun 2005 · letzter Beitrag vom 8. Jun 2005
Antwort Antwort
Seite 3 von 4     123 4      
Olli
(Gast)

n/a Beiträge
 
#21

Re: Defragmentier- oder datenrecovery programm realisieren?

  Alt 8. Jun 2005, 10:08
Zitat von starY:
Delphi-Quellcode:
DeviceIoControl(DeviceHandle, IOCTL_DISK_GET_DRIVE_GEOMETRY, nil, 0,
    @DiskGeometry, sizeof(DiskGeometry), Dummy, nil);
Dummy muß vom Typ DWORD sein, und wenn in deiner DeviceIoControl()-Deklaration statt "var Returned: DWORD" ein "Returned: PDWORD" steht, dann mußt du "@Dummy" notieren.
BTW: Ab XP gibt es auch IOCTL_DISK_GET_DRIVE_GEOMETRY_EX.

Verrätst du mir bitte noch, wie du die Wiederherstellung der Daten löst? Aktuell waren wir ja da stehen geblieben, daß man mit Administratorrechten sowohl Defragmentierung als auch sektorweises Auslesen durchführen kann. Mehr machst du ja mit maels Beispielcode (noch) nicht (als Auslesen - nicht daß es wieder zu Mißverständnissen kommt).

Nachtrag: Ich bezweifle, daß die IOCTLs irgendwo deklariert sind im Standard-Delphi. Entweder behilfst du dir, indem du sie selber übersetzt, oder du schaust mal in DelphiWorks von Codehunter - er hat IMO Code zum Thema drin. Ansonsten wären die JEDI JCL und ApiLib (JwaWinIoctl.pas - dort ist der gesuchte Code definitiv drin, aber SF ist grad down) noch eine Anlaufstelle.


PS: Habe mal CVS-Version 1.6 von der JwaWinIoctl.pas anghangen, damit du nicht auf SF.net angewiesen bist, wenn es doch grad down ist
Angehängte Dateien
Dateityp: 7z jwawinioctl_196.7z (29,2 KB, 32x aufgerufen)
  Mit Zitat antworten Zitat
starY

Registriert seit: 8. Mai 2004
18 Beiträge
 
#22

Re: Defragmentier- oder datenrecovery programm realisieren?

  Alt 8. Jun 2005, 15:12
NTFS speichert ja die gelöschten Dateien (bzw. den Zeiger auf den Datenbereich) in einem Log file record. Ich weiß zwar gerade nicht wieviele Dateien dort gespeichert bleiben aber ich wollte mich erstmal darauf beschränken. Danach mich dann wohl mit MBR bzw Partitionstable recovery beschäftigen und dann vielleicht Datenstrukturen analysieren, wobei ich davon noch keine Ahnung habe.

Die IOCTLs sind wirklich nicht in Standard Delphi deklariert. Nur ist SF.net leider wirklich down und die pas Datei, die du angehängt hast, braucht leider noch ein paar mehr pas Dateien, welcher aber wohl wieder andere pas Dateien brauchen.

PS: 7z-Format ist vielleicht ein wenig exotisch aber darüber lässt sich ja bekannterweise streiten ;D
Florian
  Mit Zitat antworten Zitat
Olli
(Gast)

n/a Beiträge
 
#23

Re: Defragmentier- oder datenrecovery programm realisieren?

  Alt 8. Jun 2005, 15:56
Die anderen PAS-Dateien solltest du nicht brauchen. Ansonsten mußt du mir nochmal sagen welche du brauchst. Habe eine lokale Kopie. Dauert aber dann eine Weile, weil ich gleich weg muß.
  Mit Zitat antworten Zitat
generic

Registriert seit: 24. Mär 2004
Ort: bei Hannover
2.416 Beiträge
 
Delphi XE5 Professional
 
#24

Re: Defragmentier- oder datenrecovery programm realisieren?

  Alt 8. Jun 2005, 16:14
Zitat von starY:
PS: 7z-Format ist vielleicht ein wenig exotisch aber darüber lässt sich ja bekannterweise streiten ;D
nix, ist cool, ist free und hat eigendlich jeder ;-)

ich weiss nicht welche version von der jwa ich hier ab.
aber es ist immer noch besser als keine, oder?
Angehängte Dateien
Dateityp: 7z win32api_805.7z (1,20 MB, 14x aufgerufen)
  Mit Zitat antworten Zitat
generic

Registriert seit: 24. Mär 2004
Ort: bei Hannover
2.416 Beiträge
 
Delphi XE5 Professional
 
#25

Re: Defragmentier- oder datenrecovery programm realisieren?

  Alt 8. Jun 2005, 16:16
ups hier gibts was neueres:
http://members.chello.nl/m.vanbrakel2/
  Mit Zitat antworten Zitat
Olli
(Gast)

n/a Beiträge
 
#26

Re: Defragmentier- oder datenrecovery programm realisieren?

  Alt 8. Jun 2005, 18:00
Zitat von generic:
ups hier gibts was neueres:
http://members.chello.nl/m.vanbrakel2/
Ist definitiv nicht neuer (May, 2004?!). Glaub mir einfach.

Marcel hat seine Header ja für das JEDI AiLib-Projekt spendiert. Ich persönlich arbeite am meisten an der JwaNative.pas (ist inzwischen >70% größer als Marcels Ursprungsversion). Also alles im ApiLib-Projekt ist neuer.
  Mit Zitat antworten Zitat
Daniel G
(Gast)

n/a Beiträge
 
#27

Re: Defragmentier- oder datenrecovery programm realisieren?

  Alt 8. Jun 2005, 18:38
@StarY:

Ich weiß ja net, was du für eine Internetverbindung hast. Aber, wenn du DSL hast, würde ich mir an deiner Stelle das PSDK von der Microsoft - HP herunterladen. Da hast du dann auch gleich Headerdateien dabei (allerdings in C). Aber die Werte für die IOCTL - Konstanten stehen da drinne, also eine unschätzbare Hilfe
  Mit Zitat antworten Zitat
Olli
(Gast)

n/a Beiträge
 
#28

Re: Defragmentier- oder datenrecovery programm realisieren?

  Alt 8. Jun 2005, 18:42
Notfalls kann ich's dir auch auf CD zuschicken, wenn du kein DSL hast. Einfach PN an mich

Übrigens sind die meisten IOCTLs keine festen Werte, sondern vielmehr Makros. Die können sich leider auch irgendwann mal ändern *schnief* ... das wird ein Wartungsalptraum.
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.117 Beiträge
 
Delphi 11 Alexandria
 
#29

Re: Defragmentier- oder datenrecovery programm realisieren?

  Alt 8. Jun 2005, 20:42
Moin Olli,

Zitat von Olli:
Die können sich leider auch irgendwann mal ändern *schnief*
gehst Du wirklich davon aus? (kann ich mir eigentlich nicht vorstellen )
Dann würden "ältere" Programme, schlagartig, nicht mehr funktionieren.

Zitat von Olli:
Übrigens sind die meisten IOCTLs keine festen Werte, sondern vielmehr Makros.
So wie die aufgebaut sind, macht das auch Sinn, denn dann kann man die Werte leichter um neue ergänzen.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
starY

Registriert seit: 8. Mai 2004
18 Beiträge
 
#30

Re: Defragmentier- oder datenrecovery programm realisieren?

  Alt 8. Jun 2005, 21:21
Ja DSL hab ich aber es geht schon mit der JwaWinIoctl.pas.

Nochmals danke für die Hilfe.

Bin mal weiter testen und probieren ;D

MfG

starY
Florian
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 3 von 4     123 4      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:43 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz