Сейчас на форуме: tyns777, zombi-vadim (+3 невидимых) |
![]() |
eXeL@B —› Программирование —› патч и wsprintf |
Посл.ответ | Сообщение |
|
Создано: 27 марта 2008 03:13 · Личное сообщение · #1 Решил тут написать патч в консольном режиме в делфи. Захотелось изменить цвет букв. Нашел, что это делается функцией function SetConsoleTextAttribute(hConsoleOutput: THandle; wAttributes: Word): BOOL; stdcall; Но нужно как-то получить хендл окна. По-простому не получается. SetConsoleTitle(PChar('Patch')); h := FindWindow(nil, PChar('Patch')); Нашел пример кода на с++. HWND GetConsoleHwnd(void) { #define MY_BUFSIZE 1024 // Размер буфера для заголовка консольного окна. HWND hwndFound; // Это то, что будет возвращено. char pszNewWindowTitle[MY_BUFSIZE]; // Уникальный заголовок окна. char pszOldWindowTitle[MY_BUFSIZE]; // Изначальный заголовок окна. // Выбираем текущий заголовок окна. GetConsoleTitle(pszOldWindowTitle, MY_BUFSIZE); // Формируем "уникальный" NewWindowTitle. wsprintf(pszNewWindowTitle,"%d/%d", GetTickCount(), GetCurrentProcessId()); // Изменяем текущий заголовок окна. SetConsoleTitle(pszNewWindowTitle); // даём время заголовку, чтобы измениться. Sleep(40); // Ищем NewWindowTitle. hwndFound=FindWindow(NULL, pszNewWindowTitle); // Восстанавливаем изначальный заголовок окна. SetConsoleTitle(pszOldWindowTitle); return(hwndFound); } Но проблема оказалась в функции wsprintf. Ничего не получается с ней. И даже так не получается. wsprintf(pszNewWindowTitle,'%d/%d', Pchar (GetTickCount()) ); Может кто сталкивался с проблемой цветного шрифта и этой функции? ![]() |
|
Создано: 27 марта 2008 03:25 · Поправил: s0larian · Личное сообщение · #2 |
|
Создано: 27 марта 2008 03:34 · Личное сообщение · #3 GetConsoleWindow The GetConsoleWindow function retrieves the window handle used by the console associated with the calling process. HWND GetConsoleWindow(void); Parameters This function has no parameters. Return Values The return value is a handle to the window used by the console associated with the calling process or NULL if there is no such associated console. ![]() |
|
Создано: 27 марта 2008 10:20 · Личное сообщение · #4 |
|
Создано: 27 марта 2008 10:21 · Личное сообщение · #5 Mavlyudov вот посмотри когда то писал консольную тулзу на делфи и раскрашивал, может поможет чем. ![]() ----- Yann Tiersen best and do not fuck ![]() |
|
Создано: 27 марта 2008 10:44 · Личное сообщение · #6 |
![]() |
eXeL@B —› Программирование —› патч и wsprintf |
Эта тема закрыта. Ответы больше не принимаются. |