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 :

int en BSTR


Sujet :

MFC

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Juillet 2004
    Messages
    12
    D�tails du profil
    Informations forums :
    Inscription : Juillet 2004
    Messages : 12
    Par d�faut int en BSTR
    Comment faire pour transformer un int en bstr

    je fais comme ceci
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
     
    	CString aux ="";
     
    	int quantity = Quantity[i];
    	aux.Format( "%ld", quantity );
     
    	bstr=aux.AllocSysString();
    en compilation �a passe masi des que j'essaie de faire une execution pas a pas �a plante

    je fais la meme demarche pour transformer un double en bstr et �a marche sans probleme
    si vous avez des idees?? ou d'autre fa�on de transformer un int en bstr

    Merci

  2. #2
    Membre exp�riment� Avatar de BertrandA
    Inscrit en
    Ao�t 2003
    Messages
    170
    D�tails du profil
    Informations forums :
    Inscription : Ao�t 2003
    Messages : 170
    Par d�faut
    CString::AllocSysString
    Note You must link with MFCO42D.DLL to obtain this function if you are using MFC in a shared library and building in debug mode. You can cause the linker to get MFCO42D.DLL automatically by including <afxdisp.h> in your STDAFX.H file.
    C'est fait �a ?

  3. #3
    Membre averti
    Inscrit en
    Juillet 2004
    Messages
    12
    D�tails du profil
    Informations forums :
    Inscription : Juillet 2004
    Messages : 12
    Par d�faut
    oui c'est fait et pourtant �a ne marche pas
    "�a ne marche pas juste pour le type int car je fais de meme avec un double et �a passe sans probleme"

    ici �a ne marche pas
    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
     
    		bstr = SysAllocString(L"int");
    		pXMLDom->createElement(bstr,&pElement2);
    		SysFreeString(bstr);
    		bstr=NULL;
     
    		int quantity = Quantity[i];
    		aux.Format( "%ld", quantity );
     
    		bstr=aux.AllocSysString();
    		pElement->put_text(bstr);
    		SysFreeString(bstr);
    		bstr=NULL;
     
    		// Add <int> to pdf.
    		AppendChildToParent(pElement2, pdf);
    		pElement2->Release();
    		pElement2=NULL;
    ici �a marche
    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
     
     bstr = SysAllocString(L"double");
       pXMLDom->createElement(bstr,&pElement2);
       SysFreeString(bstr);
       bstr=NULL;
     
       aux.Format("%lf",Price[i]);
       bstr=aux.AllocSysString();
       pElement->put_text(bstr);
       SysFreeString(bstr);
       bstr=NULL;
     
       // Add <double> to pdf.
       AppendChildToParent(pElement2, pdf);
       pElement2->Release();
       pElement2=NULL;

  4. #4
    Membre exp�riment� Avatar de BertrandA
    Inscrit en
    Ao�t 2003
    Messages
    170
    D�tails du profil
    Informations forums :
    Inscription : Ao�t 2003
    Messages : 170
    Par d�faut
    CString::AllocSysTring() lance une CMemoryException en cas d'�chec.
    Essaie d�j� de pi�ger les exceptions, �a peut te donner la cause de l'erreur et �viter le plantage.
    Et _UNICODE, il est d�fini en debug ?

  5. #5
    Membre averti
    Inscrit en
    Juillet 2004
    Messages
    12
    D�tails du profil
    Informations forums :
    Inscription : Juillet 2004
    Messages : 12
    Par d�faut
    je sais toujours pas pourquoi �a ne marche pas mais j'ai contourne le probleme

    je fais
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
     
    		int quantity = Quantity[i];
    		//aux.Format( "%ld", quantity );
    		//bstr=aux.AllocSysString();
    		bstr = charToBstr(itoa(quantity,aux1,64));
    avec charToBstr est

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    BSTR charToBstr (char * computecontextXml)
    {
    	BSTR bstr;
    	int lenA = lstrlenA(computecontextXml);
    	int lenW;
    	lenW = MultiByteToWideChar(CP_ACP, 0,computecontextXml, lenA, 0, 0);
    	bstr = SysAllocStringLen(0, lenW);
    	MultiByteToWideChar(CP_ACP, 0, computecontextXml, lenA, bstr, lenW);
    	return bstr;
     
    }

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. [.COM] R�server de la RAM fct 48h int 21h
    Par bulerias dans le forum x86 16-bits
    R�ponses: 5
    Dernier message: 06/12/2010, 14h33
  2. calcul melangeant int et long int ?
    Par ThR dans le forum C
    R�ponses: 2
    Dernier message: 06/01/2003, 01h13
  3. [Dev c++ 4] implicite declaration of function "int kbhi
    Par Torpedox dans le forum Dev-C++
    R�ponses: 5
    Dernier message: 01/01/2003, 13h37
  4. "ALTERER" une col. NULL en NOT NULL - Int
    Par Gandalf24 dans le forum SQL
    R�ponses: 2
    Dernier message: 28/12/2002, 00h07
  5. Les INT en mode prot�g�
    Par le mage tophinus dans le forum x86 16-bits
    R�ponses: 8
    Dernier message: 05/12/2002, 16h13

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