Как подключить DLL

Discussion in 'WASM.ASSEMBLER' started by DeGlucker, Sep 16, 2007.

  1. DeGlucker

    DeGlucker New Member

    Blog Posts:
    0
    Joined:
    Sep 19, 2002
    Messages:
    28
    Как к программе на MASM32 статически подключить чужой DLL ?
    Как сделать inc файл понятно, а как сделать lib ?

    Спасибо.
     
  2. IceStudent

    IceStudent Active Member

    Blog Posts:
    0
    Joined:
    Oct 2, 2003
    Messages:
    4,300
    Location:
    Ukraine
    http://wasm.ru/print.php?article=1018001
     
  3. DeGlucker

    DeGlucker New Member

    Blog Posts:
    0
    Joined:
    Sep 19, 2002
    Messages:
    28
    Сделал twsup.def по предыдущему совету:

    LIBRARY twsup
    EXPORTS clrasp
    setasp
    getasp

    В twmt.asm добавил:

    .486
    .model flat, stdcall
    option casemap :none
    ....
    includelib twsup.lib
    clrasp proto : dword
    setasp proto : dword
    getasp proto : dword
    ....
    push 0
    call clrasp
    ....

    Линкер ругается:
    twmt.obj : error LNK2001: unresolved external symbol _clrasp@4

    какого хрена он довавляет _ и @4 ???
     
  4. Mika0x65

    Mika0x65 New Member

    Blog Posts:
    0
    Joined:
    Jul 30, 2005
    Messages:
    1,384
    Видимо, функция объявлена как stdcall, в таком случае к имени ф-ии добавляется префикс "подчеркивание" и постфикс "@X", гд Х == количество аргументов в байтах.
     
  5. DeGlucker

    DeGlucker New Member

    Blog Posts:
    0
    Joined:
    Sep 19, 2002
    Messages:
    28
    А где об'явить что она syscall, в def или в asm и как ?