janosik-rdzeń

Codin C. Cool coding at poczta.onet.pl
Wed Sep 10 22:26:57 CEST 2003


W liście z śro, 10-09-2003, godz. 21:59, Marcin Debicki pisze: 
> > Napisałeś: "to są same prototypy funkcji bez treści", co się mija z prawdą.
> > 
> > Mając specyfikację danego dll'a nie musisz znac jego kodu źródłowego. 
> > Używasz go po prostu jako czarnej skrzynki.
> 
> Pliki dll zawiraja "tresc" i nazwy funkcji, nie zawieraja jednak ich 
> deklaracji... 

nie używałbym określenia 'treść' tylko 'kod'

do skorzystania z dll potrzebne są albo
- albo prototypy funkcji i formaty danych które
udostępnia/przyjmuje/zwraca
- albo długie i pracochłonne przeanalizowanie 'co autor miał na myśli'
kiedy przyjmuje trzy wskaźniki i zwraca integer w funkcji
'posortuj_coś_gdzieś'

narzędzia wchodzące w skład pakietu wine umożliwiają analizę
windowsowych dlli. oto przykład:
[platnik at localhost Platnik]$ winedump spec Wydruki.dll    
Contents of "Wydruki.dll": 2177056 bytes

29 named symbols in DLL, 29 total, 29 unique (ordinal base = 1)
Done dumping Wydruki.dll
Export   1 - 'wd_Drukowanie' ... [Ignoring]
Export   2 - 'wd_Podglad_Drukowanie' ... [Ignoring]
Export   3 - 'wd_Podglad_Wydruk_Przelewu' ... [Ignoring]
Export   4 - 'wd_Druk_Przelewu' ... [Ignoring]
Export   5 - '@@Interfaceslowniki at Initialize' ... [Ignoring]
Export   6 - '@@Interfaceslowniki at Finalize' ... [Ignoring]
Export   7 - '@@Ureg at Initialize' ... [Ignoring]
Export   8 - '@@Ureg at Finalize' ... [Ignoring]
Export   9 - '_Baza2St' ... [Ignoring]
...
Export  27 - '@@Ucrypt at Initialize' ... [Ignoring]
Export  28 - '@@Ucrypt at Finalize' ... [Ignoring]
Export  29 - '___CPPdebugHook' ... [Ignoring]

z tym że to my musimy się zastanowić czym nakarmić te funkcje, oraz co
one nam zwrócą

> Poza tym wchodzi tu jeszcze prawo wlasnoci kodu, a moglby byc to 
> twardszy orzech do zgryzienia niz sie wszytskim wydaje.

jeśli dostarczymy 'engine', a w instrukcji użycia napiszemy:
'następujące pliki *dll przekopiuj sobie z programu Płatnik II'
to nikt nie będzie się mógł do niczego przyczepić, bo przecież sam
'engine' będzie naszym oryginalnym tworem.

-- 
Pozdrawiam
Paweł Hikiert (nsilent22)




More information about the janosik-devel mailing list