Table des matières
1. Le processus de recherche des classes de fenêtres
API RegisterClass et RegisterClassEx RegisterClass et RegisterClassEx " > 2. Enregistrez la classe de fenêtreAPI RegisterClass et RegisterClassEx RegisterClass et RegisterClassEx
L'API GetClassInfo()peut" >GetClassInfoL'API GetClassInfo()peut
<. 🎜> Nous pouvons désenregistrer la classe de fenêtre enregistrée via UnregisterClass. Son prototype est le suivant : " >UnregisterClass<. 🎜> Nous pouvons désenregistrer la classe de fenêtre enregistrée via UnregisterClass. Son prototype est le suivant :
Maison Opération et maintenance exploitation et entretien des fenêtres Bases du SDK Win32 (6) Explication détaillée du processus de recherche de classe de fenêtre et des API associées

Bases du SDK Win32 (6) Explication détaillée du processus de recherche de classe de fenêtre et des API associées

Jun 06, 2017 am 09:44 AM

1. Le processus de recherche des classes de fenêtres

Dans l'article précédent, nous avons présenté les trois classes de fenêtres du système windows - fenêtre système classe, classe de fenêtre globale et classe de fenêtre locale. Chaque classe de fenêtre a une portée différente dans le système d'exploitation et le nom de classe de fenêtre enregistré dans chaque portée ne peut pas être répété. Lors de la création d'une fenêtre, elle est souvent recherchée en fonction du nom de la classe de fenêtre dans les étendues système, globale et locale. Le processus de recherche est résumé comme suit :

(1) Le fonctionnement. Le système recherche le nom de la classe de fenêtre en fonction du nom de la classe de fenêtre entrante. Recherchez maintenant dans la classe de fenêtre locale. S'il est trouvé, exécutez l'étape 2. S'il n'est pas trouvé, exécutez l'étape 3<.>.

(2)

Comparez la classe de fenêtre locale avec la variable HINSTANCE transmise lors de la création de la fenêtre. S'ils sont égaux, cela signifie que les fenêtres créées et enregistrées sont dans le même module, et la fenêtre créée est renvoyée. S'il n'est pas égal, continuez à l'étape 3.

(3)

Recherchez dans la classe de fenêtre globale de l'application. Si trouvé, exécutez l'étape 4 S'il n'est pas trouvé, exécutez l'étape 5<.> étapes. (4) Utilisez les informations de classe de fenêtre trouvées pour créer une fenêtre et revenir.

(5) Rechercher dans la classe de fenêtre système. Si elle est trouvée, créez la fenêtre. Si elle n'est pas trouvée, la création de la fenêtre échoue.

2. Enregistrez la classe de fenêtreAPI RegisterClass et RegisterClassEx RegisterClass et RegisterClassEx

🎜> peut être utilisé pour enregistrer des classes de fenêtres. Leurs deux prototypes sont les suivants :

ATOM WINAPI RegisterClass(
  _In_ const WNDCLASS *lpWndClass
);
ATOM WINAPI RegisterClassEx(
  _In_ const WNDCLASSEX *lpwcx
);
Copier après la connexion

La différence réside principalement dans les paramètres reçus. Ce paramètre est la classe de fenêtre que nous devons enregistrer. Les deux classes de fenêtres sont déclarées comme suit :

typedef struct tagWNDCLASS {
  UINT      style;
  WNDPROC   lpfnWndProc;
  int       cbClsExtra;
  int       cbWndExtra;
  HINSTANCE hInstance;
  HICON     hIcon;
  HCURSOR   hCursor;
  HBRUSH    hbrBackground;
  LPCTSTR   lpszMenuName;
  LPCTSTR   lpszClassName;
} WNDCLASS, *PWNDCLASS;
Copier après la connexion
Comme vous pouvez le voir dans le code ci-dessus, la principale différence entre les deux classes de fenêtres
typedef struct tagWNDCLASSEX {
  UINT      cbSize;
  UINT      style;
  WNDPROC   lpfnWndProc;
  int       cbClsExtra;
  int       cbWndExtra;
  HINSTANCE hInstance;
  HICON     hIcon;
  HCURSOR   hCursor;
  HBRUSH    hbrBackground;
  LPCTSTR   lpszMenuName;
  LPCTSTR   lpszClassName;
  HICON     hIconSm;
} WNDCLASSEX, *PWNDCLASSEX;
Copier après la connexion
structure

is WNDCLASSEX contient la taille de la structure de la fenêtre cbSize et la petite poignée d'icône de la fenêtre hIconSm. Veuillez vous référer à MSDN pour la signification des autres paramètres. 3.

