LPCTSTR can be either char* or wchar_t*, depending on whether the program is compiled for UNICODE or not. You cannot pass a single char as the third argument. There are several solutions, depending on UNICODE settings -- the first and last solutions below will compile with or without UNICODE.
Code:
SetDlgItemText(hwnd, IDC_S,_TEXT("a"));
or
char a[] = "a";
SetDlgItemText(hwnd, IDC_S,a);
or
wchar_t a[] = L"a";
SetDlgItemText(hwnd, IDC_S,a);
or
TCHAR a[] = _TEXT("a");
SetDlgItemText(hwnd, IDC_S,a);