Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.071 Beiträge
 
Delphi 12 Athens
 
#43

Re: kleiner ProgrammCheck (Festplatten auslesen

  Alt 2. Aug 2006, 13:40
So, wenn jetzt keiner mehr ein "rießengroßes" Problem entdeckt, dann werd' ich langsam mal in die nächste Phase übergehen ... mir graut's schon lang davor



Die Partitionen haben jetzt auch mal den ersten Text bekommen,

die meisten Funktionen in dem "ersten" Fenster/Schritt funktionieren nun endlich,
> DeleteVolumeMountPoint funktioniert nicht

GetVolumePathNamesForVolume wurde bis auf Windows 2000 Professional runtergeschraubt.
(weiter runter lohnt es sich nicht, da viele andere Funktionen auch erst ab da laufen).
hab's auch heute nacht nochmal vollkommen neu aufgesetzt ... hatte da 'nen blöden Denkfehler drin.

die aktuelle "Version" v02.08.06 05:35 gibts da http://www.delphipraxis.net/download.php?id=20621 (erster Beitrag)


Das mal aus der Hauptunit
Code:
// S.M.A.R.T (DFP_GET_VERSION, DFP_RECEIVE_DRIVE_DATA)
//   Muetze1
//
// WMI (Windows Management Instrumentation)
//   Angus Robertson, Magenta Systems Ltd, England
//   [email]delphi@magsys.co.uk[/email], [url]http://www.magsys.co.uk/delphi/[/url]

// Extentions:
//   .drd  Data Restore - Drive Scan
//   .drp  Data Restore - Physical Drive Image
//   .drl  Data Restore - Logical Drive Image
//   .drb  Data Restore - Boot Sector/File Image
//   .drs  Data Restore - Scan ...
//   .drr  Data Restore - Scan Result

// Compatibility:
//   DataRescue_AdminCheck:
//     NetUserEnum                 netapi32.dll  Vista, XP, 2000 Pro, NT WS
//     NetApiBufferFree            netapi32.dll  Vista, XP, 2000 Pro, NT WS
//     CreateProcessWithLogonW     advapi32.dll  Vista, XP, 2000 Pro
//
//   DataRescue__WinAPI:
//     FindFirstVolumeMountPointW         kernel32.dll  Vista, XP, 2000 Pro
//     FindNextVolumeMountPointW          kernel32.dll  Vista, XP, 2000 Pro
//     FindVolumeMountPointClose          kernel32.dll  Vista, XP, 2000 Pro
//     FindFirstVolumeW                   kernel32.dll  Vista, XP, 2000 Pro
//     FindNextVolumeW                    kernel32.dll  Vista, XP, 2000 Pro
//     FindVolumeClose                    kernel32.dll  Vista, XP, 2000 Pro
//     GetVolumeNameForVolumeMountPointW  kernel32.dll  Vista, XP, 2000 Pro
//     GetVolumePathNamesForVolumeNameW   kernel32.dll  Vista, XP
//     _GetVolumePathNamesForVolumeNameW  kernel32.dll  Vista, XP, 2000 Pro
//     SetVolumeMountPointW               kernel32.dll  Vista, XP, 2000 Pro
//     DeleteVolumeMountPointW            kernel32.dll  Vista, XP, 2000 Pro
...
//
//   S.M.A.R.T                            Vista, XP, 2000
//
//   WMI:
//     Win32_DiskDrive     \root\cimv2    Vista, XP, 2000 Pro, NT WS 4.0 SP4
//     Win32_DiskPartition \root\cimv2    Vista, XP, 2000 Pro, NT WS 4.0 SP4
//     Win32_CDROMDrive    \root\cimv2    Vista, XP, 2000 Pro, NT WS 4.0 SP4
//     Win32_TapeDrive     \root\cimv2    Vista, XP, 2000 Pro, NT WS 4.0 SP4
//     Win32_LogicalDisk   \root\cimv2    Vista, XP, 2000 Pro, NT WS 4.0 SP4
sind so mitunter (noch) die einzigen Kommentare im gesamten Programm (9 Units, 147 KB, 2370 Zeilen)

[edit]
Inhalt der/des CodeTags ä bissl an die Gegebenheiten angepaßt.




[add]
hab mir ja ein paar neue Dateitypen "ausgedacht".
.drd * Data Restore - Drive Scan
.drp * Data Restore - Physical Drive Image
.drl * Data Restore - Logical Drive Image
.drb * Data Restore - Boot Sector/File Image
.drs * Data Restore - Scan ...
.drr * Data Restore - Scan Result

ich hoffe mal, dat die noch von keinem anderem "großen" Programm belegt sind?

und hat vielleicht einer 'ne Idee ... .drs wird ein Zwischenstand beim Festplattenscan sein ... dieser Vorgang kann/wird ja ä bissl lange dauern, also werde ich da 'ne möglichkeit vorsehen auf Pause schalten zu können und auch speichern uns später vortsetzen zu können ... nur is mir dafür noch kein Name eingefallen

.drd (Drive Scan): speichern von gefundenen Laufwerken/Partitionen... (im aktuellen Fenster ... unter Private ist ja der Platz für diese Dinge)
.drp (Physical Drive Image) und .drl (Logical Drive Image): Images der Laufwerke (z.B. als Backup, oder um dann im Image die Suche fortzusetzen)
.drb (Boot Sector/File Image): Image des/der BootSektoren und/oder wichtiger SystemDateien (dieses Kleinen, elche man z.B. auf C:\ findet)
.drs (Scan ...): siehe oben
.drr (Scan Result): Suchergebnis ... halt List der gefundenen Dateien, um später das Retten/Abspeichern fortzusetzen
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat