String Variable einlesen



  • Ich hab mir eine Dll geschrieben und möchte jetzt ein Anwendungsprogramm dazu schreiben.
    Also hab ich mir ein Eingabefeld gemacht und eine Membervariable vom Typ CString hinzugefügt.Daneben ein Button und wenn gedrückt wird soll der String eingelesen werden und an meine DLL - Funktion übergeben werden. Alles klappt, bloß meine Dll Funktion erwartet einen String, wenn ich dort meine Membervariable einfüge bringt er mir folgendes:

    error C2664: 'new1' : Konvertierung des Parameters 1 von 'class CString' in 'class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >' nicht moeglich
    

    P. S. new 1 ist meine Funktion, wo liegt mein Fehler?

    void CVersuch18_01Dlg::OnButton1() 
    {
    	UpdateData(TRUE);
    	__declspec(dllimport)void new1(string ModbusTCPAddress);
    	new1(m_EINGABE_IP);
    	// TODO: Code für die Behandlungsroutine der Steuerelement-Benachrichtigung hier einfügen
    
    }
    


  • Weiß denn keiner ob es möglich ist mit dem MFC - Anwendungsassistenten eine normale string Variale zu deklarieren, oder eine CString Varible in eine string Variable umzuwandeln?



  • CString mit (LPCTSTR) casten ...

    string_var = (LPCTSTR)cstring_var;
    


  • Hab was besseres aber trotzdem danke:

    string STRING;
    CString cstring;
    STRING = static_cast<const char*>(cstring);
    


  • Und was glaubst du was ein LPCTSTR ist.

    Was macht du bei deinem Code wenn du UNICODE verwendest?


Anmelden zum Antworten