Probleme de compilation avec MASM32

OKT Messages postés 14 Statut Membre -  
PaOk Messages postés 2 Statut Membre -
Bonjour,

Voilà,j'ai essayé un petit programme tiré du tutoriel de Lord NoteWorthy dont voici le texte:

.386
.model flat, stdcall
option casemap:none

include windows.inc

include user32.inc
includelib user32.lib

include kernel32.inc
includelib kernel32.lib

.data
MsgBoxCaption BYTE "Hello world!", 0
MsgBoxText BYTE "Un bon langage aujourd'hui vaut mieux qu'un langage parfait demain.", 0

.code
start:

invoke MessageBox, NULL, addr MsgBoxText, addr MsgBoxCaption, MB_OK + MB_ICONASTERISK
invoke ExitProcess, 0

end start

Lorsque j'ai voulu le compiler avec qEditor de MASM32, je reçois le message suivant:

Microsoft (R) Windows (R) Resource Compiler, Version 5.00.1823.1 - Build 1823
Copyright (C) Microsoft Corp. 1985-1998. All rights reserved.

Using codepage 1252 as default
Creating rsrc.RES
RC: RCPP -CP 1252 -f E:\masm32\RCa02460 -g E:\masm32\RDa02460 -DRC_INVOKED -D_WI
N32 -pc\:/ -E -I. -I .

RC : fatal error RC1110 : could not open rsrc.rc

Microsoft (R) Windows Resource To Object Converter Version 5.00.1736.1
Copyright (C) Microsoft Corp. 1992-1997. All rights reserved.

CVTRES : fatal error CVT1101: cannot open rsrc.res for reading
Appuyez sur une touche pour continuer...
Quelqu'un peut-il m'aider à comprendre pourquoi cela ne marche pas?
Merci d'avance.

3 réponses

OKT Messages postés 14 Statut Membre
 
Bonjour,

J'ai finalement trouvé la solution.Je la poste pour ceux qui peuvent se trouver dans ce genre de situation.J'ai modifié le programme comme ci-dessous:

.386
.model flat, stdcall
option casemap:none

include \masm32\include\windows.inc

include \masm32\include\user32.inc
includelib \masm32\lib\user32.lib

include \masm32\include\kernel32.inc
includelib \masm32\lib\kernel32.lib

.data
MsgBoxCaption BYTE "Hello world!", 0
MsgBoxText BYTE "Un bon langage aujourd'hui vaut mieux qu'un langage parfait demain.", 0

.code
start:

invoke MessageBox, NULL, addr MsgBoxText, addr MsgBoxCaption, MB_OK + MB_ICONASTERISK
invoke ExitProcess, 0

end start

Il faut utiliser qEditor de MASM32. Après avoir chargé le fichier, cliquer sur
Project et ensuite, choisir Assemble & Link .

Une fois cela fait,revenir à Project et cliquer sur Run Program.
C'est tout et à la prochaine
0
PaOk Messages postés 2 Statut Membre
 
Bonjour en suivant ce même tuto, j'ai moi aussi un problème en essayant de construire et d'exécuter ce programme.

Que ce soit en suivant le tuto ou la version de OKT j'ai le message :

Message box.asm(27) : error A2006: undefined symbol : MsgBoxCaption
Message box.asm(27) : error A2114: INVOKE argument type mismatch : argument : 3
Message box.asm(27) : error A2006: undefined symbol : MsgBoxtext
Message box.asm(27) : error A2114: INVOKE argument type mismatch : argument : 2

Si quelqu'un comprend ce que ça veut dire?
0
PaOk Messages postés 2 Statut Membre
 
Problème identifié. Distraction en suivant le tuto. A la création du projet je choisissait "Win 32 App" au lieu de "Win 32 App (no res)"
0