LPTSTR ist wenn du nich mit
unicode-funktionen arbeitest das gleiche wie ein LPSTR sonst ein LPWSTR
Code:
#ifdef
UNICODE
typedef LPWSTR LPTSTR;
#else
typedef LPSTR LPTSTR;
#endif
und ein LPSTR ist ein einfacher Zeiger auch ein "char"
also
.
Der Unterschied zur Unicodeversion ist, der Typ eines Zeichens (kein char sondern ein wchar_t)
das heißt, wenn du nicht mit unicodefunktionen arbeitest, musst du nichts ändern.
sonst umwandeln (Funktion nicht getestet):
Code:
void a2u(LPWSTR u, LPSTR a){
int i;
for(i=0;a[i];i++)u[i]=a[i];
u[i]=0;
return;
}
bei der Speicherbesorgung drauf achten, dass LPTSTR keine feste Länge hat.
also:
Code:
sOrdner = (LPTSTR) malloc (MAX_PATH*sizeof(LPTSTR));
dann noch das "s" löschen
und es sollte laufen