Консольное приложение во весь экран [D5/Win98,XP]
От: LeXX- Россия  
Дата: 30.04.02 10:36
Оценка:
Приветсвую Всех Мастеров!

У меня такой вопрос. Как перевести консольное приложение из окошка в режим Full-screen (как при нажатии Alt+Enter). Можно ли это как-то сделать с помощью функции ChangeDisplaySettings? я пробовал так (см. статью faq url=http://delphi.mastak.ru/cgi-bin/faq.pl?look=1&id=988625473&n=16]):
var DeviceMode: TDevMode;
begin
 with DeviceMode do begin
  dmSize:=SizeOf(DeviceMode);
  dmBitsPerPel:=16;
  dmPelsWidth:=720;
  dmPelsHeight:=400;
  dmFields:=DM_BITSPERPEL or DM_PELSWIDTH or DM_PELSHEIGHT;
  result:=False;
  if ChangeDisplaySettings(DeviceMode,CDS_TEST or CDS_FULLSCREEN) <> DISP_CHANGE_SUCCESSFUL
   then Exit;
  Result:=ChangeDisplaySettings(DeviceMode,CDS_FULLSCREEN) = DISP_CHANGE_SUCCESSFUL;
 end;


Но ничего не получается. DISP_CHANGE_SUCCESSFUL получается равным False. :(

Или может эта функция только разрешение экрана сменить может, а Alt+Enter делает совсем другое? В таком случае наверно следует сначала сгененировать PIF-файл? Хотя PIF — это только для досовских программ...
Re: Консольное приложение во весь экран [D5/Win98,XP]
От: ua1zcl Россия www.alexklm.ru
Дата: 09.05.02 21:26
Оценка:
Здравствуйте LeXX-, Вы писали:

L>Приветсвую Всех Мастеров!


L>У меня такой вопрос...


Для W95 работает:


void SetOrRestoreWin95osr2_ConsoleWnd(void)
{
    HWND hwX=FindWindow("tty",0);
    if(!hwX) return;
    PostMessage(hwX,WM_COMMAND,57359,0);
}

А для других не знаю, но SpyXX.exe сможет подсказать, если его попытать на каждой ОС.
Александр
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.