_tcsdup returns a pointer. You're trying to assign that pointer to an array.
TCHAR is a simple type (char or wchar_t). It is not a class like std::string and does not support assigning a pointer.
Since you are using TCHARs, you will need to use _tcscpy.
Or... better yet... don't use TCHARs. Ever. They're retarded. The "normal" WinAPI functions take TCHAR strings... but you can take normal chars or wchar_ts by adding an 'A' or 'W' to the end of the function name.