Board.KolibriOS.org

Official KolibriOS board
It is currently Thu Sep 24, 2020 6:21 pm

All times are UTC+03:00




Post new topic  Reply to topic  [ 216 posts ]  Go to page Previous 111 12 13 14 15
Author Message
PostPosted: Fri Oct 10, 2008 11:16 am 
Offline
Kernel Developer

Joined: Wed Mar 08, 2006 6:25 pm
Posts: 3952
Не будет.
Надо указать точку входа DLL и текущую версию.

Code:
;void __stdcall start(dword state);
start:
        mov eax, 1
        ret     4

align 16
EXPORTS:
        dd szStart,            START
        dd szVersion,          0x00010001
        dd 0             ;terminator

szStart             db 'START',0
szVersion           db 'version',0


Можно и на С. Пример для mingw

Code:
typedef struct
{
  char *name;
  void *f;
}export_t;

extern export_t EXPORTS[] __asm__("EXPORTS");

char szStart[]     = "START";
char szVersion[]   = "version";

export_t EXPORTS[] =
         {
           { szStart,     start },
           { szVersion,   (void*)0x00010001 },

           {NULL,NULL},
         };

int __stdcall start(int state)
{
    return 1;
};
;


Top
   
PostPosted: Mon Oct 13, 2008 3:34 pm 
Offline
User avatar

Joined: Thu Oct 09, 2008 10:29 pm
Posts: 3
Serge
Да, про точку входа я забыл.
А как насчёт секций?


Top
   
PostPosted: Mon Oct 13, 2008 3:52 pm 
Offline
Site Founder
User avatar

Joined: Sun Aug 08, 2004 8:55 am
Posts: 690
Секция, насколько я помню, должна быть одна.

_________________
in code we trust


Top
   
PostPosted: Mon Oct 13, 2008 5:11 pm 
Offline
Kernel Developer

Joined: Wed Mar 08, 2006 6:25 pm
Posts: 3952
Не обязательно. Работают DLL даже с пустыми секциями.


Top
   
PostPosted: Tue Oct 14, 2008 12:12 pm 
Offline
User avatar

Joined: Thu Oct 09, 2008 10:29 pm
Posts: 3
Т.е. будет работать такой код, как я понял?


Top
   
PostPosted: Tue Oct 14, 2008 3:41 pm 
Offline
Kernel Developer

Joined: Wed Mar 08, 2006 6:25 pm
Posts: 3952
Должен работать если исправить ошибки. Проверить легко под mtdbg. Посмотри исходники уже существующих библиотек на svn для примера.


Top
   
Display posts from previous:  Sort by  
Post new topic  Reply to topic  [ 216 posts ]  Go to page Previous 111 12 13 14 15

All times are UTC+03:00


Who is online

Users browsing this forum: No registered users and 1 guest


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Limited