Dynamic issue of information

Тема в разделе "WASM.BEGINNERS", создана пользователем dgs, 13 фев 2009.

  1. dgs

    dgs New Member

    Публикаций:
    0
    Регистрация:
    23 июн 2008
    Сообщения:
    434
    привет всем, собственно допустим у нас есть DLL в которой создается тред, он вызывает длинную процедуру... как во время исполнения этой процедуры мне просматривать в главной программе содержимое local параметров из этой фичи?
     
  2. dgs

    dgs New Member

    Публикаций:
    0
    Регистрация:
    23 июн 2008
    Сообщения:
    434
    Ну может есть у кого алгоритм типа DDE ?
     
  3. jaja

    jaja New Member

    Публикаций:
    0
    Регистрация:
    23 июл 2008
    Сообщения:
    243
    shared секции?
     
  4. max7C4

    max7C4 New Member

    Публикаций:
    0
    Регистрация:
    17 мар 2008
    Сообщения:
    1.203
    jaja
    ну процесс тут один так что можно и без них. а как насчет сделать локальные переменные глобальными и написать простенькие функции типа
    Код (Text):
    1. function GetI:Integer;
    2. begin
    3.   SuspendThread(hThread);
    4.   Result:=I;
    5.   ResumeThread(hThread);
    6. end;
    или
    Код (Text):
    1. GetI:
    2.  push [hThread]
    3.  call [SuspendThread]; без кавычек для TASM, а также с долбаной припиской @4 для MASM
    4.  push [i]
    5.  push [hThread]
    6.  call [ResumeThread]; без кавычек для TASM, а также с долбаной припиской @4 для MASM
    7.  pop eax
    8.  ret
    или
    Код (Text):
    1. int GetI()
    2. {
    3.   SuspendThread(hThread);
    4.   int tmp=I;
    5.   ResumeThread(hThread);
    6.   return tmp;
    7. }
    P.S. хотя для получения значения этой переменной замораживать ветвь - это кажется лишним, но вот если это будет строка, то это будет уже необходимо. иначе рискуем получить фигню.
     
  5. GoldFinch

    GoldFinch New Member

    Публикаций:
    0
    Регистрация:
    29 мар 2008
    Сообщения:
    1.775
    передавать потоку указатель на глобальную структуру %)
     
  6. dgs

    dgs New Member

    Публикаций:
    0
    Регистрация:
    23 июн 2008
    Сообщения:
    434
    Дело в том, что у меня может быть от 2-х до 1024 тредов и каждый из них узнает размер файла в интернете и несколько дополнительных параметров + скачивает его, в общем заполняется структура размером в 20 байт по мере прохождения функций InternetOpen, InternetOpenUrl, HttpQueryInfo и т.п. вот вопрос нужно ли морозить тред если я хочу изменить показания ListView?

    делал и получал фигню какую - то, в отладчике правда бывало ловил ACCESS_VIOLATION, но когда разобрался с кодом вопрос стал о передачи данных...
     
  7. dgs

    dgs New Member

    Публикаций:
    0
    Регистрация:
    23 июн 2008
    Сообщения:
    434
    Вот прошу про тестировать...
     
  8. Vilco

    Vilco Vitaly

    Публикаций:
    0
    Регистрация:
    5 мар 2007
    Сообщения:
    190
    Адрес:
    Nsk, Russia
    Meneger :lol: :lol: переименуй, не позорься
     
  9. dgs

    dgs New Member

    Публикаций:
    0
    Регистрация:
    23 июн 2008
    Сообщения:
    434
    ок... х)) сцука))) заметил)))