Umwandlung



  • Hallo,

    ich bitte um ein wenig Hilfe, da ich selbst nicht weiter komme:

    Ich versuche eine DLL zu schreiben, in welcher ich die NeroAPI einbinde.

    Dabei muss ich aus dem Folgenden Quellcode:

    void NERO_CALLBACK_ATTR CCallNeroApp::SetPhaseCallback(void *pUserData, const char *text)
    {
        ((CNeroFddlesDlg*)pUserData)->AppendString("Phase: " + (CString)*text);
        return;
    }
    

    diesen Quellcode machen:

    void NERO_CALLBACK_ATTR CCallNeroApp::SetPhaseCallback(void *pUserData, const char *text)
    {
        AppendString("Phase: " + (CString)*text);
        return;
    }
    

    was aber zu Fehlern führt:

    D:\Projekte\CallNero\CallNero.cpp(482) : error C2352: 'CCallNeroApp::AppendString' : Unzulaessiger Aufruf einer nichtstatischen Member-Funktion
            d:\projekte\callnero\callnero.h(58) : Siehe Deklaration von 'AppendString'
    

    AppendString ist wie folgt definiert:

    void CCallNeroApp::AppendString(CString str)
    

    Ich glaube, dass ich das Problem dadurch lösen würde, indem ich aus:

    const char *text
    

    einen

    CString
    

    mache.

    Vielen Dank!

    Gruß Wathlon



  • Was willst Du hiermit erreichen:

    (CString)*text
    

    😕



  • Hallo,

    das war die Vorgabe des original Quellcode, ich selbst kann mit

    (CString)*text
    

    nichts anfangen, das ist mein Problem.

    Hoppala, da war ein Fehler:

    Ich will folgendes:

    void NERO_CALLBACK_ATTR CCallNeroApp::SetPhaseCallback(void *pUserData, const char *text)
    {
        CString str;
        // Irgendwie aus text str machen, ...
        AppendString("Phase: " + str);
        return;
    }
    

    Danke!

    Gruß Wathlon

    [ Dieser Beitrag wurde am 10.02.2003 um 11:52 Uhr von Wathlon editiert. ]



  • So problematisch?

    void NERO_CALLBACK_ATTR CCallNeroApp::SetPhaseCallback(void *pUserData, const char *text)
    {
        CString str(text);
        // Irgendwie aus text str machen, ...
        AppendString("Phase: " + str);
        return;
    }
    
    void NERO_CALLBACK_ATTR CCallNeroApp::SetPhaseCallback(void *pUserData, const char *text)
    {
        AppendString("Phase: " +  CString( text));
        return;
    }
    
    void NERO_CALLBACK_ATTR CCallNeroApp::SetPhaseCallback(void *pUserData, const char *text)
    {
        // Irgendwie aus text str machen, ...
        AppendString( CString("Phase: ") + text);
        return;
    }
    

    [ Dieser Beitrag wurde am 10.02.2003 um 12:01 Uhr von RenéG editiert. ]



  • Hallo,

    war nicht so problematisch, ich hatte das gleiche gemacht wie Du, aber nach wie vor folgende Fehlermeldung erhalten:

    D:\Projekte\CallNero\CallNero.cpp(482) : error C2352: 'CCallNeroApp::AppendString' : Unzulaessiger Aufruf einer nichtstatischen Member-Funktion
            d:\projekte\callnero\callnero.h(58) : Siehe Deklaration von 'AppendString'
    

    Aber ich habe mich an fürhere Probleme erinnert, und ...

    void NERO_CALLBACK_ATTR CCallNeroApp::SetPhaseCallback(void *pUserData, const char *text)
    {   CString str = text;
        theApp.AppendString("Phase: " + str);
        return;
    }
    

    mit der Instanz der Klasse gings, ...

    Danke, ich habe wieder bei meinen Problemen an der falschen Stelle gesucht!

    Gruß Wathlon


Anmelden zum Antworten