🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.lang.delphi
Article #334511

Re: Skiny Devexowe i ich paintery

#334511
From: Arivald
Date: Mon, 02 Jan 2012 10:08
39 lines
2085 bytes
W dniu 2012-01-02 10:34, Frontman pisze:
> W dniu 2011-12-29 09:01, R.e.m.e.K pisze:
>
>> Czyli bpla? Bo przez dlla to by chyba ciezko bylo to zrobic jesli w ogole
>> mozliwe.
>
> Da się zrobić DLL. Ja mam tak to rozwiązane. Trzeba zrobić DLL jako
> zasób w podobny sposób:
>
> {$R dxSkinBlack.res}
>
> Ładowanie z DLL w programie:
>
>
> aResStream := TResourceStream.Create(GetSkinDLLHandle,
> aResName, PChar(sdxResourceType));
> try
> Result := dxSkinsUserSkinLoadFromStream(aResStream, aSkinName);
> finally
> aResStream.Free;
> end;
>
> To tak w skrócie.
>

BTW, jak się ładuje z DLL tylko zasoby, to dobrze jest otwierać DLL 
tylko do czytania zasobów:

SkinDLLHandle := LoadLibraryEx(DllName, 0, LOAD_LIBRARY_AS_DATAFILE);

Wtedy nie jest wykonywany żaden kod z DLL (nie wywróci się, nie wyśle 
żadnego wyjątku), działa to szybciej. System nie musi mapować sekcji, 
nie musi relokować kodu, itd.

Oczywiście taki HANDLE biblioteki to nie jest pełnowartościowy 
HINSTANCE, nadaje się on tylko do ładowania zasobów.

-- 
Arivald
Technical Details
Message-ID: <jdrvmf$m8h$1@news.dialog.net.pl>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!news.dialog.net.pl!not-for-mail
References: <1o04evmwpcrsj$.dlg@hell.heaven> <4efb32bc$1@news.home.net.pl> <jdfjcl$m0r$1@inews.gazeta.pl> <py1hwat1scoa.dlg@hell.heaven> <jdrtn8$2kr$1@mx1.internetia.pl>

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!news.dialog.net.pl!not-for-mail
From: Arivald <arivald_@AT_interia_DOT_.pl>
Newsgroups: pl.comp.lang.delphi
Subject: Re: Skiny Devexowe i ich paintery
Date: Mon, 02 Jan 2012 11:08:14 +0100
Organization: Dialog Net
Lines: 39
Message-ID: <jdrvmf$m8h$1@news.dialog.net.pl>
References: <1o04evmwpcrsj$.dlg@hell.heaven> <4efb32bc$1@news.home.net.pl> <jdfjcl$m0r$1@inews.gazeta.pl> <py1hwat1scoa.dlg@hell.heaven> <jdrtn8$2kr$1@mx1.internetia.pl>
NNTP-Posting-Host: poczta.pgs-soft.com
Mime-Version: 1.0
X-Trace: news.dialog.net.pl 1325498895 22801 62.87.249.67 (2 Jan 2012 10:08:15 GMT)
X-Complaints-To: abuse@dialog.net.pl
NNTP-Posting-Date: Mon, 2 Jan 2012 10:08:15 +0000 (UTC)
User-Agent: Mozilla/5.0 (Windows NT 5.1; rv:9.0) Gecko/20111222 Thunderbird/9.0.1
In-Reply-To: <jdrtn8$2kr$1@mx1.internetia.pl>
X-Stationery: 0.7.7
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit