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

MFC Discussion :

[WIN32][VC60]Pb avec SetLayeredWindowAttributes


Sujet :

MFC

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Invité
    Invité(e)
    Par défaut [WIN32][VC60]Pb avec SetLayeredWindowAttributes
    Salut
    je cherche a developer une application avec une fenetre translucide.
    J'ai trouver les fonction adequates dans la msdn. On doit inclure user32.lib et winuser.h jusque la tous va bien.
    quand je compile cela me met des erreur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    error C2065: 'WS_EX_LAYERED' : undeclared identifier
    error C2065: 'SetLayeredWindowAttributes' : undeclared identifier
    error C2065: 'LWA_ALPHA' : undeclared identifier
    j'ai fait une recherche dans tous les fichiers de Vc++ il n'y rien.
    Vu que cette fonction n'es valable que depuis Windows 2000 es ce que Vc++ est trop vieu??

    - ya t'il une MAJ possible??
    - Pourquoi en changeant l'ordre des #include le compilateur me trouve des erreurs dans les .h??

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    d:\microsoft visual studio\vc98\include\winuser.h(39) : error C2146: syntax error : missing ';' before identifier 'HDWP'
    d:\microsoft visual studio\vc98\include\winuser.h(39) : fatal error C1004: unexpected end of file found
    ca c en mettant include <winuser.h> en premier

  2. #2
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Par défaut
    salut,
    non mais une petite maj du SDK s'impose ,
    voir dans ce post le lien du sdk:
    http://www.developpez.net/forums/viewtopic.php?t=175667

  3. #3
    Invité
    Invité(e)
    Par défaut
    j'ai installer le service pack 6 et ca me met toujours les memes erreurs.
    Ya t'il un autre truc a faire??

  4. #4
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Par défaut
    re,
    pas le service pack 6 le SDK !
    http://www.microsoft.com/msdownload/platformsdk/sdkupdate/default.htm?p=/msdownload/platformsdk/sdkupdate/update.htm

  5. #5
    Invité
    Invité(e)
    Par défaut
    le sdk je veut bien mais il veut installer des trucs que j'ai pas je vois.
    en plus il veut l'installer dans un repertoire de mon autre partition. dans ce cas je vois pas ou est l'update.
    desolé si je comprend rien mais c compliqué tout ca
    j'ai d'installer Sp5 et 6 ca va rien changer?

    Je regarde la liste, il me propose Core SDK (Windows Server 2003), Internet Development SDK (Version 6.0), Internet Information Server SDK (Version 5.1), Microsoft Data Access Components (Version 2.7) ,Windows Installer SDK (Version 2.0),Tablet PC SDK,WMI SDK ,Windows Media SDK, Windows Media Services SDK, Debugging Tools for Windows, Register environment variables .
    tout ces truc j'en ai pas l'utilité (enfin je crois) . qu'es ce que je doit prendre pour mettre a jour les lib de l'api genre user32.lib

  6. #6
    Invité
    Invité(e)
    Par défaut
    bon j'ai installer le core windowss server 2003, il ma apparement installé les nouveau fichiers mis a jour dans mon repertoire D:\Program Files\Microsoft SDK\.
    Comment je fais pour dire a VC++ que les bon fichier mis a jours sont la???

  7. #7
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Par défaut
    salut,
    pour specifier les chemins si c'est pas deja fait par l'install:
    menu Tools Options Directories :
    selectionner path includes dans "show directories for":
    C:\PROGRAM FILES\MICROSOFT SDK\INCLUDE\MFC
    C:\PROGRAM FILES\MICROSOFT SDK\INCLUDE
    à mettre en premier dans la liste.

    option librairies:
    C:\PROGRAM FILES\MICROSOFT SDK\LIB


  8. #8
    Invité
    Invité(e)
    Par défaut
    J'ai bien ce que tu a dis mais ca me met toujours les message d'erreurs du debut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    error C2065: 'WS_EX_LAYERED' : undeclared identifier
    error C2065: 'SetLayeredWindowAttributes' : undeclared identifier
    error C2065: 'LWA_ALPHA' : undeclared identifier
    pourtant la il sont bien dans le nouveau <winuser.h>
    es-ce que tu peut me dire si j'ai fait une betise dans ma config :

    merci

  9. #9
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Par défaut
    re,
    bon si tu t'en sors pas il y a un lien pas mal sur codeproject
    qui utilise GetProcAddress pour acceder a la fonction:
    http://www.codeproject.com/dialog/wintrans1.asp


  10. #10
    Invité
    Invité(e)
    Par défaut
    Merci pour ton lien c vrai ca resoudrai mon probleme .
    Mais j'aimerai comprendre pourquoi ca ne marche pas meme avec l'update
    es ce qu'il faut que je refasse mon projet pour que ca remarche.
    ou a la barbare copier et coller toutes les nouvelles lib et .h dans l'ancien repertoire :
    Si quelqu'un a rencontrer ce probleme peut t'il m'eclairer
    bon je declare mes include comme ca dans stdafx.h
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    #include <windows.h>
    #include <WinUser.h>
    #include <WinSock2.h>
    #include <time.h>
    #include <COMMCTRL.H>
    #include <SHLOBJ.H>
    #include <RICHEDIT.H>
    #include <stdio.h>
    ya t'il un pb, une autre facon de les appelées quand elles sont dans des repertoires differents.
    Es ce quelles sont dans le bon ordre .
    pourquoi j'ai toujours des galeres comme ca

  11. #11
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Par défaut
    re,
    deja il est bizarre ton stdafx.h .
    c'est quoi le type de projet ? MDI ,SDI ,Dialog, win32?
    voila ce que j'ai moi dans un stdafx.h:
    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
     
    #define VC_EXTRALEAN		// Exclude rarely-used stuff from Windows headers
     
    #include <afxwin.h>         // MFC core and standard components
    #include <afxext.h>         // MFC extensions
    #include <afxtempl.h>
    #include <afxdisp.h>        // MFC Automation classes
    #include <afxdtctl.h>		// MFC support for Internet Explorer 4 Common Controls
    #ifndef _AFX_NO_AFXCMN_SUPPORT
    #include <afxcmn.h>			// MFC support for Windows Common Controls
    #include <afxtempl.h>
    #endif // _AFX_NO_AFXCMN_SUPPORT
    #if _MFC_VER < 0x0700
    //	#include <..\src\afximpl.h>
    #include <..\mfc\src\afximpl.h>
    #else	
    #endif
    pour un projet mfc pas de Windows.h mais afxwin.h.

  12. #12
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Par défaut
    re,
    encore moi !,
    autre precision j'ai compile un autre exemple qui utilise l'api 32 dans un projet MFC sans erreurs nickel .
    le lien
    http://www.codeproject.com/useritems/Clock.asp
    verifis si ta config permet de compiler / linker ce projet.

  13. #13
    Invité
    Invité(e)
    Par défaut
    c'est une application win32, biensur je n'ai pas tous mis. par contre je n'ai aucun MFC ( je sais meme pas ce que c'est ).
    voici mon stdax.h en entier
    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
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    // stdafx.h : include file for standard system include files,
    //  or project specific include files that are used frequently, but
    //      are changed infrequently
    //
     
    #if !defined(AFX_STDAFX_H__A9DB83DB_A9FD_11D0_BFD1_444553540000__INCLUDED_)
    #define AFX_STDAFX_H__A9DB83DB_A9FD_11D0_BFD1_444553540000__INCLUDED_
     
    #if _MSC_VER > 1000
    #pragma once
    #endif // _MSC_VER > 1000
     
    #define WIN32_LEAN_AND_MEAN		// Exclude rarely-used stuff from Windows headers
     
     
    #include <stdio.h>
    #include <Windows.h>
    #include <WinSock2.h>
    #include <WinUser.h>
    #include <time.h>
    #include <COMMCTRL.H>
    #include <SHLOBJ.H>
    #include <RICHEDIT.H>
     
     
     
    #include "resource.h"
     
     
    DWORD WINAPI pgm(LPVOID lpParam);
    DWORD WINAPI Emission_cmd(LPVOID lpParam);
    DWORD WINAPI Reception_cmd(LPVOID lpParam);
    DWORD WINAPI Emission_data(LPVOID lpParam);
    DWORD WINAPI Reception_data(LPVOID lpParam);
    int connection_cmd(void);
     
     
    // TODO: reference additional headers your program requires here
     
    //{{AFX_INSERT_LOCATION}}
    // Microsoft Visual C++ will insert additional declarations immediately before the previous line.
     
    #endif // !defined(AFX_STDAFX_H__A9DB83DB_A9FD_11D0_BFD1_444553540000__INCLUDED_)
    j'ai essayer plusieur truc :
    1) j'ai renomer l'ancien <winuser.h> cela n'a rien changer.
    2) j'ai essayer en mettant le chemin complet "d:\.....\winuser.h"
    3) Il le trouve bien mais il ne prend pas en compte les informations qui sont dedans ( j'ai reecrit les definition des fonction et des variable dans stdax.h et il m'a mis juste une erreur comme comme in ne trouvai pas la fontion dans la lib.

    la je suis vraiment desperé.
    je vais dans un premier temp tous desinstaller et le refaire .
    ou sinon je prend le taureau par les cornes et je pas A Visual studio .net

  14. #14
    Invité
    Invité(e)
    Par défaut
    j'ai essayer de compiler le projet que tu m'a indiquer. voici le resultat :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    LINK : fatal error LNK1104: cannot open file "mfc42d.lib"

  15. #15
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Par défaut
    re,
    dans tes chemins sur les path librairies il manque:
    C:\Program Files\Microsoft Visual Studio\VC98\MFC\LIB

  16. #16
    Invité
    Invité(e)
    Par défaut
    ca marche pour la montre
    mais toujours pas pour mon appli
    sinon en jettant un coup d'oeil dans un readme.html du dossier de l'update on peut lire
    The details of configuring compiler and linker options are described in the Getting Started section of the documentation as well as in Win32.mak, which is located in the %MSSDK%\include directory. You can use one of the following methods to build applications from the command prompt using your own makefiles.
    Je ne trouve pas la partie Getting started et comme par hazard c'est celle la qui pour configurer le compilo et le link

  17. #17
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Par défaut
    re,
    montre tes options de compils onglet C++ preprocessor definitions:

  18. #18
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Par défaut
    re, et modifis ton stdafx.h avec ça:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    #if _MSC_VER > 1000
    #pragma once
    #endif // _MSC_VER > 1000
    #define WINVER 0x0500
    #define _WIN32_WINNT 0x0500

  19. #19
    Invité
    Invité(e)
    Par défaut
    dans preprocessor definition j'ai
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    WIN32,_DEBUG,_WINDOWS,_MBCS
    ou cas ou dans project option j'ai
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    /nologo /MLd /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /Fp"Debug/downloader.pch" /Yu"stdafx.h" /Fo"Debug/" /Fd"Debug/" /FD /GZ /c

  20. #20
    Invité
    Invité(e)
    Par défaut
    Ca marcheeeeeeee !!!!!!
    je sais pas comment te remercier pour toutes l'aide que tu m'a apporté.
    il fallait rajouter
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    #if _MSC_VER > 1000 
    #pragma once 
    #endif // _MSC_VER > 1000 
    #define WINVER 0x0500 
    #define _WIN32_WINNT 0x0500
    j'avais vu du code de ce genre la dans winuser.h mais ca avait pas tilter dans ma tête ( c sur que si le Windows n'es pas le bon le compilo bronche )
    Milles merci farscape

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. [c++ Win32] Edit Control avec fopen
    Par swo.line dans le forum C++
    Réponses: 10
    Dernier message: 05/05/2008, 14h38
  2. [C++ Win32] un menu avec une fenêtre Dialog
    Par swo.line dans le forum C++
    Réponses: 0
    Dernier message: 27/04/2008, 11h03
  3. (win32) Fenetre fille avec scrollbar
    Par xeland dans le forum Windows
    Réponses: 4
    Dernier message: 11/11/2005, 10h05
  4. [WIN32][D6] Composants avec DesignIntf et Proxies
    Par Fab--- dans le forum Composants VCL
    Réponses: 3
    Dernier message: 08/07/2005, 12h16
  5. [API WIN32] Pb avec SHGetSpecialFolderLocation
    Par Invité dans le forum MFC
    Réponses: 3
    Dernier message: 27/01/2004, 21h19

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