-
Начал писать движок на WinAPI. Возник вопрос: Как запретить [Ctr]+[Alt]+[Del], [Alt]+[F4], [Alt]+[Tab], [Windows] и прочих системных клавиш - то бишь как это сделано в Quake III и прочих играх?
-
Это обычно делают по причине глюкавости переключения чудо игры. В газенваген такие игры, которые не дают переключаться.
-
Окей! Значит Кармак создаёт кривые и глюченые движки;)))))
Есть ещё вопрос: Как правильно отловить минимизацию окна? Ниже приведённый код не помогает:
function WinProc(WinHan : THandle; Msg : UINT; wParam: WPARAM; lParam: LPARAM): LRESULT; stdcall; begin Result := 0;
case Msg of ... WM_SIZE : If (wParam = SIZE_MAXHIDE) or (wParam = SIZE_MINIMIZED) then MessageBox(0,'1','My Engine',0) else MessageBox(0,'2','My Engine',0); ... else Result := DefWindowProc(WinHan, Msg, wParam, lParam); end; end;
-
Отлавливай WM_ACTIVATE.
А насчет запретов - фтопку, фтопку. Лично меня еще не радуют игры без оконного режима :) Не говоря о тех, кто криво переключается в полноэкранный с меньшим разрешением (отчего все окна сдвигаются куда попало).
-
> ElectriC © (05.04.07 20:22) [2] > Окей! Значит Кармак создаёт кривые и глюченые движки;))))) Кармак не Бог, а значит не истина в последней инстанции.
> Как запретить [Ctr]+[Alt]+[Del], [Alt]+[F4], [Alt]+[Tab], > [Windows] и прочих системных клавиш - то бишь как это сделано > в Quake III и прочих играх? Почему-то в Q3 (и играх на его движке - CoD, RTCW и т.д.) у меня отлично сворачиваются/разварачиваются основное окно (реакция на Alt+Tab) и Ctrl+Alt+Del работает и прочая системщина. Что я не так делаю ?
-
> Почему-то в Q3 (и играх на его движке - CoD, RTCW и т.д.) > у меня отлично сворачиваются/разварачиваются основное окно > (реакция на Alt+Tab) и Ctrl+Alt+Del работает и прочая системщина. > Что я не так делаю ?
Не знаю что ты делааешь не так, но у меня в Q3 тоже не работет ничего.Фокус передается, а вот окно не сворачивается и с переднего планане уходит. приходится по панели задачь правой кнопкой, переместить, дальше стрльчками. Потом возвращаю :)
-
> Не знаю что ты делааешь не так, но у меня в Q3 тоже не работет > ничего.Фокус передается, а вот окно не сворачивается и с > переднего планане уходит. приходится по панели задачь правой > кнопкой, переместить, дальше стрльчками. Потом возвращаю > :)
Вот-Вот! IMHO, лучше вообще запретить сворачивание и переключение между окнами, когда работает игра. Так надёжней, что-ли! Меньше ошибок и неполадок будет с программой!
-
> IMHO, лучше вообще запретить сворачивание и переключение между окнами, > когда работает игра. Так надёжней, что-ли! Меньше ошибок > и неполадок будет с программой!
А для увеличения безопасности на автодорогах, давайте выпускать машины без колес. А что-бы страну не захлестнуло пьянство, давайте запретим легальную алкогольную продукцию, и т.д.
-
> homm © (06.04.07 12:32) [5] > Фокус передается, а вот окно не сворачивается и с переднего > планане уходит. А, ну так-то да, такой трюк легко получается, если окно назначить "поверх всех окон", но ведь сочетание клавишь работает =) А вот в CoD - точно сворачивается после Alt+Tab, только что проверил.
> ElectriC © (06.04.07 14:12) [6] > Вот-Вот! > IMHO, лучше вообще запретить сворачивание и переключение > между окнами, > когда работает игра. Так надёжней, что-ли! Меньше ошибок > и неполадок будет с программой! Убил бы за такое, ей Богу. Нужно нормально программы писать, а не изобретать велосипеды. Гораздо проще описать реакцию на сворачивание окна. Ну и плюсом, если у тебя игра повиснет (думаешь не зависнет, наивный ???), а ты Ctrl+Alt+Tab отключил, как думаешь, сколько ты минут/часов/дней потратишь на поиски ошибки перезагружая каждый раз компьютер ?
> homm © (06.04.07 14:15) [7] > А что-бы страну не захлестнуло пьянство, давайте запретим > легальную алкогольную продукцию Кстати некоторые пытались =)
-
> Ctrl+Alt+Tab отключил читать Ctrl+Alt+Del
сорри...
-
Хех)))
-
> Asteroid © (06.04.07 04:42) [3] > Отлавливай WM_ACTIVATE.
А можно по подробней, а то не выходит что-то((
-
> > А можно по подробней, а то не выходит что-то((
Наиболее подробно в [8] начинается со слов «Убил бы за такое, ей Богу.»
-
> Гораздо проще описать реакцию на сворачивание окна.
Подскажите, какой код хоть.
-
.
-
Тебе все советуют не надо этого делать, но ты почему-то настойчиво пытаешься это реализовать. Лучше глюки поищи и исправь в своей игре, чтобы такими способами их скрывать не приходилось.
-
Так я спрашиваю про то, как ОТЛОВИТЬ РЕАКЦИЮ СВОРАЧИВАНИЯ(а не как запретить), какой код вообще надо использовать!
-
.
-
,
|