Hallo, ik was bezig met mijn descent 3 pilot colorizer proggie en nu heb ik een vraag. Ik wil dus bytes gaan toevoegen aan het bestand, alleen niet aan het begin.
VB 2B 00 00 00 3F 4F 5F 6F => 2B 00 00 00 >01 FF FF FF< 3F 4F 5F 6F
Welk commando zou ik hiervoor moeten gebruiken?
Dan nog iets, als ik de onderstaande code (hetgeen wat ik nu heb) dan overschrijft hij de bytes op de plek waar hij moet inserten. Dit is voor nu oke maar hij insert de verkeerde waardes. Namelijk niet de 01 FF 01 01 die ik er wil hebben maar iets anders. Volgens mij ligt het aan het feit dat ik hier gebruik gemaakt heb van Char, hoe zou ik het kunne verhelpen?
(Data = het in te voegen deel)
procedure TForm1.Button3Click(Sender: TObject);
var
handle:thandle;
data:Pchar;
dwwrite:longword;
towrite:longword;
begin
if colordialog1.Execute then
begin
data:=#$01#$FF#$01#$01;
end;
towrite:=4;
handle := CreateFile(Pchar(Label1.caption),GENERIC_WRITE,FILE_SHARE_WRITE,nil,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL + FILE_FLAG_RANDOM_ACCESS, 0);
SetFilePointer(handle,3,nil,FILE_BEGIN);
WriteFile(handle,data,towrite,dwwrite,nil);
CloseHandle(handle);
messagebox(0,Pchar('Ok'),Pchar('DONE!!'),0);
end;
end.
VB 2B 00 00 00 3F 4F 5F 6F => 2B 00 00 00 >01 FF FF FF< 3F 4F 5F 6F
Welk commando zou ik hiervoor moeten gebruiken?
Dan nog iets, als ik de onderstaande code (hetgeen wat ik nu heb) dan overschrijft hij de bytes op de plek waar hij moet inserten. Dit is voor nu oke maar hij insert de verkeerde waardes. Namelijk niet de 01 FF 01 01 die ik er wil hebben maar iets anders. Volgens mij ligt het aan het feit dat ik hier gebruik gemaakt heb van Char, hoe zou ik het kunne verhelpen?
(Data = het in te voegen deel)
procedure TForm1.Button3Click(Sender: TObject);
var
handle:thandle;
data:Pchar;
dwwrite:longword;
towrite:longword;
begin
if colordialog1.Execute then
begin
data:=#$01#$FF#$01#$01;
end;
towrite:=4;
handle := CreateFile(Pchar(Label1.caption),GENERIC_WRITE,FILE_SHARE_WRITE,nil,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL + FILE_FLAG_RANDOM_ACCESS, 0);
SetFilePointer(handle,3,nil,FILE_BEGIN);
WriteFile(handle,data,towrite,dwwrite,nil);
CloseHandle(handle);
messagebox(0,Pchar('Ok'),Pchar('DONE!!'),0);
end;
end.