Obtenir les informations sur la fenêtre enregistrée

GetClassInfoL'API GetClassInfo()peut

obtenir la fenêtre enregistrée information Les informations de la fenêtre, sa

fonction prototype est la suivante : hInstance

—— sert à définir la portée de la recherche, si elle est définie sur
BOOL WINAPI GetClassInfo(
  _In_opt_ HINSTANCE  hInstance,
  _In_     LPCTSTR    lpClassName,
  _Out_    LPWNDCLASS lpWndClass
);
Copier après la connexion

NULL sera recherché à partir de trois étendues : système, globale et locale. lpClassName - est le nom de la classe de fenêtre à trouver.

lpWndClass - L'adresse de la variable de structure

WndClass

transmise, utilisée pour recevoir les informations de classe de fenêtre. Trouvons les informations de la fenêtre de la classe

Button

créée ci-dessus :

Configurons-le Breakpoint , vérifiez les informations obtenues de la classe de fenêtre
WNDCLASS wc;
if (GetClassInfo(NULL, "Button", &wc) == false)
MessageBox(NULL,"GetClassInfo Faile",NULL,NULL);
Copier après la connexion
Button

 : 4

Désinstaller la classe de fenêtre

UnregisterClass<. 🎜> Nous pouvons désenregistrer la classe de fenêtre enregistrée via UnregisterClass. Son prototype est le suivant :

lpClassName - est le nom de la classe de fenêtre à désinstaller.

hInstance
BOOL WINAPI UnregisterClass(
  _In_     LPCTSTR   lpClassName,
  _In_opt_ HINSTANCE hInstance
);
Copier après la connexion
—— consiste à définir la portée de recherche S'il est défini sur

NULL

, la recherche sera effectuée à partir de trois portées : système, globale et locale. . Le code suivant désinstalle la classe de fenêtre Button

enregistrée :

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Commandes de chat et comment les utiliser
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Windows 11 22H2 apporte un design mica/acrylique à davantage d'applications de bureau Win32 Windows 11 22H2 apporte un design mica/acrylique à davantage d'applications de bureau Win32 Apr 14, 2023 pm 04:58 PM

