char aus VARIANT
Hallo.
Ich habe folgendes Praoblem: Ich möchte den bstrVal eines VARIANT in ein char Array wandeln.
Ich muss den mir übergebenen Wert aus VARIANT.bstrval auf sein Zeichen prüfen.
Wie kann ich nun den Wert umwandeln?
Habs schon folgendermaßen versucht, kommt aber Blödsinn (teilweise) heraus.
int WINAPI xxxx (........, VARIANT varStartValue, .......)
{
char ansiValue[20];
.
.
.
WideCharToMultiByte(CP_ACP, 0, varStartValue.bstrVal, SysStringLen(varStartValue.bstrVal) + 1, ansiValue, 20, 0, 0);
fprintf (fFile,"%s\n",varStartValue.bstrVal);
.
.
.
}
Hier bekomme ich, wenn eine Zahl in .bstrVal steht ein richtiges Ergebnis.
Sobald allerdings eine Gleitpunktzahl oder gar ein String drin stehen, kommt nur noch Quark raus.
Bin hilflos und alle bisher gefundenen Tips führten auch wenn überhaupt zu dem obigen Versuch.
Wäre sehr dankbar über schnelle Hilfe.
MfG
Mirko
Ich habe folgendes Praoblem: Ich möchte den bstrVal eines VARIANT in ein char Array wandeln.
Ich muss den mir übergebenen Wert aus VARIANT.bstrval auf sein Zeichen prüfen.
Wie kann ich nun den Wert umwandeln?
Habs schon folgendermaßen versucht, kommt aber Blödsinn (teilweise) heraus.
int WINAPI xxxx (........, VARIANT varStartValue, .......)
{
char ansiValue[20];
.
.
.
WideCharToMultiByte(CP_ACP, 0, varStartValue.bstrVal, SysStringLen(varStartValue.bstrVal) + 1, ansiValue, 20, 0, 0);
fprintf (fFile,"%s\n",varStartValue.bstrVal);
.
.
.
}
Hier bekomme ich, wenn eine Zahl in .bstrVal steht ein richtiges Ergebnis.
Sobald allerdings eine Gleitpunktzahl oder gar ein String drin stehen, kommt nur noch Quark raus.
Bin hilflos und alle bisher gefundenen Tips führten auch wenn überhaupt zu dem obigen Versuch.
Wäre sehr dankbar über schnelle Hilfe.
MfG
Mirko
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 49929
Url: https://administrator.de/contentid/49929
Ausgedruckt am: 26.11.2024 um 16:11 Uhr