Fenetres du systeme (win32, vc++, asm)

Description

Tout dans le zip pour recompiler.
Affichage dans listbox de celles qui sont IsWindowVisible().
Si on veut toutes, suffira d'enlever ce test.
Format par ligne en colonnes:
hwnd en hexa(8 char), 4 espaces, ClassName
Comme d'hab, suppression de tout strcat() pour vitesse.
Pas de MFC ni de ses CString pour memes raisons.
Bouton Lister pour remettre liste a jour.

Source / Exemple :


#include <windows.h>
#include "resource.h"
#include "WndEnum.h"

HWND hlst;

BOOL CALLBACK AppDlgProc(HWND hdlg, UINT mssg, WPARAM wParam, LPARAM lParam)
{
  switch(mssg) {
    case WM_INITDIALOG:
      SetClassLong(hdlg, GCL_HICON, (long)LoadIcon(0, IDI_APPLICATION));
      hlst = GetDlgItem(hdlg, IDLST_WNDS);
      PostMessage(hdlg, WM_COMMAND, IDBT_REFRESH, 0);
      return 1;
    case WM_COMMAND:
      switch(wParam) {
        case IDBT_REFRESH:
          SendMessage(hlst, LB_RESETCONTENT, 0, 0);
          SetDlgItemInt(hdlg, IDST_COUNT, ImportWndsLB(hlst), 0);
          PostMessage(hdlg, WM_NEXTDLGCTL, 0, 0);
          return 0;
        case IDCANCEL:
          EndDialog(hdlg, 0);
      }
  }
  return 0;
}

int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE, PSTR, int)
{
  DialogBox(hInstance, MAKEINTRESOURCE(IDD_APP), NULL, AppDlgProc);
  return 0;
}

Conclusion :


Le prog appelle ImportWndsLB(HWND hlst) qui fait tout.
Retourne aussi le nombre insere dans listbox.
Func d'enum fournie en ASM avec commentaires.
Celle en C y est aussi mais invalidee.
WndEnum.txt contient ASM genere par compilo de la C.
Comparez avec version neurones, Y A PAS PHOTO.

Codes Sources

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.