ubuntuusers.de

wxString zu unsigned char*

Status: Ungelöst | Ubuntu-Version: Ubuntu 10.04 (Lucid Lynx)
Antworten |

Hiswif

Anmeldungsdatum:
9. August 2007

Beiträge: 142

Hallo

wie der Titel schon sagt möchte ich einen wxString in unsigned Char* konvertieren. Ich nutze wxWidgets-2.8.12 Unicode build, als IDE CodeBlocks.

hier mal die initialisierung;

1
2
wxString str_write_buffer(wxT("Hallo Hallo"));
unsigned char* write_buffer;

Ich habe inzwischen seit 3 Tagen gegoogelt und finde grad keinen ansatz mehr, vieleicht sitze ich auch schon zu lange vor dem Ding hier 😉 Ich brauche die umwandlung für die Funktion http://www.intra2net.com/en/developer/libftdi/documentation/group__libftdi.html#gaa79550f209ce3327a5df03f2bd1e80f0, sowie für http://www.intra2net.com/en/developer/libftdi/documentation/group__libftdi.html#ga93c2c5f546f5968ae497c099d319ff32. Bei letzerem möchte ich die Gerätebeschreibung/Seriennummer aus einem wxTextCtrl auslesen und dann das dort eingegebene Gerät öffnen.

Was noch zu erwähnen wäre ist das ich bei C relativ neu bin, eigne es mir gerade an. So langsam bin ich am verzweifeln ☹

Ich hoffe ihr könnt mir wiedermal helfen.

Danke schonmal im voraus.

Ryuno-Ki

Avatar von Ryuno-Ki

Anmeldungsdatum:
7. März 2011

Beiträge: 1105

Wohnort: Stuttgart

Irgendwie liest sich das wie hier: http://wiki.wxwidgets.org/WxString

Kannst du hinreichend Englisch?

Hiswif

(Themenstarter)

Anmeldungsdatum:
9. August 2007

Beiträge: 142

Huhu.

Also ich habe mich nochmal ausgeschlafen rangesetzt. Jetzt scheint es zu gehen. Ich glaube es ist zwar nicht die schönste Lösung aber wenigstens bekomme ich erstmal keine Fehlermeldung. die Seite die du mir gepostet hast kannte ich schon, nur irgendwie bekam ich da immer fehlermeldungen das ich nicht von const char* zu unsigned char* konvertieren kann. Ich gehe jetzt nen Umweg, sodass ich mal denke das es nicht grad die eleganteste methode ist. wenn das grundlegend gefährlich und falsch sein sollte, dann schreibt es einfach 😉

hier mal der Code;

1
2
3
4
5
6
wxString str_write_buffer( wxT("Hello world") );
char buffer[100];
unsigned char* u_write_buffer;
strcpy( buffer, (const char*)str_write_buffer.mb_str(wxConvUTF8) );
strcpy((char*)u_write_buffer,buffer);
    ftstatus=ftdi_write_data(&ftdic,u_write_buffer,str_write_buffer.length());

Ist halt aus dem Link und was bei http://www.mikrocontroller.net/topic/62777 steht zusammengebastelt.

Ich konvertiere den string also erstmal in nen char um ihn dann in nen unsigned char zu copieren. Wenn ich das so richtig verstanden habe. Am englisch sollte es dabei eher nicht liegen, eher zur Zeit am verständniss, oder der Ruhe 😉 (Weihnachtsstress mit nem einjährigen kleinen knirps der den Papi ja auch haben will in der Zeit wo er daheim ist 😉 )

Wenn ihr/du also lust und zeit hättest mir kurz verständlich zu erklären ob das so richtig ist, oder halt nicht, wäre ich echt zu dank verbunden.

update:

also gerade mal so eingehackt und versucht das ganze laufen zu lassen führt zu einem abbruch, scheint also auch nicht zu funktionieren ☹

Antworten |