Форум: "Основная";
Текущий архив: 2003.02.13;
Скачать: [xml.tar.bz2];
ВнизЗапуск функции Найти похожие ветки
← →
kkostik (2003-02-03 17:32) [0]Люди добрые, помагите, как запустить из программы на выполнение паралельную функцию, причём если прага выгрузилась то функия продолжает выполняться пока не закончит своё выполнение. Тобишь запустить функию в другом адресном пространстве.
← →
Archon Kazansky (2003-02-03 17:34) [1]Создай новый поток или процесс.
← →
Digitman (2003-02-03 17:36) [2]в NT/W2k - см.CreateRemoteThread()
← →
kkostik (2003-02-03 17:41) [3]но мне и в W9x надо, а новый поток по моему в том же адресном пространсве будет выполняться и при снятии задачи крякнется вместе с исходной прогой
← →
Игорь Шевченко (2003-02-03 17:41) [4]Русский выучить.
← →
gsu (2003-02-03 17:44) [5]прага, чехия, пиво ...
← →
Digitman (2003-02-03 17:49) [6]
> kkostik
В Маздае единственным док.способом будет старт потока в чужом ВАП через глоб.хук
← →
R4D][ (2003-02-03 18:05) [7]Берем любой хэндл, например, Progman"a, потом с помощью функции GetWindowsThreadProcessID получаем его ThreadID, потом устанавливаем SetWindowsHookEx на этот процесс(последний параметр не ноль, а ThreadID+ловушка типа WH_GETMESSAGE), PostMessage(сообщение какое-нибудь WM_USER+87) хэндлу Progman"a, sleep на 10 мс, чтобы сообщение успело дойти и UnHook ловушке. В функцие обработчике пишем, чтобы ловились WM_USER+87 и код той функции, которую ты хочешь запустить.
Работает даже в том случае, когда твоя программа(основная) выгрузилась.
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2003.02.13;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.009 c