Ĺadny brzuch
Witam :) - Poprzedni temat jakis moderator skasowal, z niewiadomych przyczyn wiec pisze drugi raz :) a jakby co to powiedziec mi jaki blad robie piszac ten temat... :mad:
Otoz mam problem z procedura SaveToExe....
Mam dwie aplikacje, na pierwszej 3 Edity i button, na drugiej rowniez.
Pod button podpinam taki kodzik:
SaveToExe('aplikacja.exe', Edit1.Text);
W aplikacja.exe, pod button daje:
Edit1.Text:=LoadFromExe('aplikacja.exe');
Dziala ;) Tylko jak zrobic zeby, jak uzytkownik wpisze do 3editow, to zapisywalo by sie oddzielnie i wczytywalo oddzielnie przez jeden przycisk... Chyba rozumiecie, co mam na mysli ??
Pozdrawiam ;)
Do Moda:
Sorka, ze cos zle zrobilem, ale nie wiem co :P Nie kasuj tematu, bo to mi jest bardzo potrzebne, pozdrawiam.
wyobraz sobie ze nie znamy kodu SaveToExe ani jej dzialania :> bylbys laskaw? :>
Chodzi Wam o procedure ??
Prosze bardzo:
SaveToExe:
procedure SaveToExe(FName, Str: string); var F : file of Byte; i : Integer; begin AssignFile(F, 'aplikacja.exe'); Reset(F); try Seek(F, FileSize(F) - SizeOf(i)); BlockRead(F, i, SizeOf(i)); if (i < SizeOf(i)) or (i > FileSize(f)) then i := 0; Seek(F, FileSize(F) - i); Truncate(F); BlockWrite(F, Str[1], Length(Str)); i := Length(Str) + SizeOf(i); BlockWrite(F, i, SizeOf(i)); finally CloseFile(F); end; end;
Tu, funkcja LoadFromExe:
function LoadFromExe(FName: string): string; var F : file of Byte; i : Integer; begin Result := ''; AssignFile(F, FName); FileMode := fmOpenRead; Reset(F); try Seek(F, FileSize(F) - SizeOf(i)); BlockRead(F, i, SizeOf(i)); if (i < SizeOf(i)) or (i > FileSize(f)) then Exit; Seek(F, FileSize(F) - i); SetLength(Result, i - SizeOf(i)); BlockRead(F, Result[1], Length(Result)); finally CloseFile(F); end; end;
Pomyśl jak!
Bierzesz się za konstrukcje "file of" a nie wiesz nawet jak np połączyć trzy łańcuchy w jeden i potem je rozdzielić <_<
Jestem pewnien, że nie wiesz jak działają te 2 procedury które zerżnałęś stąd
Dodaj zawartość Editów doc siebie odzielając je np. średnikiem a potem na podstawie pozycji śrdniów je porozdzielaj.
Użytkownik p1101 edytował ten post 23 grudzień 2005, 13:55
Tzn. Jak to zrobic ?? :)
Poczytaj o funkcjach: Pos(); Copy(); Delete(); ot cała filozofia.
Sądze iż problem jest rozwiązany. I zanim zadasz następne pytanie na tym forum - sam poczytaj kod swojego programu i zastanów sie ile z jego całości napisaleś sam i ile rozumiesz.
zanotowane.pl doc.pisz.pl pdf.pisz.pl zsf.htw.pl
Otoz mam problem z procedura SaveToExe....
Mam dwie aplikacje, na pierwszej 3 Edity i button, na drugiej rowniez.
Pod button podpinam taki kodzik:
SaveToExe('aplikacja.exe', Edit1.Text);
W aplikacja.exe, pod button daje:
Edit1.Text:=LoadFromExe('aplikacja.exe');
Dziala ;) Tylko jak zrobic zeby, jak uzytkownik wpisze do 3editow, to zapisywalo by sie oddzielnie i wczytywalo oddzielnie przez jeden przycisk... Chyba rozumiecie, co mam na mysli ??
Pozdrawiam ;)
Do Moda:
Sorka, ze cos zle zrobilem, ale nie wiem co :P Nie kasuj tematu, bo to mi jest bardzo potrzebne, pozdrawiam.
wyobraz sobie ze nie znamy kodu SaveToExe ani jej dzialania :> bylbys laskaw? :>
Chodzi Wam o procedure ??
Prosze bardzo:
SaveToExe:
procedure SaveToExe(FName, Str: string); var F : file of Byte; i : Integer; begin AssignFile(F, 'aplikacja.exe'); Reset(F); try Seek(F, FileSize(F) - SizeOf(i)); BlockRead(F, i, SizeOf(i)); if (i < SizeOf(i)) or (i > FileSize(f)) then i := 0; Seek(F, FileSize(F) - i); Truncate(F); BlockWrite(F, Str[1], Length(Str)); i := Length(Str) + SizeOf(i); BlockWrite(F, i, SizeOf(i)); finally CloseFile(F); end; end;
Tu, funkcja LoadFromExe:
function LoadFromExe(FName: string): string; var F : file of Byte; i : Integer; begin Result := ''; AssignFile(F, FName); FileMode := fmOpenRead; Reset(F); try Seek(F, FileSize(F) - SizeOf(i)); BlockRead(F, i, SizeOf(i)); if (i < SizeOf(i)) or (i > FileSize(f)) then Exit; Seek(F, FileSize(F) - i); SetLength(Result, i - SizeOf(i)); BlockRead(F, Result[1], Length(Result)); finally CloseFile(F); end; end;
Pomyśl jak!
Bierzesz się za konstrukcje "file of" a nie wiesz nawet jak np połączyć trzy łańcuchy w jeden i potem je rozdzielić <_<
Jestem pewnien, że nie wiesz jak działają te 2 procedury które zerżnałęś stąd
Dodaj zawartość Editów doc siebie odzielając je np. średnikiem a potem na podstawie pozycji śrdniów je porozdzielaj.
Użytkownik p1101 edytował ten post 23 grudzień 2005, 13:55
Tzn. Jak to zrobic ?? :)
Poczytaj o funkcjach: Pos(); Copy(); Delete(); ot cała filozofia.
Sądze iż problem jest rozwiązany. I zanim zadasz następne pytanie na tym forum - sam poczytaj kod swojego programu i zastanów sie ile z jego całości napisaleś sam i ile rozumiesz.