Сделайте это,
wchar_t clone[260];
wcscpy(clone,szPath);
Или, если вы хотите выделить память самостоятельно,
wchar_t *clone = new wchar_t[wcslen(szPath)+1];
wcscpy(clone,szPath);
//use it
delete []clone;
Проверьте: strcpy, wcscpy, _mbscpy на MSDN
Однако, если ваша реализация не обязательно не требует необработанных указателей / массива, тогда вы должны предпочесть это,
#include<string>
//MOST SAFE!
std:wstring clone(szPath);