Cannot convert from 'CString' to 'TCHAR []'
-
Hi There. I am using VS2008, and am facing above problem. For details, below is what I am doing...
CString strSource = L"Hello";
TCHAR SourceFile[] = strSource;Please suggest. Thanks PanB
-
Hi There. I am using VS2008, and am facing above problem. For details, below is what I am doing...
CString strSource = L"Hello";
TCHAR SourceFile[] = strSource;Please suggest. Thanks PanB
Why do you need it? Are you sure you need to convert a wide char string into a generic text mappings array? If the answer to the second question is yes then you need something like:
HRESULT hr;
TCHAR SourceFile[0x100];
CString strSource = CString(L"Hello");
hr = StringCbCopy(SourceFile, sizeof(SourceFile), strSource);
// check hr value for success or failure here:)
If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler. -- Alfonso the Wise, 13th Century King of Castile.
This is going on my arrogant assumptions. You may have a superb reason why I'm completely wrong. -- Iain Clarke
[My articles] -
Found a Solution: Above conversion can be done using _tcscpy function. Eg:
CString strSource = L"Hello";
TCHAR SourceFile[100];
_tcscpy(SourceFile, strSource );Your solution only works on UNICODE builds. On the other hand, you may easily generalize it with
CString strSource = _T("Hello");
TCHAR SourceFile[100];
_tcscpy(SourceFile, strSource );to work both in UNICODE and in ANSI builds. :)
If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler. -- Alfonso the Wise, 13th Century King of Castile.
This is going on my arrogant assumptions. You may have a superb reason why I'm completely wrong. -- Iain Clarke
[My articles]