Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » VC++ / MFC » Methode Setat()

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 <
000
19.11.2003, 17:50 Uhr
~Lord_J
Gast


Folgendes Problem, ich will einen ausgelesenen Buffer(char) in einem CString Fenster ausgeben, dazu muss ich ja den Buffer in ein CString konvertieren und wollte dazu die Methode SetAt() benutzen. Hat da mal jemand ein kleines Beispiel, wie ich das jetzt anwenden muss??
Danke
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
19.11.2003, 18:28 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)


also eigentlich musst du nicht nen CString draus machen das sollte der auch so fressen

C++:
GetDlgItem(IDC_....)->SetWindowText("blablabla");



wenn du es aber unbedingt in nen CString packen willst


C++:
char mystring[]="blablabla";
CString str;
str=mystring;


--
...fleißig wie zwei Weißbrote
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
19.11.2003, 20:15 Uhr
~Lord_J
Gast


Hm, das klappt auch nicht, also es ist so, dass ich etwas an die Schnittstelle RS232 sende, was auch klappt, aber das auslesen von den Daten, die ich zurückbekomme klappt nicht und die will ich halt Eingabefeld wieder ausgeben, der ich eine Membervariable im CString format zugewiesen habe.


C++:

void CFlukeDlg::OnSenden()
{
    // TODO: Code für die Behandlungsroutine der Steuerelement-Benachrichtigung hier einfügen


    UpdateData(TRUE);

    //Nachricht senden
        HANDLE handle;

    handle = CreateFile ("COM1",GENERIC_READ | GENERIC_WRITE,0,NULL,OPEN_EXISTING,0,NULL);

    DCB dcb;

    GetCommState(handle,&dcb);

    dcb.BaudRate = CBR_9600;
    dcb.Parity =   NOPARITY;
    dcb.ByteSize = 8;
    dcb.StopBits = ONESTOPBIT;

    SetCommState (handle , &dcb);
    GetCommState (handle, &dcb);


    SetupComm(handle, 40, 40);

    DWORD BytesWritten;
    BOOL status;
    BOOL status2;
    DWORD error;
    COMSTAT comstat;
    char Buffer[40];
    char Buffer2[40];
    

    for (int k=0; k < strlen(m_senden); k++)
    {
        Buffer[k] = m_senden[k];
    }
    

    Buffer[strlen(m_senden)] = '\x0D';
    Buffer[strlen(m_senden)+1] = '\x0A';
    Buffer[strlen(m_senden)+2] = '\0';

    status = WriteFile(handle,&Buffer,strlen(Buffer),&BytesWritten, NULL);


    Sleep(1000);
            
        
    BytesWritten = 0;
    ClearCommError (handle, &error, &comstat);
    status2 = ReadFile (handle, Buffer, comstat.cbInQue, &BytesWritten, NULL);

    m_empfangen=Buffer2;

    // Bildschirm aktualisieren
    UpdateData(FALSE);
}



und das auslesen von Buffer2 in die Membervariable m_empfangen bekomme ich nicht hin.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
19.11.2003, 21:29 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)


Ich würde vermuten das das daran liegt das am ende von buffer kein 0 byte steht;

probier mal

C++:
Buffer2[BytesWritten]=0;
m_empfangen=Buffer2;


--
...fleißig wie zwei Weißbrote
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ 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: