# String in LPWSTR konvertieren?



## partitionist (10. April 2006)

Ich hab folgende Funktion:

void ChangeWindowsPassword(LPWSTR wUserName, LPWSTR wNewPassword, LPWSTR wComputerName, LPWSTR wOldPassword)

Die Eingabe erfolgt über der Konsole, hierbei werden Strings eingelesen.
Wie kann ich jedoch der Funktion diese Strings weitergeben?


----------



## deepthroat (10. April 2006)

Hi.

Was für Strings liest du da ein? char*?

LPWSTR bedeutet einfach "Long Pointer to Wide String". D.h. wenn du einen LPSTR (char*) hast, dann könntest du so umwandeln:
	
	
	



```
#include <atlbase.h>

USES_CONVERSION;
   
LPWSTR xyz = A2W("xyz");
```
Siehe http://www.codeproject.com/cpp/unicode.asp?df=100&forumid=524&exp=0&select=692214

Gruß


----------



## smilysep (20. August 2007)

Einfacher ist die folgende Lösung:


```
LPTSTR szName = _T("xyz");
```


----------



## deepthroat (20. August 2007)

smilysep hat gesagt.:


> Einfacher ist die folgende Lösung:
> 
> 
> ```
> ...


Nein, denn es ist keine Lösung für das Problem. Es geht darum wie man einen String umwandelt - nicht wie man Stringliterale bei Unicode bzw. nicht-Unicode bzw. MBC verwendet.

Das Stringliteral "xyz" war nur zur Veranschaulichung gedacht. partionist hat doch gesagt das die String von der Konsole eingelesen werden!

Gruß


----------



## Daniel Toplak (20. August 2007)

Optional, kann man die Strings auch gleich mit z.B.: "wscanf()" als "wchar_t *" von der Konsole einlesen.


----------

