Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.08.01;
Скачать: CL | DM;

Вниз

Можно ли заблокировать ShowMessage.   Найти похожие ветки 

 
Комбинатор   (2004-07-19 16:35) [0]

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


 
Ega23 ©   (2004-07-19 16:36) [1]

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


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


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


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


 
Mim1 ©   (2004-07-19 17:19) [3]

Модифицируйте этот код немного под себя.
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.



Страницы: 1 вся ветка

Текущий архив: 2004.08.01;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.044 c
3-1089366805
nik7777
2004-07-09 13:53
2004.08.01
Как через "insert into" в одно поле передать несколько значений


4-1087572404
Алексей Петухов
2004-06-18 19:26
2004.08.01
установить: разделитель разрядов, дробной части, даты и т.д.


3-1089290948
BPK
2004-07-08 16:49
2004.08.01
Инсталляция снесла все ODBC-драйверы


8-1084885435
Iraizor
2004-05-18 17:03
2004.08.01
ошибка после завершения приложения работающего с канвой


14-1089582966
ANNIHILATOR
2004-07-12 01:56
2004.08.01
Человек ненавидит то, чего он не понимает...