Проблема следующая: есть диалог с DI_EDIT/DIF_HISTORY, который по нажатию Enter (или кнопки в диалоге) выполняет действие (введенное в строке ввода), блокируя закрытие диалога.
Code: Select all
LONG_PTR WINAPI CallGuiMacroDlg(HANDLE hDlg, int Msg, int Param1, LONG_PTR Param2)
{
if (((Msg == DN_BTNCLICK) && (Param1 == guiOkBtn))
|| ((Msg == DN_KEY) && (Param1 != guiCancelBtn) && (Param2 == 0x0D/*KEY_ENTER*/))
)
{
// execution script...
return TRUE;
}
return InfoT->DefDlgProc(hDlg, Msg, Param1, Param2);
}
PS. Far2 1807 или Far3 1900