


Bases du SDK Win32 (2) Explication détaillée des procédures de compilation et de liaison cl.exe et link.exe (image)
一 Commencer à partir du processus de compilation du programme
Dans l'article précédent, nous avons présenté windows Connaissance de la classification des programmes sous le système, des compilateurs, des connecteurs, des fichiers d'en-tête couramment utilisés, des fichiers de bibliothèque, etc. Cet article parlera du processus de compilation du programme.
Je crois que tout le monde sait que le processus de compilation du code source est divisé en deux étapes : l'une est le processus de compilation, le travail principal est de traduire notre code source en fichiers intermédiaires, qui sont dans Windows, c'est ce que fait cl.exe, il convertira notre fichier .c ou Les fichiers .cpp sont traduits en fichiers .obj intermédiaires ; le second est le processus de connexion, le travail principal est de connecter divers fichiers intermédiaires et bibliothèques ; fichiers pour générer des fichiers exécutables, c'est ce que link.exe fait dans windows, ce sera .obj Les fichiers et les fichiers de bibliothèque sont liés dans des programmes exe.
Cet article vous apprend principalement à vous débarrasser de l'IDE de VS et à utiliser la ligne de commande pour utiliser cl.exe et link.exe compilent et lient des programmes.
deux Écrivez notre fichier Test.c
D'abord nous créons un nouveau fichier test.txt, puis le renommeons en text.c Dans ce fichier nous remplissons le code suivant : <.>
#include "windows.h" int APIENTRY wWinMain(_In_ HINSTANCE hInstance, _In_opt_ HINSTANCE hPrevInstance, _In_ LPWSTR lpCmdLine, _In_ int nCmdShow) { MessageBox(NULL,"Hello Win32","sdk",MB_ABORTRETRYIGNORE|MB_ICONERROR); return 0; }
importe tous les fichiers d'en-tête dont nous avons besoin pour le système windows. Ensuite, nous avons présenté la fonction principale du programme de fenêtre windows wWinMain. Voici une brève explication de la fonction de chaque paramètre formel de Winmain : hInstance est le handle d'instance du programme actuel, qui est la mémoire où se trouve le programme actuel. L'emplacement hPrevInstanceLe handle de l'instance précédente du programme actuel, qui est actuellement abandonné ; est le paramètre de ligne de commande, c'est-à-dire que nous utilisons la ligne de commande Lors de l'exécution du programme, vous pouvez attacher des chaînes comme paramètres nCmdShow ; le mode d'affichage de la fenêtre, maximiser ou minimiser. Nous avons appelé MessageBox dans la fonction principale pour définir une boîte de dialogue modale. Si la compilation réussit, une boîte de dialogue apparaîtra après l'exécution du programme. Maintenant que le fichier Test.c
a été écrit, la prochaine chose que nous devons faire est de compiler et de lier les fichiers séparément.Trois
CompileTest.c Nous allons ouvrir fenêtres
cmd outil de ligne de commande, puis passez à notre répertoire de travail actuel et utilisez la commande suivante pour compiler le fichier Test.c : Cl.exe /c test.c
Une fois la compilation terminée, le fichier intermédiaire test.obj sera généré dans le répertoire de travail :
Si votre invite de ligne de commande ne parvient pas à trouver la commande cl.exe et d'autres informations similaires, je pense que vous devez comprendre que cela est dû à l'environnement la variable n'existe pas Pour importer le répertoire où se trouve cl.exe, nous pouvons d'abord ajouter la variable d'environnement ou l'importer en utilisant le chemin complet. Si vous avez généré le fichier test.obj, cela signifie que le processus de compilation est terminé et que nous pouvons démarrer le processus de connexion.
4. Génération de lien test.exe
Ensuite, nous exécutons la commande suivante pour générer le fichier exécutable :
Link.exe test.obj user32.lib
User32.lib Cette bibliothèque dont nous avons parlé dans l'article précédent, elle contient le L'interface utilisateur souhaitée et l'API liée au message que nous devons appeler est définie dans cette bibliothèque, si rien d'autre ne se produit. le fichier exécutable test.exe doit être généré dans votre répertoire de travail :
Double-cliquez sur cet exe
OK
avec interfaceIDE pour générer une boîte de dialogue personnalisée, n'est-ce pas étonnant ? Il devrait y avoir l'expression méchante de Xiao Yueyue ici. . .
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!

Outils d'IA chauds

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

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

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

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

Sujets chauds

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 ».

Le nouveau SDK Windows 11 pour la build 22523 a révélé que Microsoft développe un nouvel effet de flou pour Windows 11. Cet effet est appelé Tabbed et s'ajoute à l'acrylique et au mica. Le nouveau DWMWA_SYSTEMBACKDROP_TYPE dans le SDK 22523, Mica, l'API Win32 publique d'Acrylic et leur étrange nouveau mélange « d'onglets » : pic.twitter.com/dbsu7ZFiIi — Tout est de retour (@StartIsBack) 15 décembre 2021 Disponible dans l'exemple d'application du SDK suivant

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

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.

Maîtriser les compétences essentielles pour le développement secondaire du SDK Java Hikvision Introduction : Avec le développement rapide des technologies de l'information, les systèmes de vidéosurveillance ont été largement utilisés dans divers domaines. En tant que principal fournisseur national de solutions de vidéosurveillance, les produits et technologies de Hikvision ont toujours occupé une position importante sur le marché. Afin de répondre aux besoins des différents projets, Hikvision fournit un SDK permettant aux développeurs d'effectuer un développement secondaire. Cet article présentera quelques compétences essentielles pour maîtriser le développement secondaire du SDK Java Hikvision et joindra des exemples de code correspondants. 1. Comprendre Hikvision

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

Le nom complet du SDK est « Software Development Kit », qui signifie « kit de développement logiciel » en chinois. Il s'agit d'un ensemble d'outils fournis par le fabricant de la plate-forme matérielle, du système d'exploitation (OS) ou du langage de programmation. Les SDK aident les développeurs de logiciels à créer des applications pour des plates-formes, des systèmes ou des langages de programmation spécifiques. Un SDK de base se compose généralement d'un compilateur, d'un débogueur et d'une interface de programmation d'application (API), mais peut également inclure d'autres contenus, tels que : de la documentation, des bibliothèques, un environnement d'exécution/développement, des outils de test/analyse, des protocoles réseau, etc.

Le WindowsAppSDK est un ensemble d'outils et d'API que les développeurs peuvent utiliser dans leurs applications Windows pour fournir des fonctionnalités « cohérentes » sur une variété d'appareils utilisant Windows 10 (version 1809 et ultérieure) et Windows 11. Il est très important de comprendre qu'il ne remplace pas les types d'applications existants tels que .NET ou le SDK Windows, il fournit simplement un ensemble d'outils API unifié qui peut être utilisé pour compléter vos applications existantes. Aujourd'hui, Microsoft a publié la version 1.2 du SDK Windows App avec de nombreuses nouvelles fonctionnalités. Le point culminant de cette version pourrait être les développeurs tiers
