Autor Beitrag
mister_x
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 85

Win 98, WIN 2000, WIN XP PRO
Delphi 2006
BeitragVerfasst: Do 25.09.08 17:33 
sers leute

ich möchte gerne wie bei www.delphiforum.de/v...73&highlight=hxd
direkt auf ein Laufwerk zugreifen(read/write) also auch wenn kein dateiensystem vorhanden ist
kann mir jemand sagen wie das geht oder mir nützliche links schicken.....

würd mich auf eure antworten freun

gruß
MISTER_X

_________________
Der Computer ist das genialste Produkt der menschlichen Faulheit
Grenzgaenger
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Do 25.09.08 17:38 
früher ging das, indem du direct das bios via assembler programmiert hast. aber da musst erst mal rausfinden welche hardware du genau hast...

persönlicher tipp, lass die finger davon. ist viel arbeit und du zerschiesst dir die platte allzugern ...
mister_x Threadstarter
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 85

Win 98, WIN 2000, WIN XP PRO
Delphi 2006
BeitragVerfasst: Do 25.09.08 18:04 
also ich will des mit ner SD-Card machn weil ich die als datenspeicher für ein selbstgebautes system nutzen will
un da will ich nen eigenes dateiensystem drauf machen.....

der editor zu dem ich oben den link gesetzt hab scheint gut auf ein laufwerk zugreifen zukönnen, ich müsst halt wissen wie man so was macht^^

_________________
Der Computer ist das genialste Produkt der menschlichen Faulheit
BenBE
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 8721
Erhaltene Danke: 191

Win95, Win98SE, Win2K, WinXP
D1S, D3S, D4S, D5E, D6E, D7E, D9PE, D10E, D12P, DXEP, L0.9\FPC2.0
BeitragVerfasst: Do 25.09.08 18:07 
Die Nutzung der Suchfunktion hätte Dir hier sicherlich geholfen, da dieses Thema (inklusive Units) schon mehrfach diskutiert wurde ...

_________________
Anyone who is capable of being elected president should on no account be allowed to do the job.
Ich code EdgeMonkey - In dubio pro Setting.
mister_x Threadstarter
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 85

Win 98, WIN 2000, WIN XP PRO
Delphi 2006
BeitragVerfasst: Do 25.09.08 18:19 
wo? ich hab schon gesucht
wahrscheinlich ma wieder die falschen schlagwörter^^
könntest du mir einen tipp geben??^^

_________________
Der Computer ist das genialste Produkt der menschlichen Faulheit
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Do 25.09.08 22:33 
Öffne das Laufwerk physisch mit Suche im MSDN CEATEFILE. Dann hast du einen direkten Schreizugriff. Das setzt allerdings Administratorenrechte vorraus. Die saubereste Lösung waäre aber ein eigener Dateisystemtreiber.
mister_x Threadstarter
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 85

Win 98, WIN 2000, WIN XP PRO
Delphi 2006
BeitragVerfasst: Fr 26.09.08 17:03 
so hab was gefunden
ging mit createfile
war auch nich so schwierig^^

_________________
Der Computer ist das genialste Produkt der menschlichen Faulheit
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Fr 26.09.08 22:28 
user profile iconmister_x hat folgendes geschrieben:
so hab was gefunden

Wieso gefunden? Ich habe dir doch die richtige Funktion genannt. :?
Grenzgaenger
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Fr 26.09.08 23:04 
user profile iconmister_x hat folgendes geschrieben:
ich möchte gerne .. direkt auf ein Laufwerk zugreifen(read/write) also auch wenn kein dateiensystem vorhanden ist


user profile iconmister_x hat folgendes geschrieben:
so hab was gefunden
ging mit createfile


und was hat das damit zu tun ... :nixweiss: :nixweiss:
mister_x Threadstarter
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 85

Win 98, WIN 2000, WIN XP PRO
Delphi 2006
BeitragVerfasst: Fr 26.09.08 23:44 
^^ meine antwort war vlt en bisschen kurz
mit diesem code kann man auf die einzelnen sectoren zugreife(read/write)


ausblenden volle Höhe Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
.....
  hDeviceHandle :=  CreateFile(Drive,GENERIC_ALL,FILE_SHARE_READ or FILE_SHARE_WRITE,nil,OPEN_EXISTING,0,0);
  Drive         :=  pChar('\\.\J:');
  BytesPerSector:=512;
....

function ReadSector(Sector:Integer):pChar;

begin

  if hdevicehandle<>INVALID_HANDLE_VALUE then

    begin

      result  :=  allocmem(BytesPerSector);

      FileSeek(hdevicehandle,Sector*BytesPerSector,0);

      if FileRead(hdevicehandle,result[0],BytesPerSector)<>BytesPerSector then

        raise exception.Create('Read');

    end;

end;

procedure TMainForm.WriteSector(Buffer: PAnsiChar; Sector: Integer);

begin

  if hdevicehandle<>INVALID_HANDLE_VALUE then

    begin

      FileSeek(hdevicehandle,Sector*BytesPerSector,0);

      if FileWrite(hdevicehandle,Buffer[0],BytesPerSector)<>BytesPerSector then

        raise exception.Create('Write');

    end;

end;


funktioniert bei mir ohne probleme
noch ma danke für die antworten

Gruß
MISTER_X

ps ich hoffe Grenzgaenger sieht jz was das damit zu tun hat^^

_________________
Der Computer ist das genialste Produkt der menschlichen Faulheit