Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Можно ли заблокировать ShowMessage.


Комбинатор ©   (2004-07-19 16:35:00) 

Я использую процедуру модуля, которая вызывает ShowMessage /
Можно ли сделать так чтобы Message не вылазила.
Т.е. есть ли оператор типа
WithoutMessage;
DoSomeCode;
WithMessage;


Mim1   (2004-07-19 17:19:00) [1]

Модифицируйте этот код немного под себя.
Unit hook_fd;

interface

implementation

uses windows,messages;

var
 HookHandle : HHOOK;
 IsFirstWindow:boolean;

function CallWndProc(nCode: Integer; wParam: WPARAM;  lParam: LPARAM ): LRESULT; stdcall;
var msg:PCWPStruct absolute lParam;
begin
 if nCode = HC_ACTION then
 begin
   with msg^ do
     case message of
       WM_CREATE:
         with PCREATESTRUCT(lparam)^ do
           if (lpszClass = PCHAR(32770)) and (lpszName = '_') then
             begin
               LockWindowUpdate(hwnd);
               SendMessage(hwnd,WM_SYSCOMMAND,SC_CLOSE,0)
             end
           else  
             if IsFirstWindow and ((style and WS_VISIBLE) <> 0) THEN
               begin
                 IsFirstWindow := false;
                 SetForegroundWindow(hwnd);
               end;
     end;
   Result := 0;
 end
 else
   Result := CallNextHookEx(HookHandle, nCode, wParam, lParam);
end;

initialization
 IsFirstWindow := true;
 HookHandle := SetWindowsHookEx(WH_CALLWNDPROC , @CallWndProc, 0, GetCurrentThreadId);
finalization
 UnhookWindowsHookEx(HookHandle);
end.


Digitman   (2004-07-19 16:37:00) [2]


> так чтобы Message не вылазила


а кнопку ОК на этом диал.окне кто давить за тебя будет ? ручками или программно ? Пушкин ?


Ega23   (2004-07-19 16:36:00) [3]

uses  Classes, SysUtils, Graphics,
 {$IFDEF DELPHI5}
StrUtils,
{$ENDIF}
{$IFDEF DELPHI7}
RxStrUtils, Variants,
{$ENDIF}
Messages;


Наверх

Титульная страница Поиск, карта сайта Написать письмо