Quand je construis mon Visual C++ Solution (2005), je reçois les avertissements suivantsComment supprimer 'ImageList_Read': avertissement de lien dll incohérent?
1> c: \ winddk \ 7000.0.winmain_win7beta.081212-1400 \ inc \ api \ Commctrl.h (678): voir précédent définition du terme 'ImageList_Read'
1> e: \ xml parse \ développement \ gui \ h \ wtl4mfc.h (6): C4273 Attention: 'ImageList_Write': liaison dll incompatible
1> c: \ winddk \ 7000.0.winmain_win7beta.081212-1400 \ inc \ api \ commctrl.h (679): voir la définition précédente de 'ImageList_Write'
1> e: \ xml parse \ développement \ gui \ h \ wt l4mfc.h (8): C4273 d'avertissement: 'ImageList_ReadEx': liaison dll incompatible
1> c: \ winddk \ 7000.0.winmain_win7beta.081212-1400 \ inc \ api \ Commctrl.h (686): voir définition précédente de 'ImageList_ReadEx'
1> e: \ xml parse \ développement \ gui \ h \ wtl4mfc.h (9): C4273 d'avertissement: 'ImageList_WriteEx': liaison dll incompatible
1> c: \ winddk \ 7000.0.winmain_win7beta.081212-1400 \ inc \ api \ commctrl.h (687): voir la définition précédente de 'ImageList_WriteEx'
Lorsque j'ai vérifié ces deux fichiers, je peux voir ce qui suit:
**** **** Dans wtl4mfc.h
extern "C" { HIMAGELIST WINAPI ImageList_Read (LPSTREAM PSTM); BOOL WINAPI ImageList_Write (HIMAGELIST himl, LPSTREAM pstm);
#if (_WIN32_WINNT> = 0x0501) HRESULT WINAPI ImageList_ReadEx (dwFlags DWORD, LPSTREAM PSTM, REFIID riid, PVOID * VPP); HRESULT WINAPI ImageList_WriteEx (HIMAGELIST, DWORD dwFlags, LPSTREAM pstm);
#endif };
Dans Commctrl.h fichier je peux voir ce qui suit:
WINCOMMCTRLAPI HIMAGELIST WINAPI ImageList_Read (__ dans struct IStream * PSTM); WINCOMMCTRLAPI BOOL WINAPI ImageList_Write (__ dans HIMAGELIST himl, __ dans struct IStream * pstm); Je suis un débutant en Visual C++ et c'est à partir d'un code qui est disponible pour moi de maintenir. Comment puis-je supprimer ces avertissements? Ces avertissements ne sont pas affichés si je construis le code où la version inférieure de Winddk est installée.
Qu'est-ce qui cause ces avertissements? Comment est-ce que je peux les retirer?
WINCOMMCTRLAPI est développé en tant que DECLSPEC_IMPORT. J'ai modifié les paramètres du projet et supprimé le chemin d'accès winddk des répertoires Include supplémentaires. Les avertissements ont disparu. Merci – Techiegirl