Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.016 c
4-52020
Lexa1900
2002-11-04 19:05
2002.12.16
Консольное приложение


1-51661
nikolo
2002-12-04 13:57
2002.12.16
Компонент TDBComboBox ?


4-52031
Vvedensky
2002-11-02 09:54
2002.12.16
Темы в XP.


6-51876
Pars
2002-10-18 16:05
2002.12.16
Дозвон до провайдера


14-51959
vopros
2002-11-26 13:33
2002.12.16
Как заставить себя не спать?




   Наверх