Здравствуйте! Уже долго мучаюсь с такой проблемой: надо вести лог создания окон, для того я использовал WH_CBT и код HCBT_CREATEWND но проблема в том что он выполняется для создания каждой кнопочки бокса и тп(содержимого окна), а надо только что бы один раз для всего окна в целом...
вот код:
LRESULT CALLBACK WindowTitleFiltr(int nCode,WPARAM wParam,LPARAM lParam)
{
if (nCode < 0) return CallNextHookEx(NULL, nCode, wParam, lParam);
switch (nCode)
{
case HCBT_ACTIVATE:
{
//...
}
break;
case HCBT_CREATEWND:
{
TCHAR tzCaption[MAX_PATH];
CBT_CREATEWND *l = (CBT_CREATEWND*)lParam;
//вот с этим условием что я только не делал (и l->lpcs->hwndParent==NULL и l->lpcs->hwndParent==WC_DESCTOP)
if (l->lpcs->style == WS_TILED) {
char s[100];
GetClassName((HWND)wParam,s,100);
FileWrite(s,FileName); //функция просто выводит строку в файл
toNewStr(); //записывает символ "\n" в файл
}
}
break;
}
в банальном тупике...