CString über Schnittstelle

Gast #2359570
Lesenswert?

Hallo PC-Programmierer,

ich sitze gerade vor dem VS10 und mache ein Projekt mit den MFC´s.
Jetzt habe ich in einem anderen Forum gelesen, dass ich einen CString so 
umwandeln kann:

  LPCSTR sending_data = (LPCSTR)(LPCTSTR)cstrCommand;

Den LPCSTR sending_data schicke ich an eine Funktion, welchen den über 
die Serielle Schnittstelle ausgibt.
Doch beim Debugging merke ich, dass aus einem Wort, bsp.: "Hallo" nur 
ein "H" übrig bleibt.

Ich sehe im Debugging bei der Variable noch "Bad Ptr" Was hat das zu 
bedeuten?

Ich hoffe jemand weiß mir Rat, danke schonmal!

Dennis


EDIT: Ich bin derzeit der Meinung es geht einfach nicht, ich hab jetzt 
schon X Möglichkeiten ausprobiert! Irgendwie muss es doch aber möglich 
sein oder? Ich hab einen x-beliebigen Text als CString und möchte den 
einfach über die Serielle Schnittstelle senden. Die verlangt nunmal 
einen LPCSTR...
Gast #2359647
Lesenswert?

1
/// UMWANDLUNG
2
    int count = cstrCommand.GetLength();
3
    char* c = new char[count + 1];
4
    for(int j = 0; j < count; j++)
5
  {
6
       c[j] = static_cast<char> (* cstrCommand.Mid(j, 1));
7
    }
8
    c[count] = '\0';
9
  LPCSTR sending_data = LPCSTR(c);
10
//// UMWANDLUNG ENDE

Mit diesem Code ist es möglich einen UNICODE Strng zu einem normalen 
ASCII String zu formen!
Hab den soeben im Internet gefunden!

DANKE Karl Heinz!

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren