Law Napisano Grudzień 4, 2018 Autor Zgłoś Udostępnij Napisano Grudzień 4, 2018 Jak wyciągnąć z zasobów plik i zapisać na dysk? Cytuj Link do komentarza Udostępnij na innych stronach More sharing options...
Omega Napisano Grudzień 4, 2018 Zgłoś Udostępnij Napisano Grudzień 4, 2018 Programowo, czy za pomoca jakiegos programu ci wystarczy? Cytuj Link do komentarza Udostępnij na innych stronach More sharing options...
Law Napisano Grudzień 4, 2018 Autor Zgłoś Udostępnij Napisano Grudzień 4, 2018 Programowo offcorz. Cytuj Link do komentarza Udostępnij na innych stronach More sharing options...
Omega Napisano Grudzień 4, 2018 Zgłoś Udostępnij Napisano Grudzień 4, 2018 https://devstart.pl/temat/4780-zasoby/ Cytuj Link do komentarza Udostępnij na innych stronach More sharing options...
Law Napisano Grudzień 5, 2018 Autor Zgłoś Udostępnij Napisano Grudzień 5, 2018 Bu, coś mi nie idzie. Możesz pokazać jakiś przykład, zapisać do pliku plik TTF o nazwie CLASSIC. Cytuj Link do komentarza Udostępnij na innych stronach More sharing options...
Omega Napisano Grudzień 5, 2018 Zgłoś Udostępnij Napisano Grudzień 5, 2018 Zapisac do pliku plik? Nie zabardzo moze rozumiem o co ci chodzi. Czy chcesz zapisac cala strukture jakiegos pliku do zasobow czy na odwrot z zasobow wyciagnac dane do pliku?...Zapisac do pliku plik TTF o nazwie CLASSIC???? Czy TTF moze jest nazwa zasobu. W zasobach nie ma plikow tylko sa dane, ktore moga byc pobrane i dopiero z nich moze byc utworzony plik. P.S. Zmien kodowanie polskich znakow na swojej stronie bo ich nie widac - krzacza sie. Cytuj Link do komentarza Udostępnij na innych stronach More sharing options...
Law Napisano Grudzień 5, 2018 Autor Zgłoś Udostępnij Napisano Grudzień 5, 2018 Chodzi o to że zapisałem cziconkę do resów: kawałek pliku *.rc CLASSIC TTF "arcade.classic.ttf" I teraz chcę wyciągnąć ten plik z resów i zapisać w katalogu 'C:\Windows\Fonts'. Cytuj Link do komentarza Udostępnij na innych stronach More sharing options...
Omega Napisano Grudzień 5, 2018 Zgłoś Udostępnij Napisano Grudzień 5, 2018 No stary, jak to nie wiesz? Linkiem praktycznie zalatwilem wszystko. A wiec jesli chcesz wyciagnac zasob z programu, ktory wlasnie ma to zrobic to juz nie musisz korzystac z funkcji LoadLibrary, lub LoadLibraryEx (ta druga najczesciej jest stosowana do wyciagania zasobow z plikow 16 bitowych), tylko wystarczy zrobic tak (kod w delphi): hres:=FindResource(nil,'CLASSIC','TTF'); //hres - uchwyt zasobu. Jesli blad to zwroci 0; hMem := LoadResource(nil, hResource); //bedzie blad to jw. W windows od 95 nie musisz stosowac pozniej FreeResource, bo system robi to automatycznie lpResource := LockResource(hMem); //pobierasz wskaznik do danych size:=SizeofResource(nil,hres); //pobierasz rozmiar lpresource to wskaznik a size to rozmiar bloku zasobu. Chyba wiecej nic ci do szczescia nie potrzeba. Wszystko pisalem praktycznie z pamieci i byc moze cos zle wklepalem (ale nie wydaje mi sie) to wal. Cytuj Link do komentarza Udostępnij na innych stronach More sharing options...
Law Napisano Grudzień 6, 2018 Autor Zgłoś Udostępnij Napisano Grudzień 6, 2018 Res:=FindResource(hInstance, 'CLASSIC', 'TTF'); ACFont:=LoadResource(hInstance, Res); ACData:=LockResource(ACFont); CreateFile('cade.classic.ttf', 0, 0, nil, CREATE_NEW, FILE_ATTRIBUTE_NORMAL, 0); WriteFile(Plik, ACData^, SizeofResource(hInstance, ACFont), HM, nil); CloseHandle(Plik); Coś spieprzyłem? Cytuj Link do komentarza Udostępnij na innych stronach More sharing options...
Omega Napisano Grudzień 6, 2018 Zgłoś Udostępnij Napisano Grudzień 6, 2018 var res,ACFont,plik:THandle; ACData:pointer; HM:cardinal; begin Res:=FindResource(hinstance, 'CLASSIC', 'TTF'); ACFont:=LoadResource(hinstance, Res); ACData:=LockResource(ACFont); HM:=SizeofResource(hinstance, res); Plik:=CreateFile('classic.ttf', GENERIC_WRITE, 0, nil, CREATE_ALWAYS,FILE_ATTRIBUTE_NORMAL, 0); WriteFile(Plik, ACData^, HM, HM, nil); CloseHandle(Plik); end. Sam skonfrontuj swoje bledy Cytuj Link do komentarza Udostępnij na innych stronach More sharing options...
Law Napisano Grudzień 6, 2018 Autor Zgłoś Udostępnij Napisano Grudzień 6, 2018 gdy zastępuje C:\Windows wartością WinDir (C:\WINDOWS, sprawdziłem) uzyskaną prze GetWindowsDirectory, przestaje działać. Cytuj Link do komentarza Udostępnij na innych stronach More sharing options...
Omega Napisano Grudzień 6, 2018 Zgłoś Udostępnij Napisano Grudzień 6, 2018 Jezeli masz zamiar dostac sie do katalogu fontow, to nie lepiej skorzystac z funkcji SHGetSpecialFolderLocation ze stala CSIDL_FONTS? Cytuj Link do komentarza Udostępnij na innych stronach More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.