Консультация онлайн # 161184

Раздел: Assembler
Автор вопроса: Бартосик Феликс Михайлович
Дата: 23.02.2009, 12:30 Консультация неактивна
Поступило ответов: 0
Здравствуйте!
Мне нужно решить такую проблему по windows-игре:
Мне нужно игру (типа-Counter-Strike), которая запускается в полноэкранном режиме переключить в режим windowed.
Причем сделать это нужно программно из другой программы, которая висит в процессах резидентом.
Я уже умею: через FindWindow могу получить handle нужного мне процесса, через PostMessage могу послать сообщение WM_QUIT и игра завершается
А как мне сказать ей, чтобы она переключилась в Windowed.
Пробовал менять видеорежимы программно,( например с помощью ChangeDisplaySettings), но это сбрасывает "Counter-Strike". Как мне ее переключить в Windowed, повторю, из другой программы, Заранее благодарю.

Ответов еще не поступило.

Мини-форум консультации # 161184

неизвестный

177467

= общий =    23.02.2009, 15:01
Собственно мне нужно, чтобы моя форма была сверху над игрой (у меня там интересная штука сверху (c сиреной) ползает в целях борьбы с игрой у студентов). Дома у меня кстати все нормально, т.е. моя форма сверху, как я и хочу.

{основной процесс писал на Delphi, подстраховочный на Asm}
у формы FormStyle=fsStayOnTop
Окно показываю
SetWindowPos(Form1.Handle,HWND_TOPMOST,100,-40,Form1.Width,Form1.Height,SWP_NOACTIVATE);
Т.е. все как бы сверху должно быть и чтобы фокус у игры не перехватывать.
И вот на работе не получается: моя форма не хочет быть сверху - когда игра в режиме Windowed - тогда все нормально.
Извините за каламбур...
Возможность оставлять сообщения в мини-форумах консультаций доступна только после входа в систему.
Воспользуйтесь кнопкой входа вверху страницы, если Вы зарегистрированы или пройдите простую процедуру регистрации на Портале.