WINDOWS PROGRAMMING

5 отговора 322 прегледа
#1

WINDOWS PROGRAMMING

#include <windows.h> //0
void main() //1
{ //2
HINSTANCE h_Inst=GetModuleHandle(NULL);//3
MessageBox(NULL,NULL,NULL,MB_OK); //4
} //5

//това е работещ DOS код в който успешно се вика Win32 API функция
//по интересно е следното
//очевидно да се получи манилулатор на приложението е просто
//но как да се получи манипулатор на прозореца?


//очаквам отговори по същество ,а не такива които обсъждат имали или няма
//смисъл горното

Отговор
в отговор на PASCAL #2

Re: WINDOWS PROGRAMMING

Ami to w sluchaia nima prozorec!!!

Отговор
в отговор на PASCAL #3

Re: WINDOWS PROGRAMMING

(работещ *DOS* код??? )
предполагам искам да вземеш handle на console прозореца.
един от начините (грозен) е веднага след стартиране на приложението да извикаш GetForegroundWindow()
"официалният" начин който MS казва (Q124103) (също грозен):
Call GetConsoleTitle() to save the current console window title.
Call SetConsoleTitle() to change the console title to a unique title.
Call Sleep(40) to ensure the window title was updated.
Call FindWindow(NULL, uniquetitle), to obtain the HWND this call returns the HWND -- or NULL if the operation failed.
Call SetConsoleTitle() with the value retrieved from step 1, to restore the original window title.

друг начин за който се сещам е да се enum-ерират всички top-level прозорци и за всеки от тях с GetWindowThreadProcessId() да се проверява дали не е като GetCurrentProcessId() т.е. "нашият" прозорец.

последно. в Win2000 има функция HWND GetConsoleWindow(VOID) - но в зависимост от това с какво SDK си, може да го няма в header-ите и в import библиотеката на kernel32 - така че или с GetProcAddress() или трябва да си направиш нова(допълнителна) import library за kernel32.dll

Отговор
в отговор на _ #4

Re: WINDOWS PROGRAMMING

Ne narichaj DOS prilojenie konzolno takowa!
I sled kato poluchish handle - ko sha si go prajsh?
neshto kato PosMessage (HWND,WM_SIZE,rand(),rand())?
towa e naj interesnoto za koeto se sehtam

Отговор
в отговор на _ #5

Re: WINDOWS PROGRAMMING

Много обичам кадърните отговори този е такъв и благодаря за помоща.

Отговор
в отговор на SDR #6

Re: WINDOWS PROGRAMMING

Ако това което съм намислил стане ще публикувам кода в този клуб.

Отговор