2010-11-02 6 views
0

Basé sur la réponse à ma question précédente, j'aimerais en poser une de plus sur le sujet.Ressources Windows PE (extension de la Q. précédente)

Pour cette semaine, je croyais que tous les graphiques derrière windows ne sont en fait que du code. Pour créer une fenêtre, des menus, un bouton, je pensais que tout est juste une fonction qui passe quelques arguments à OS. Mais que j'ai trouvé quelques informations sur les ressources. D'après le peu que j'ai trouvé sur Internet, je crois que le compilateur cherche réellement la fonction spécifique qui crée des graphiques, et les enregistre et leurs structures de données dans l'endroit différent dans le dossier de PE que l'autre code.

Qu'il les traite différemment des autres codes. Je veux demander, pourquoi? Je veux dire, pourquoi ne pas avoir des fonctions qui appellent WinAPI pour ça? Merci.

EDIT: Et comment même le compilateur C peut-il détruire le programme en ressources et autres codes?

J'ai toujours supposé que tout compilateur C, même pour un ancien avant Windows pouvait générer le code approprié pour être exécuté sur Windows lorsqu'il est fourni par le CRT et le code de démarrage de la fonction WinMain. Et juste savoir basci de la structure PE, juste des sections de code et de données ....

Répondre

2

Les ressources ne sont que des données. Les données n'ont aucune capacité de vie à modifier l'apparence d'une fenêtre. Cela nécessite un code qui utilise les données. Si ce code vit dans Windows ou dans votre programme n'a pas vraiment d'importance. C'est toujours le code.

Donc, oui, c'est tout le code qui fait le travail. Vous le faites correctement si c'est le code que vous n'avez pas à écrire. Et ne pas avoir à maintenir.