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

Вниз

Приложение - эгоист   Найти похожие ветки 

 
CASU   (2002-10-30 17:12) [0]

Ребята! Как сделать так, чтобы при запущенном моем приложении пользователь не мог перейти к любому другому приложению не закрыв мое?


 
Marcus   (2002-10-31 14:56) [1]

Заставить пользователя работать в DOS! :)))
Ну а если кроме шуток, то можно попробовать такой зверский способ: при запуске своей проги найти все окна запущенных приложений через EnumWindows и заблокировать их EnableWindow(hwnd, false), не забыв естественно потом разблокировать, при закрытии твоего приложения.


 
Толик ©   (2002-10-31 15:22) [2]

А какой смысл делать такое приложение?
Умными людьми была потрачена масса времени на то, чтобы сделать многозадачные операционные системы. Преимущества такого подхода очевидны. Так какой смысл делать приложения противоречащие концепции операционной системы?
Что, назад в будущее??? :)


 
msts   (2002-10-31 15:31) [3]

какая винда?
если под нт4/2000/xp
то созданием рабочего стола


 
Обсолютный Ноль   (2002-11-03 21:44) [4]

with form1 do
begin
formstyle:=fsstayontop;
borderstyle:=bsnone;
top:=0;
left:=0;
width:=1100;
height:=1100;
systemparametrsinfo(.....,nil);
//P.S. Что вместо ..... посмотри в хелпе.
end;







 
Pat ©   (2002-11-03 23:33) [5]

Обсолютный Ноль (03.11.02 21:44)
Win+D и можно переходить на любое приложение
Надо немного подправить код - поместить окно поверх всех в системе SetWindowPos, "блокировать" Win+D - отлавливать WM_POSCHANGING..кажись оно так звучит. Если надо будет - напишу подробнее


 
Pat ©   (2002-11-03 23:46) [6]

Короче, примерно так:

procedure WMWinPosChanging(var mes: TWMWINDOWPOSCHANGING); message WM_WINDOWPOSCHANGING;
. . . . . . . .
procedure TForm1.WMWinPosChanging(var mes: TWMWINDOWPOSCHANGING);
begin
mes.WindowPos^.flags := mes.WindowPos^.flags and not SWP_HIDEWINDOW;
inherited;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
with form1 do
begin
SetBounds(0,0,screen.width,screen.height);
FormStyle:=fsStayOnTop;
BorderStyle:=bsNone;
end;
SetWindowPos(handle,HWND_TOPMOST,left,top,width,height,SWP_SHOWWINDOW)
end;


 
MFV   (2002-11-03 23:47) [7]

// Это я юзал в только сегодня редактированной проге.
// На Win+D не пробовал пока

procedure TForm1.KillCAD;
var
Dummy : integer;
begin
Dummy := 0;
{Отключаем ALT-TAB}
SystemParametersInfo( SPI_SETFASTTASKSWITCH, 1, @Dummy, 0);
{Отключаем CTRL-ALT-DEL}
SystemParametersInfo( SPI_SCREENSAVERRUNNING, 1, @Dummy, 0);
end;

procedure TForm1.CoverScreen;
begin
BorderStyle:=bsNone;
Left:=0;
Top:=0;
Width:=GetSystemMetrics(SM_CXSCREEN);
Height:=GetSystemMetrics(SM_CYSCREEN);
FormStyle:=fsStayOnTop;
end;



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

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

Наверх




Память: 0.48 MB
Время: 0.019 c
1-51663
Bizon
2002-12-05 15:46
2002.12.16
Навеяло вопросом про вирус.


14-51909
Nox
2002-11-21 14:54
2002.12.16
Еда для программеров


1-51755
Berg
2002-12-04 15:51
2002.12.16
Не запускается HELP


4-51994
the7guest
2002-11-02 17:34
2002.12.16
Как подключить и использовать WinAPI ??? 8~


8-51840
arcoant
2002-08-29 15:13
2002.12.16
Громкость