Макрос TEXT
(или _T
) используется для символьных строк ("string"
), а не переменных. Он будет ставить перед аргументом L
перед аргументом при компиляции с UNICODE
(или это _UNICODE
? Я никогда не помню), поэтому строка станет L"string"
.
Класс wstring
вернет указатель wchar_t *
, который можно присвоить вашему значению TCHAR *
. Однако ваш wstring
объект является локальным и уничтожается в конце итерации l oop. Вам нужно будет либо динамически распределить пространство для значений TCHAR *
, либо выделить массив объектов wstring
для хранения созданных строк, которые будут слипаться, пока вы не закончите, используя abc
.