Оно самое спасибо, искал среди wsxxxx и нашел mbstowcs_s Код (Text): size_t wcstombs( char *mbstr, const wchar_t *wcstr, size_t count ); char *orig = "Hello, World!"; cout << orig << " (char *)" << endl; // Convert to a wchar_t* size_t origsize = strlen(orig) + 1; const size_t newsize = 100; size_t convertedChars = 0; wchar_t wcstring[newsize]; mbstowcs_s(&convertedChars, wcstring, origsize, orig, _TRUNCATE); wcscat_s(wcstring, L" (wchar_t *)"); wcout << wcstring << endl; RtlAnsiStringToUnicodeString хоть выглядит по человечески!
Имеется, например вот: Код (Text): BOOLEAN KernelStrCmpI(PUNICODE_STRING pusSource,PCHAR pszDest) { ANSI_STRING as; NTSTATUS status; status = RtlUnicodeStringToAnsiString(&as,pusSource,TRUE); if (STATUS_SUCCESS == status) { DbgPrint("Compare String: str1 = <%s>, str2 = <%s>", as.Buffer, pszDest); if (!_stricmp(pszDest,as.Buffer)) return TRUE; else return FALSE; } else { DbgPrint("Error RtlUnicodeStringToAnsiString status = %x", status); } return FALSE; }