Well, this doesn't really need to be a separate function either. The w[strlen(s)]=0; is not necessary:
cbMultiByte
If this parameter is -1, the function processes the entire input string including the null terminator. The resulting wide character string therefore has a null terminator, and the returned length includes the null terminator.
If you've got a static buffer you're translating the string into then you can just do a simple call:
TCHAR szOut[1024];
WideCharToMultiByte(CP_ACP, 0, s, -1, szOut, sizeof(szOut)/sizeof(TCHAR));
_stprintf is the TCHAR version of sprintf.
Dan East