Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » VC++ / MFC » CString to LPCTSTR

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: [ 1 ] > 2 <
010
05.07.2005, 17:53 Uhr
~raiser999
Gast


oh funktioniert leider nicht ganz

kommt folgender Fehler:

cannot convert parameter 2 from 'unsigned short *' to 'const char *' !?
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
011
05.07.2005, 19:53 Uhr
FloSoft
Medialer Over-Flow
(Administrator)


probiers mal so:


C++:
const char *cs = new [s.GetLength()+1];
strncpy(cs, s, s.GetLength());
GetProcAddress(handle, cs);
delete[] cs;



hast du ausversehen

GetProcAddress(handle, s.GetLength()) geschrieben???

oder probier mal den m_pszData parameter vom CString
--
class God : public ChuckNorris { };

Dieser Post wurde am 05.07.2005 um 19:56 Uhr von FloSoft editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
012
06.07.2005, 08:24 Uhr
~raiser999
Gast


Funktioniert leider auch nicht


C++:
CString s;
LPTSTR cs = new TCHAR[s.GetLength()+1];
_tcsncpy(cs, s, s.GetLength());
mdata.GetData=(MYFUN15) GetProcAddress(mdata.hMod,cs);    



glaub ich muß irgend einen anderen Ansatz suchen :-(
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
013
06.07.2005, 08:44 Uhr
FloSoft
Medialer Over-Flow
(Administrator)


Ah mom, hab grad nachgelesen:


Zitat:

CString basiert auf dem Datentyp TCHAR. Wenn das Symbol _UNICODE für einen Erstellungsvorgang Ihres Programms definiert worden ist, wird TCHAR als Typ wchar_t definiert (...)


probier mal folgendes:


C++:
#include <atlconv.h>

CString s;
GetProcAddress(handle, CW2A(s));


--
class God : public ChuckNorris { };
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
014
06.07.2005, 11:14 Uhr
~raiser999
Gast


Ich weiß jetzt auich nicht trotz include ist CW2A undeclarde !?
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
015
06.07.2005, 11:19 Uhr
FloSoft
Medialer Over-Flow
(Administrator)


definiers selbst wenn ers nicht findet:


C++:
template< int t_nBufferLength = 128 >
class CW2AEX
{
public:
    CW2AEX( LPCWSTR psz ) throw(...) :
        m_psz( m_szBuffer )
    {
        Init( psz, _AtlGetConversionACP() );
    }
    CW2AEX( LPCWSTR psz, UINT nCodePage ) throw(...) :
        m_psz( m_szBuffer )
    {
        Init( psz, nCodePage );
    }
    ~CW2AEX() throw()
    {
        if( m_psz != m_szBuffer )
        {
            free( m_psz );
        }
    }

    operator LPSTR() const throw()
    {
        return( m_psz );
    }

private:
    void Init( LPCWSTR psz, UINT nCodePage ) throw(...)
    {
        if (psz == NULL)
        {
            m_psz = NULL;
            return;
        }
        int nLengthW = lstrlenW( psz )+1;
        int nLengthA = nLengthW*2;

        if( nLengthA > t_nBufferLength )
        {
            m_psz = static_cast< LPSTR >( malloc( nLengthA*sizeof( char ) ) );
            if (m_psz == NULL)
            {
                AtlThrow( E_OUTOFMEMORY );
            }
        }

        if (::WideCharToMultiByte( nCodePage, 0, psz, nLengthW, m_psz, nLengthA, NULL, NULL ) == 0)
        {
            AtlThrowLastWin32();
        }
    }

public:
    LPSTR m_psz;
    char m_szBuffer[t_nBufferLength];

private:
    CW2AEX( const CW2AEX& ) throw();
    CW2AEX& operator=( const CW2AEX& ) throw();
};
typedef CW2AEX<> CW2A;


--
class God : public ChuckNorris { };

Dieser Post wurde am 06.07.2005 um 11:24 Uhr von FloSoft editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
016
06.07.2005, 13:21 Uhr
~raiser999
Gast


wahnsinn funktioniert echt super

danke für deine Mühe


gruß Andi
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: [ 1 ] > 2 <     [ VC++ / MFC ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: