Size: a a a

Ассемблер

2020 June 09

s

s54816 in Ассемблер
Aiwan ╭∩╮ (òÓ,) ╭∩╮
секции быват: кода, данных, импорта, экспорта, ресурсов, релокации.
На самом деле это всё директории. Ну кроме кода-данных. А будут ли они каждая в своей секции или все в одной — решать вам.
источник

A

Aiwan ╭∩╮ (òÓ,) ╭∩╮... in Ассемблер
Rusty Shackleford
если имя секции .import
имя секции импорта у тя '.idata'
источник

RS

Rusty Shackleford in Ассемблер
Aiwan ╭∩╮ (òÓ,) ╭∩╮
имя секции импорта у тя '.idata'
в иде смотрю итоговый ехе, там три секции импорта получается, .import (2шт) и одна .idata
источник

RS

Rusty Shackleford in Ассемблер
это если имя секции импорта задаю .import
источник

RS

Rusty Shackleford in Ассемблер
если .idata то нормально все
источник

s

s54816 in Ассемблер
Rusty Shackleford
в иде смотрю итоговый ехе, там три секции импорта получается, .import (2шт) и одна .idata
Ты либо линкуешься ещё с чем-то, либо покажи нам бинарник, а то нифига не понятно.
источник

A

Aiwan ╭∩╮ (òÓ,) ╭∩╮... in Ассемблер
Aiwan ╭∩╮ (òÓ,) ╭∩╮
имя секции импорта у тя '.idata'
ты указываешь что там будет импортируемые функции (import), то есть имя функции и её адрес в адресом пространстве
источник

s

s54816 in Ассемблер
Если с чем-то линкуешься, и флаги секций не совпадают, линкер может такие секции дублировать, потому что схлопнуть в одну нельзя.
источник

A

Aiwan ╭∩╮ (òÓ,) ╭∩╮... in Ассемблер
Aiwan ╭∩╮ (òÓ,) ╭∩╮
ты указываешь что там будет импортируемые функции (import), то есть имя функции и её адрес в адресом пространстве
так же после имени указывают code, data, resource, export в зависимости от назначения
источник

RS

Rusty Shackleford in Ассемблер
Aiwan ╭∩╮ (òÓ,) ╭∩╮
так же после имени указывают code, data, resource, export в зависимости от назначения
да это само собой
источник

RS

Rusty Shackleford in Ассемблер
import
источник

RS

Rusty Shackleford in Ассемблер
вот код секции импорта
section '.import' import data readable writeable
       library kernel32, 'kernel32.dll', msvcrt, 'msvcrt.dll', wsock,'Ws2_32.dll'

       import wsock,\
              WSAGetLastError, 'WSAGetLastError'

       import kernel32,\
             ExitProcess, 'ExitProcess',\
             CreateFile, 'CreateFileA',\
             CloseHandle, 'CloseHandle',\
             WriteFile, 'WriteFile',\
             ReadFile, 'ReadFile',\
             GetFileSize, 'GetFileSize',\
             HeapAlloc, 'HeapAlloc',\
             GetProcessHeap, 'GetProcessHeap',\
             HeapFree,'HeapFree'

       import msvcrt, printf, 'printf', getchar,'_fgetchar'
источник

RS

Rusty Shackleford in Ассемблер
буквально ничего не меняя, только название секции с .import на .idata получается 3 или 1 секция
источник

RS

Rusty Shackleford in Ассемблер
ни с чем не линкую
источник

RS

Rusty Shackleford in Ассемблер
вроде )
источник

A

Aiwan ╭∩╮ (òÓ,) ╭∩╮... in Ассемблер
это одна секция, вней указываются какие библиотеки ты используешь (они подгурятся в адресгое пространство программы), и функции из этих библиотек
источник

RS

Rusty Shackleford in Ассемблер
Aiwan ╭∩╮ (òÓ,) ╭∩╮
это одна секция, вней указываются какие библиотеки ты используешь (они подгурятся в адресгое пространство программы), и функции из этих библиотек
да
источник

RS

Rusty Shackleford in Ассемблер
в иде в итоге 3
источник

RS

Rusty Shackleford in Ассемблер
Aiwan ╭∩╮ (òÓ,) ╭∩╮
это одна секция, вней указываются какие библиотеки ты используешь (они подгурятся в адресгое пространство программы), и функции из этих библиотек
я ламер но не совсем уж такой ) это я понимаю что ты пишешь
источник

A

Aiwan ╭∩╮ (òÓ,) ╭∩╮... in Ассемблер
Rusty Shackleford
в иде в итоге 3
каковы их имена?
источник