Текущий архив: 2005.10.02;
Скачать: CL | DM;
Вниз
Не удается выполнить исходящий вызов... Найти похожие ветки
← →
grigory © (2005-08-04 15:56) [0]Привет всем. Есть длл..из нее посылаю сообщение главному приложению:
function SysMsgProc(Code: Integer; WParam: WPARAM; LParam: LPARAM): LRESULT; stdcall;
begin
....
SendMessage(appwnd,WM_USER,wParam,lParam);
....
end;
и обработал его вот так:
Procedure TForm1.WMUser(var Message: TMessage);
Begin
showmessage("сообщение!");
removehook;
reportdate;
End;
а в процедуре reportdate на строчке
....
App := CreateOleObject("excel.application");
...
выскакивает следующая ошибка "Не удается выполнить исходящий вызов, так как приложение обрабатывает входящий синхронный вызов"
в чем я неправ? что делать?
← →
clickmaker © (2005-08-04 16:17) [1]SendMessage - синхронная процедура
используй PostMessage
← →
Digitman © (2005-08-04 16:27) [2]removehook выгружает образ хук-модуля из АП процессов, куда хук-модуль был внедрен в рез-те установки хука
некий экз-р хук-модуля в некоем процессе (в дан.случае - excel-процессе) вызвал sendmessage() и ждет результата этого вызова ... результат же определяется обработчиком принятого адресатом сообщения, который у тебя вместо возврата рез-та пытается выгрузить из АП процесса-передатчика сообщения сам код ф-ции SendMessage() (работающей в дан.момент)
как думаешь - нонсенс ?
Страницы: 1 вся ветка
Текущий архив: 2005.10.02;
Скачать: CL | DM;
Память: 0.47 MB
Время: 0.027 c