Les applications natives de Windows 11 (comme l'Explorateur de fichiers) et d'autres applications shell utilisent par défaut des coins arrondis et des éléments Fluent Design (comme Acrylique). En plus des coins arrondis, une autre caractéristique de conception importante de Windows 11 concerne les matériaux comme le mica, qui aligne la couleur d'arrière-plan des applications avec celle du bureau. Le mica est similaire à l'acrylique mais fonctionne légèrement différemment. Comme Microsoft le décrit, Windows Mica Materials crée « une hiérarchie de couleurs en alignant les arrière-plans avec les applications ».

Cheval de Troie/win32.casdet Rfn dans Windows 11 Cheval de Troie/win32.casdet Rfn dans Windows 11 Apr 14, 2023 pm 02:49 PM

Le logiciel antivirus peut parfois afficher un avertissement indiquant Trojan/win11.casdet rfn sur les ordinateurs portables Windows 32. Cela indique que le PC est infecté par un cheval de Troie malveillant, provoquant un dysfonctionnement. Heureusement, il existe plusieurs moyens de résoudre ce problème, comme expliqué ci-dessous. De plus, vous pourriez être intéressé par notre guide détaillé pour savoir si cdn.districtm.io est un pop-up/virus/malware ou non. Qu’est-ce que le Trojan/win32.casdet rfn ? Trojan/win32.casdet rfn est une infection grave par un virus cheval de Troie qui peut envahir le système et tuer ses processus, ce qui facilite

Quelle est la différence entre win32 et win64 Quelle est la différence entre win32 et win64 May 29, 2023 pm 05:22 PM

La différence entre win32 et win64 est la suivante : 1. win32 fait référence à l'environnement 32 bits du système d'exploitation Microsoft Windows et win64 fait référence à la version 64 bits du système d'exploitation Microsoft Windows, qui est plus stable et plus rapide que le 32. -version bits ; 2. win32 prend en charge jusqu'à 2 Go de mémoire. Win64 doit avoir plus de 4 Go de mémoire ; 3. win64 prend en charge les processeurs 64 bits, mais win32 ne peut pas le prendre entièrement en charge ; 4. win32 recherche la simplicité, tandis que win64 recherche la performance.

Microsoft commence à tester la nouvelle conception OneNote pour Windows 11 Microsoft commence à tester la nouvelle conception OneNote pour Windows 11 Apr 19, 2023 pm 08:01 PM

En août 2021, Microsoft avait promis que OneNote sur Windows 10 et Windows 11 recevrait une série de mises à jour majeures de fonctionnalités dans les mois à venir, alors que le géant de la technologie unifie plusieurs versions de l'application de prise de notes en une seule partie de ses efforts. de clients. OneNote a subi de nombreux changements au cours des dernières années. En 2018, lorsque Microsoft souhaitait vraiment que les gens utilisent sa version UWP de OneNote, la société a cessé de regrouper la version originale et riche en fonctionnalités de OneNote avec les applications Office préinstallées. Au lieu de cela, Microsoft a uniquement fourni un client UWP et ajouté de nouvelles fonctionnalités pour les versions modernes. Microsoft a changé plus tard

Microsoft publie un correctif pour l'erreur Behavior:Win32/Hive.ZY dans Windows Defender Microsoft publie un correctif pour l'erreur Behavior:Win32/Hive.ZY dans Windows Defender Apr 28, 2023 pm 04:01 PM

Un responsable de Microsoft a confirmé de nombreuses informations selon lesquelles Google Chrome, ChromiumEdge, Discord et plusieurs autres applications étaient signalées comme « Behavior:Win32/Hive.ZY » par le logiciel antivirus intégré de Microsoft « WindowsDefender ». Le géant de la technologie a confirmé dans un communiqué qu'il travaillait sur un correctif qui sera déployé pour tout le monde dans les prochaines heures. Alors, qu’est-ce que « Behavior:Win32/Hive.ZY » exactement ? Selon un document publié sur le portail de sécurité de Microsoft, tout fichier marqué « Behavior:Win32/Hive.ZY » est

Quoi de neuf dans le Microsoft Store sur Windows 11 ? Quoi de neuf dans le Microsoft Store sur Windows 11 ? Apr 28, 2023 pm 06:13 PM

Microsoft intègre de nombreuses nouvelles fonctionnalités au Microsoft Store. Celles-ci profiteront à la fois aux utilisateurs finaux et aux développeurs, alors que la société poursuit ses efforts pour améliorer le Store pour tous ceux qui utilisent Windows. L'un des points forts de ces changements sera la nouvelle fonctionnalité « Restaurer les applications » dans le Microsoft Store sur Windows 11. Il sera connecté au compte Microsoft de l'utilisateur, donc après s'être connecté à un nouveau PC Windows 11, celui-ci pourra restaurer automatiquement l'application en quelques clics. "Pour permettre aux clients de passer plus facilement et rapidement à leurs nouveaux PC, nous allons bientôt introduire

Comment corriger le comportement de Windows Defender : alerte Win32/Hive.ZY Comment corriger le comportement de Windows Defender : alerte Win32/Hive.ZY May 06, 2023 am 08:04 AM

De nombreux utilisateurs de Windows 11 et 10 sont troublés par les notifications d'avertissement de Windows Defender indiquant que la menace « Comportement : Win32/Hive.ZY » a été détectée. Selon les rapports, cet avertissement ou alerte Windows Defender est déclenché lorsque les utilisateurs tentent d'ouvrir certaines applications couramment utilisées telles que Google Chrome ou Chromium Edge, Whatsapp, Discord et Spotify. Même si vous avez bloqué cette menace sur votre PC, elle apparaîtra avec un message MicrosoftDefenderAntivi la prochaine fois que vous ouvrirez cette application concernée.

Le logiciel de conception graphique Win32 Canva lance un outil d'IA gratuit pour défier le géant Adobe Le logiciel de conception graphique Win32 Canva lance un outil d'IA gratuit pour défier le géant Adobe Mar 05, 2024 pm 04:34 PM

Selon des informations récentes, Canva a lancé une série de fonctions d'outils d'image IA dans le but de concurrencer Firefly d'Adobe. Son objectif est de simplifier le processus de création de contenu sur le lieu de travail, en permettant aux professionnels non-concepteurs de créer du contenu plus facilement et plus efficacement. , et permettant aux graphistes de se concentrer sur les tâches critiques et de contester la domination d'Adobe sur le marché. Selon les rapports, Visual Worksuite de Canva a intégré le nouveau BrandHub, qui vise à fournir aux utilisateurs un ensemble d'outils pour les aider à assurer la cohérence avec l'identité visuelle de leur organisation. Les utilisateurs peuvent utiliser cet outil pour créer un BrandKit (boîte à outils IP de marque) contenant des informations culturelles de l'entreprise (telles que le LOGO, les polices, les couleurs et le style de conception unifié).

See all articles