Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2016.07.24;
Скачать: [xml.tar.bz2];

Вниз

Как установить шрифт консольному приложению   Найти похожие ветки 

 
ANB   (2010-06-23 12:29) [0]

при запуске его через CreateProcess

Запускаю так :


 // Параметры процесса
 GetStartupInfo(lpStartupInfo);
 lpStartupInfo.cb := sizeof(TStartupInfo);
 lpStartupInfo.dwFlags :=
   STARTF_USESHOWWINDOW
 + STARTF_USESIZE + STARTF_USECOUNTCHARS {+ STARTF_USESTDHANDLES};
 lpStartupInfo.wShowWindow := SW_SHOWDEFAULT;
 case WinSizeType of
   0 : begin WinX := 132; WinY := 60; end;
   1 : begin WinX := 80; WinY := 50; end;
   2 : begin WinX := 80; WinY := 25; end;
   3 : begin WinX := 152; WinY := 76; end;
   4 : begin WinX := 110; WinY := 40; end;
   5 : begin WinX := edSizeWidth.AsInteger; WinY := edSizeHigh.AsInteger; end;
 else
   WinX := 80; WinY := 25;
 end;
 // lpStartupInfo.dwXSize := WinX * 8;
 lpStartupInfo.dwXSize := WinX * 10;
 lpStartupInfo.dwXCountChars := WinX;
 // lpStartupInfo.dwYSize := WinY * 12;
 lpStartupInfo.dwYSize := WinY * 18;
 lpStartupInfo.dwYCountChars := WinY;
 lpStartupInfo.lpTitle := PChar(EXEFileName);
 {
 lpStartupInfo.hStdOutput := ChildStdOutWr;
 lpStartupInfo.hStdError  := ChildStdOutWr;
 }
 // Диалог с параметрами, если надо
 if edIsShowCmd.Checked then begin
   if (ShowDialog("Запуск модуля"
   , RunParams + #13#10
   + #13#10
   + "Рабочий каталог :" + #13#10 + WorkFolder + #13#10
   + #13#10
   + "Запускать ?"
   , sdiConfirm, ["&Да", "&Нет"]) <> 1) then Exit;
 end;
 if not CreateProcess(
   nil
  ,PChar(RunParams)
  ,nil
  ,nil
  ,False
  ,0                // creation flags
  ,nil      // pointer to new environment block
  ,PChar(WorkPath) // pointer to current directory name
  ,lpStartupInfo    // pointer to STARTUPINFO
  ,lpProcessInformation // pointer to PROCESS_INFORMATION
 )
 then Exception.Create("Ошибка при выполнении командной строки " + #13#10 + RunParams);


Добился синхронного измения размера при установке шрифта в свойствах окна, но сам шрифт приходится :
1. Выбирать в свойствах
2. Надо как то указать его программе для расчета размера окна в пикселях.

Вариант - считать размер шрифта из свойств, но тоже не знаю как.


 
Игорь Шевченко ©   (2010-06-23 13:27) [1]

SetCurrentConsoleFontEx в программе ?


 
ANB   (2010-06-23 14:07) [2]

1. Win XP
2. В делфи 7 прототипа нету
3. В консольное приложение вломиться не могу. Я его только запускаю. К тому же оно не одно. Т.е. нужно им управлять извне.


 
ANB   (2010-06-23 14:29) [3]

Нашел. Надо перед стартом ключи в реестре подкрутить.


 
0x00FF00   (2010-06-30 00:13) [4]


> Нашел. Надо перед стартом ключи в реестре подкрутить.

Поведай свой секрет, Просветлённый =)
После тебя ещё 100500 человек тему прочтут, а решения так и не найдут) придётся бедолагам перелопачивать реестр самим. Нехорошо.



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

Форум: "WinAPI";
Текущий архив: 2016.07.24;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.005 c
15-1445203802
Юрий
2015-10-19 00:30
2016.07.24
С днем рождения ! 19 октября 2015 понедельник


3-1307688717
Kley
2011-06-10 10:51
2016.07.24
Проблема с передачей параметра в запрос


15-1444080601
Юрий
2015-10-06 00:30
2016.07.24
С днем рождения ! 6 октября 2015 вторник


15-1445808604
Юрий
2015-10-26 00:30
2016.07.24
С днем рождения ! 26 октября 2015 понедельник


15-1442611639
DayGaykin
2015-09-19 00:27
2016.07.24
Помощник игры в Сапера.





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский