Bonjour,
j'ai un ptit souci à l'exécution de mon appli développée en c++ sous VS2005
Voilà ce que j'ai et d'où je soupçonne que vienne le pb :
dans le .h
dans le .ccp
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 class MaClasse { public: STDMETHOD (SetName) (LPWSTR Name); protected: LPWSTR m_Name; }
et pour l'utilisation :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 SDTMETHODIMP Maclasse::SetName(LPWSTR Name) { m_Name = Name; return S_OK; }
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 MaMathode(ClasseParam param) { MaClasse toto; LPWSTR nom(NULL); size_t convertedChars = 0; HRESULT Result; NewsSTR(L"",&nom); mbstowcs_s(&convertedChars, nom, strlen(param.Nom) + 1, param.Nom, 18); // param.Nom étant de type TCHAR[17] Result = toto.SetName(nom); CoTaskMemFree(nom); }
Et donc, voilà
ça compile très bien,
mais à l'exécution, ça pète de n'importe où
jamais au même endroit...
(un truc du genre 'violation d'accès de la lecture...')
et donc, je soupçonne que ça vienne du mbstowcs_s, car si je le mets en commentaire, bah, ça va...
je suppose que je m'y prends mal,
mais comment dois-je faire??
Merci
Partager