2016-04-24 8 views
-1

Поскольку это мой первый пост (и это вопрос: D), я должен сказать, что этот сайт потрясающий и очень полезный. Благодарю за это. Итак, вот моя проблема ... Я пытаюсь преобразовать String^в wstring, ища уже 3 дня, но ничего не могу найти об этом. Я пишу программу, которая создает ярлык на рабочем столе пользователя. , Я использую FolderBrowserDialog ^, чтобы пользователи могли выбрать путь, и он возвращает String ^, и я использую IShellLink для создания ярлыка, который работает с LPCWSTR. Так что мне нужно преобразовать String^в LPCWSTR, и я не знаю, как это сделать, но я могу преобразовать wstring в LPCWSTR, поэтому, если бы я мог делать String^в wstring, было бы замечательно)) Спасибо.Convert String^to wstring C++

+0

https://msdn.microsoft.com/en-us/library/d1ae6tz5.aspx –

ответ

0

Спасибо очень много. Я бы хотел опубликовать код, чтобы каждый мог видеть конечный результат. Вот что я сделал:

String^ str1 = "Your Text"; 
char* str2 = (char*)(void*)Marshal::StringToHGlobalAnsi(str1); 
CString target = str2; 
Marshal::FreeHGlobal((IntPtr)str2); 
CString str3 = CString(str2); 
std::wstring new_wstring(str3);