номер item через переменную

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

  1. vg

    vg New Member

    Публикаций:
    0
    Регистрация:
    16 апр 2007
    Сообщения:
    475
    Есть сообщение

    invoke SendMessage,hlist,LVM_SETITEMSTATE,1,addr lvs

    оно действует на определённый(здесь 1) item
    Как передать номер item через переменную(регистр)?

    Вариант

    mov numitem,2
    invoke SendMessage,hlist,LVM_SETITEMSTATE,addr numitem,addr lvs

    не работает
     
  2. IceStudent

    IceStudent Active Member

    Публикаций:
    0
    Регистрация:
    2 окт 2003
    Сообщения:
    4.300
    Адрес:
    Ukraine
    masm:
    mov numitem,2
    invoke SendMessage,hlist,LVM_SETITEMSTATE,numitem,addr lvs
     
  3. vg

    vg New Member

    Публикаций:
    0
    Регистрация:
    16 апр 2007
    Сообщения:
    475
    Так работает. Спасибо. Но появился ещё один вопрос.
    Почему не работает следующий код?

    mov numitem,eax
    invoke SendMessage,hlist,LVM_SETITEMSTATE,numitem,addr lvs

    Значение из eax не передаётся.
     
  4. Freeman

    Freeman New Member

    Публикаций:
    0
    Регистрация:
    10 фев 2005
    Сообщения:
    1.385
    Адрес:
    Ukraine
    Код (Text):
    1. mov eax,2
    2. mov numitem,eax
    3. invoke SendMessage,hlist,LVM_SETITEMSTATE,numitem,addr lvs
    работоед? есле да - косячишь с еах перед выполнением
     
  5. vg

    vg New Member

    Публикаций:
    0
    Регистрация:
    16 апр 2007
    Сообщения:
    475
    Что за фигня? Так работает
    Код (Text):
    1. mov eax,2
    2. mov numitem,eax
    3. invoke SendMessage,hlist,LVM_SETITEMSTATE,numitem,addr lvs
    А почему, тогда, не работает
    Код (Text):
    1. invoke GetPrivateProfileInt,addr section,addr key,0,addr path
    2. mov    numitem,eax
    3. invoke SendMessage,hlist,LVM_SETITEMSTATE,numitem,addr lvs
     
  6. Freeman

    Freeman New Member

    Публикаций:
    0
    Регистрация:
    10 фев 2005
    Сообщения:
    1.385
    Адрес:
    Ukraine
    скорее всего накосячил в .ини-фаеле. проверь, возращаецо ли ноль (он у тя как значение по-умолчанею) ф-ией GetPrivateProfileInt, если да - знач точно в инифайле фегня... проверь также, path на содержание полного пути к .ини, либо размести .ини в папке виндоз
     
  7. IceStudent

    IceStudent Active Member

    Публикаций:
    0
    Регистрация:
    2 окт 2003
    Сообщения:
    4.300
    Адрес:
    Ukraine
    vg
    Отладчик в руки.