IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Windows Discussion :

Bad file number avec le manifest.xml


Sujet :

Windows

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de Hypnos
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    87
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2002
    Messages : 87
    Par défaut Bad file number avec le manifest.xml
    Bonjour,

    1. J'ai créé une petite application qui fonctionne très bien, seulement pour lui donner un look plus moderne, j'ai rajouté le manifest, dont le tutorial se trouve ici : http://chgi.developpez.com/styleXP/

    Depuis que j'ai rajouté ce manifest, mon application compile et link, mais lorsque je la lance je reçois le message : "Bad file number".

    Je suis sous winXP avec MinGW/MSYS.

    Voici le contenu de mes fichiers :

    manifest.xml :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
        <assemblyIdentity version="1.0.0.0" processorArchitecture="X86" name="Monapp" type="win32"/>
        <description>Ma description.</description>
        <dependency>
            <dependentAssembly>
                <assemblyIdentity type="win32" name="Microsoft.Windows.Common-Controls"
                    version="6.0.0.0" processorArchitecture="X86"
                    publicKeyToken="6595b64144ccf1df" language="*"/>
            </dependentAssembly>
        </dependency>
    </assembly>
    manifest.rc :
    makefile :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    CXX=g++
    WINDRES=windres
    RES=manifest.res
    CXXFLAGS=-Wpadded
    LDFLAGS=-lmingw32 -Wl,-subsystem,windows -lgdi32 -lcomdlg32
    EXEC=a
    SRC=main.cpp
    OBJ=$(SRC:.cpp=.o)
    
    all: $(EXEC)
    
    $(EXEC): $(OBJ)
    	$(CXX) $(RES) -o $(EXEC) $(OBJ) $(LDFLAGS)
    
    main.o: main.cpp
    	$(CXX) $(CXXFLAGS) -o main.o -c main.cpp
    
    $(RES):	manifest.rc
    	$(WINDRES) -i manifest.rc --input-format=rc -o $(RES) -O coff
    	
    clean:
    	rm *.o
    2. Je donne également mon makefile, parce que j'ai un autre problème, il ne veut pas compiler mon manifest.res, il me dit "manifest.res : no such file or directory", or lorsque je le compile à part dans la ligne de commande, le manifest.res est créé sans problème. Où dois-je donc le placer dans mon makefile pour qu'il le compile avant de faire le lien avec l'exe ? J'ai essayé de le mettre au-dessus, mais sans succès.

    Merci.

    Cordialement.

  2. #2
    Membre éclairé Avatar de Hypnos
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    87
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2002
    Messages : 87
    Par défaut
    Bonjour,

    J'ai trouvé les solutions à mes 2 problèmes.

    1. En fait il y avait une différence dans le nom de mon application entre la variable lpClassName de mon CreateWindowEx et de mon WNDCLASSEX, et l'attribut "name" de la balise <assemblyIdentity> du manifest.xml.

    2. Pour mon second problème, j'ai rajouté la variable $(RES) à la ligne de linkage avec l'.exe (ligne 12) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    CXX=g++
    WINDRES=windres
    RES=manifest.res
    CXXFLAGS=-Wpadded
    LDFLAGS=-lmingw32 -Wl,-subsystem,windows -lcomdlg32
    EXEC=a
    SRC=main.cpp
    OBJ=$(SRC:.cpp=.o)
    
    all: $(EXEC)
    
    $(EXEC): $(OBJ) $(RES)
    	$(CXX) $(RES) -o $(EXEC) $(OBJ) $(LDFLAGS)
    
    main.o: main.cpp
    	$(CXX) $(CXXFLAGS) -o main.o -c main.cpp
    
    $(RES):	manifest.rc
    	$(WINDRES) -i manifest.rc --input-format=rc -o $(RES) -O coff
    	
    clean:
    	rm *.o *.res

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Bad version number in .class file +JBoss 4.2.1 GA
    Par sofien dans le forum Servlets/JSP
    Réponses: 4
    Dernier message: 14/05/2009, 18h00
  2. Bad File descriptor avec fcntl
    Par guigui31 dans le forum Débuter
    Réponses: 2
    Dernier message: 21/04/2008, 20h11
  3. Réponses: 9
    Dernier message: 23/11/2007, 13h56
  4. Bad file descriptor avec un read()
    Par je®ome dans le forum C
    Réponses: 2
    Dernier message: 04/04/2006, 19h30
  5. bad file magic number
    Par sam_XIII dans le forum C++
    Réponses: 1
    Dernier message: 23/10/2004, 23h20

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo