значение align в .code секции. masm

Тема в разделе "WASM.BEGINNERS", создана пользователем Ko1d, 14 окт 2007.

  1. Ko1d

    Ko1d New Member

    Публикаций:
    0
    Регистрация:
    11 апр 2006
    Сообщения:
    8
    Столкнулся с такой проблемой
    есть функция для получения отладочных привелегий, которая call'ом вызывается и выполняется успешно.
    при попытке изобразить руками то же самое только не отдельной процедурой, получаю ошибку. копался в коде, потом допер что причина в параметре который указывает на структуру TOKEN_PRIVILEGES, а именно в пером(рабочем) случае, внутри процедуры она объявляется как

    Код (Text):
    1. LOCAL tkp:TOKEN_PRIVILEGES
    и внутри процедуры все отлично работает, а если в секции кода то же самое

    Код (Text):
    1. .code
    2. tkp TOKEN_PRIVILEGES<>
    то уже никак. копаясь в чужих сорцах нашел решение:

    Код (Text):
    1. .code
    2. align 4
    3. tkp TOKEN_PRIVILEGES<>
    после этого все заработало на ура.. думаю это связанно с особенностью структуры token_privileges..
    а теперь вопрос собственно, как такого избежать в дальнейшем, и вообще куда копать в сторону поиска причнины и значения загадочного align 4

    большое спасибо
     
  2. nitrotoluol

    nitrotoluol New Member

    Публикаций:
    0
    Регистрация:
    5 сен 2006
    Сообщения:
    848
    гхм
    1. <> убери
    2. /SECTION:.text,EWR в ком. строку линкера добавь