CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

Topic sur l'API Windows et DirectX

KeepSmile
KeepSmile
Niveau 4
22 décembre 2006 à 15:27:20

Bonjour,

J´ai commencé un peu la programmation avec l´API windows et DirectX, je crée ce topic (si j´en ai le droit oO) sur l´API windows qui dieu c´est, n´est pas facile et sur la programmation DirectX.

Ca serait bien de partager ses avis et de s´entraider.

Bon comme je commence, d´aprés ce que j´ai compris :

INT WINAPI WinMain( HINSTANCE hInst, HINSTANCE, LPSTR, INT )

est la main() pour les applications Window, hInst est le numéro (unique) de l´instance, HINSTANCE n´est plus utilisé, LPSTR est une chaine de caractére sur les options rentré si on a lancé l´appli en console, genre : monExe.exe /Fullscreen et enfin le dernier INT est un flag sur la facon d´afficher la fenetre.

Par contre je comprends pas tellement :

  1. define WIN32_LEAN_AND_MEAN, on dit que c´est une optimisation mais que fait il réellement.

WNDCLASSEX, euh je vois un peu, mais je sais pas trop ce que c´est exactement, est un handle pour crée des fenetres ?

RegisterClassEx(), je vois pas ce que ca fait.

HWND hWnd, est ceci est un handle mais qui peut etre utilisé pour quoi appart créer des fenetres ?

J´ai quand meme pas mal de trouble, mais je pense que c´est normal étant donné que je commence avec l´API windows et qu´elle est pas facile :)

dnob700
dnob700
Niveau 10
22 décembre 2006 à 16:34:24

le LEAN_AND_MEAN, c´est juste une macro pour dire qu compileur, de ne pas lire tout le fichier windows.h, mais seulement les parties les plus couremment utilisée. En gros, ça accélère la compilation.

Le registerClassEx, c´´est une fonction qui enregistre auprès du système les caractéristique d´une fenêtre que tu veux créer. Comme ça tu donne un nom à cette "classe" de fenêtre.Et ensuite, tu peut en créer autant que tu veux du même genre, et elle seront gérée pareil.C´est pas forcément utile pour la fenêtre principale d´un programme (mais c´est quand même obligatoire ou presque), par contre, c´est bien pratique quand tu te mets à faire des application avec des interfaces multi-documents, où tu veux que toutes tes fenêtres files soient géré pareil.

HWND, c´est un handle. Quand tu crée un objet sous windows il a toujours un handle (une fenêtre, un fichier, une sortie graphique, un objet CO, etc...) S´il ont tous le même type, c´est que quelques rares fonctions peuvent s´appliquer à tout les HANDLE quels qu´ils soient. Mais générallement, tu ne peut pas interchangé un handle de fenêtre avec un handle d´autre chose.

WNDCLASSEX, je suppose que c´est juste le type des classe de fenêtre (le type de paramètre qu´attend reisterclassex, mais j´en suis pas sûr).

Le HINSTANCE qui n´est plus utilisé ne l´a jamais été à ma connaissance (ou alors dans des très vieux windows, mais je verrais plutôt ça dans l´autre sens, i.e. il avait prévu un jour de l´utiliser, et ils ne l´ont jamais fait). MAis était cencé donner une instance du même programme qui serait déjà en train de tourner.

Si tu veux cette information, il y a des astuces pour l´avoir, mais c´est pas aussi facile qu´on peut l´espérer (vu que ce paramètre est vide).

Et le dernier INT, il faut lelire (dont INT show_window, et non pas juste INT) car c´est le paramètre qu´il faut passer à la fonction ShowWindow quand tu l´appelle après avoir créé ta fenêtre.

KeepSmile
KeepSmile
Niveau 4
22 décembre 2006 à 17:00:11

Merci de tes réponses :),

j´ai encore plein de questions mais j´y vais petit à petit :), j´ai remarqué que les fonctions en API windows etait de cette forme :

INT WINAPI WinMain( HINSTANCE hInst, HINSTANCE, LPSTR, INT )

mais normalement une fonction ne se declare pas de telle facon :

TYPE NOM_FONCTION() ??

car j´ai entendu parler de CALLBACK aussi mais ca reste vague.

Sous forums
  • Aide à l'achat Mac
  • Création de sites web
  • Internet
  • Macintosh
  • Création de Jeux
  • Linux
  • Programmation
  • Steam Deck
  • Hardware