Общие переменные для exe и dll

Тема в разделе "WASM.WIN32", создана пользователем DELTA_1, 4 фев 2005.

  1. DELTA_1

    DELTA_1 New Member

    Публикаций:
    0
    Регистрация:
    19 дек 2004
    Сообщения:
    16
    Адрес:
    Israel
    Есть основной модуль exe и рабочий модуль dll, который потом подгружается в адресное пространство exe. Я хочу иметь доступ к переменным, объявленым в exe, из dll, и наоборот. Как это осуществить?(MASM)

    Спасибо.
     
  2. volodya

    volodya wasm.ru

    Публикаций:
    0
    Регистрация:
    22 апр 2003
    Сообщения:
    1.169
    из dll экспортируй переменные

    а в exe... гы, да ты, парень, извращенец...
     
  3. reverser

    reverser New Member

    Публикаций:
    0
    Регистрация:
    27 янв 2004
    Сообщения:
    615
  4. green

    green New Member

    Публикаций:
    0
    Регистрация:
    15 июл 2003
    Сообщения:
    1.217
    Адрес:
    Ukraine
    DELTA_1

    из ехе тоже можно экспортировать переменные...
     
  5. volodya

    volodya wasm.ru

    Публикаций:
    0
    Регистрация:
    22 апр 2003
    Сообщения:
    1.169
    green



    а зачем, если это некрасиво и ненадежно?
     
  6. DELTA_1

    DELTA_1 New Member

    Публикаций:
    0
    Регистрация:
    19 дек 2004
    Сообщения:
    16
    Адрес:
    Israel
    Дело в том, что мне нужно интерактивное взаимодействие между модулями. Буду юзать трубы. Я просто забыл про них, т.к. еще начинающий, не пинайте... :)
     
  7. green

    green New Member

    Публикаций:
    0
    Регистрация:
    15 июл 2003
    Сообщения:
    1.217
    Адрес:
    Ukraine


    если длл и ехе в одном процессе, то IMHO, не стоит.

    ведь модули имеют прямой доступ к коду и данным друг друга.
     
  8. DELTA_1

    DELTA_1 New Member

    Публикаций:
    0
    Регистрация:
    19 дек 2004
    Сообщения:
    16
    Адрес:
    Israel
    ОК, но тогда как это осуществить? Я подгружаю длл, а потом хочу создать тред из функции DllMain. С этим тредом мне надо взаимодействовать.
     
  9. green

    green New Member

    Публикаций:
    0
    Регистрация:
    15 июл 2003
    Сообщения:
    1.217
    Адрес:
    Ukraine
    ну, это смотря какое нужно взаимодействие.



    например из ехе вызываешь стартовую ф-цию длл (скажем Init), которая принимает параметром callback-ф-цию из ехе и/или указатель на область памяти, которая будет использоваться для обмена данными.

    вообще вариантов море...

    Это то же самое что организовывать взаимодействие между кусками кода одного модуля.
     
  10. DELTA_1

    DELTA_1 New Member

    Публикаций:
    0
    Регистрация:
    19 дек 2004
    Сообщения:
    16
    Адрес:
    Israel
    Понял - мне надо больше занятся теорией. Спасибо.
     
  11. Quantum

    Quantum Паладин дзена

    Публикаций:
    0
    Регистрация:
    6 янв 2003
    Сообщения:
    3.143
    Адрес:
    Ukraine
    DELTA_1



    Это не безопасно (см. последние 2-3 абзаца тут)
     
  12. DELTA_1

    DELTA_1 New Member

    Публикаций:
    0
    Регистрация:
    19 дек 2004
    Сообщения:
    16
    Адрес:
    Israel
    Ок, учту.