Konvertieren LPWSTR

paebels

Erfahrenes Mitglied
C++:
while (res!=ERROR_MORE_DATA)
{
	temp=BufPtr;
	for(i=1;i<=er;i++)
	{	
		System::String^ s = temp.shi502_netname;			
		System::Windows::Forms::MessageBox::Show(s);
	}
}
Mein Problem temp.shi502_netname; ist ein LPWSTR ich benötig eaber einen System::String^ oder einen std::string egal welchen weil da weiss ich wie ich ihn convertiere.
Ich weiss auch das ÖPWSTR ein Pointer ist und auf den ersten Buchstaben zeigt. aber alle meine Versuche geben nur ein Quadrat aus. Brauche dringend Hilfe
 
Zuletzt bearbeitet von einem Moderator:
An der Lösung ist das j etwas seltsam...
aber prinzipiell hätte ich auch gesagt:
Einfach im Konstruktor mitgeben, da String einen (2-Byte-)-char-Pointer nehmen kann.

Was geht nicht? Fehlermeldungen? Aktueller Code?
 
An der Lösung ist das [j] etwas seltsam...
aber prinzipiell hätte ich auch gesagt:
Einfach im Konstruktor mitgeben, da String einen (2-Byte-)-char-Pointer nehmen kann.

Der Code war falsch auf der Seite musste das & usen
OK nun kommt nichts mehr raus. Ich raffe es nicht! Es ist ein Pointer zu "HALLO" zeigt also auf H rausholen und dann auf A Springen. Theorie ok praxis bin ich = 00
C++:
 while(temp.shi502_netname[j]='\0')
			{
				System::String^ temp2 = gcnew System::String(&temp.shi502_netname[j]);
				System::String^ temp3 += temp2;
				j++;
			}

			System::Windows::Forms::MessageBox::Show(temp3);
 
Zuletzt bearbeitet:
Lass das & weg, damit machst du die Sache nur schlimmer.

edit: deepthorat zaubert wie immer eine Lösung aus dem Hut :D
 

Neue Beiträge

Zurück