您当前的位置:首页 > IT编程 > C++
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:C++ ConvertToUnicode函数代码示例

51自学网 2021-06-01 20:13:37
  C++
这篇教程C++ ConvertToUnicode函数代码示例写得很实用,希望能帮到您。

本文整理汇总了C++中ConvertToUnicode函数的典型用法代码示例。如果您正苦于以下问题:C++ ConvertToUnicode函数的具体用法?C++ ConvertToUnicode怎么用?C++ ConvertToUnicode使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。

在下文中一共展示了ConvertToUnicode函数的29个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。

示例1: sspi_SetAuthIdentity

void sspi_SetAuthIdentity(SEC_WINNT_AUTH_IDENTITY* identity, char* user, char* domain, char* password){	identity->Flags = SEC_WINNT_AUTH_IDENTITY_UNICODE;	if (user)	{		identity->UserLength = ConvertToUnicode(CP_UTF8, 0, user, -1, &identity->User, 0) - 1;	}	else	{		identity->User = (UINT16*) NULL;		identity->UserLength = 0;	}	if (domain)	{		identity->DomainLength = ConvertToUnicode(CP_UTF8, 0, domain, -1, &identity->Domain, 0) - 1;	}	else	{		identity->Domain = (UINT16*) NULL;		identity->DomainLength = 0;	}	if (password != NULL)	{		identity->PasswordLength = ConvertToUnicode(CP_UTF8, 0, password, -1, &identity->Password, 0) - 1;	}	else	{		identity->Password = NULL;		identity->PasswordLength = 0;	}}
开发者ID:ayoubkiler,项目名称:FreeRDP,代码行数:34,


示例2: test_unicode_uppercasing

int test_unicode_uppercasing(BYTE* lower, BYTE* upper){	WCHAR* lowerW = NULL;	int lowerLength;	WCHAR* upperW = NULL;	int upperLength;	lowerLength = ConvertToUnicode(CP_UTF8, 0, (LPSTR) lower, -1, &lowerW, 0);	upperLength = ConvertToUnicode(CP_UTF8, 0, (LPSTR) upper, -1, &upperW, 0);	CharUpperBuffW(lowerW, lowerLength);	if (_wcscmp(lowerW, upperW) != 0)	{		printf("Lowercase String:/n");		string_hexdump((BYTE*) lowerW, lowerLength * 2);		printf("Uppercase String:/n");		string_hexdump((BYTE*) upperW, upperLength * 2);		return -1;	}	free(lowerW);	free(upperW);	return 0;}
开发者ID:BUGgs,项目名称:FreeRDP,代码行数:28,


示例3: do_GetService

// This method is called during the sending of message from nsMsgCompose::CheckAndPopulateRecipients()nsresult nsMsgCompFields::SplitRecipientsEx(const nsAString &recipients,                                            nsTArray<nsMsgRecipient> &aResult){  nsresult rv;    nsCOMPtr<nsIMsgHeaderParser> parser =    do_GetService(NS_MAILNEWS_MIME_HEADER_PARSER_CONTRACTID, &rv);  NS_ENSURE_SUCCESS(rv, rv);  nsCOMPtr<nsIMimeConverter> converter = do_GetService(NS_MIME_CONVERTER_CONTRACTID, &rv);  NS_ENSURE_SUCCESS(rv, rv);  nsCAutoString recipientsStr;  char *names;  char *addresses;  PRUint32 numAddresses;        CopyUTF16toUTF8(recipients, recipientsStr);  rv = parser->ParseHeaderAddresses(recipientsStr.get(), &names,                                    &addresses, &numAddresses);  if (NS_SUCCEEDED(rv))  {    char *pNames = names;    char *pAddresses = addresses;    for (PRUint32 i = 0; i < numAddresses; ++i)    {      nsCString fullAddress;      nsCString decodedName;      converter->DecodeMimeHeaderToCharPtr(pNames, GetCharacterSet(), false, true,                                            getter_Copies(decodedName));      rv = parser->MakeFullAddressString((!decodedName.IsEmpty() ?                                           decodedName.get() : pNames),                                          pAddresses,                                          getter_Copies(fullAddress));      nsMsgRecipient msgRecipient;      rv = ConvertToUnicode("UTF-8",                            NS_SUCCEEDED(rv) ? fullAddress.get() : pAddresses,                            msgRecipient.mAddress);      if (NS_FAILED(rv))        return rv;      rv = ConvertToUnicode("UTF-8", pAddresses, msgRecipient.mEmail);      if (NS_FAILED(rv))        return rv;      aResult.AppendElement(msgRecipient);      pNames += PL_strlen(pNames) + 1;      pAddresses += PL_strlen(pAddresses) + 1;    }    PR_FREEIF(names);    PR_FREEIF(addresses);  }   return rv;}
开发者ID:vanto,项目名称:comm-central,代码行数:60,


示例4: nla_make_spn

LPTSTR nla_make_spn(const char* ServiceClass, const char* hostname){	DWORD status;	DWORD SpnLength;	LPTSTR hostnameX = NULL;	LPTSTR ServiceClassX = NULL;	LPTSTR ServicePrincipalName = NULL;#ifdef UNICODE	ConvertToUnicode(CP_UTF8, 0, hostname, -1, &hostnameX, 0);	ConvertToUnicode(CP_UTF8, 0, ServiceClass, -1, &ServiceClassX, 0);#else	hostnameX = _strdup(hostname);	ServiceClassX = _strdup(ServiceClass);#endif	if (!hostnameX || !ServiceClassX)	{		free(hostnameX);		free(ServiceClassX);		return NULL;	}	if (!ServiceClass)	{		ServicePrincipalName = (LPTSTR) _tcsdup(hostnameX);		free(ServiceClassX);		free(hostnameX);		return ServicePrincipalName;	}	SpnLength = 0;	status = DsMakeSpn(ServiceClassX, hostnameX, NULL, 0, NULL, &SpnLength, NULL);	if (status != ERROR_BUFFER_OVERFLOW)	{		free(ServiceClassX);		free(hostnameX);		return NULL;	}	ServicePrincipalName = (LPTSTR) malloc(SpnLength * sizeof(TCHAR));	if (!ServicePrincipalName)		return NULL;	status = DsMakeSpn(ServiceClassX, hostnameX, NULL, 0, NULL, &SpnLength, ServicePrincipalName);	if (status != ERROR_SUCCESS)	{		free(ServicePrincipalName);		free(ServiceClassX);		free(hostnameX);		return NULL;	}	free(ServiceClassX);	free(hostnameX);	return ServicePrincipalName;}
开发者ID:BrianChangchien,项目名称:FiWoRDC,代码行数:58,


示例5: sspi_SetAuthIdentity

int sspi_SetAuthIdentity(SEC_WINNT_AUTH_IDENTITY* identity, const char* user, const char* domain, const char* password){	int status;	identity->Flags = SEC_WINNT_AUTH_IDENTITY_UNICODE;	if (identity->User)		free(identity->User);	identity->User = (UINT16*) NULL;	identity->UserLength = 0;	if (user)	{		status = ConvertToUnicode(CP_UTF8, 0, user, -1, (LPWSTR*) &(identity->User), 0);		if (status <= 0)			return -1;		identity->UserLength = (ULONG) (status - 1);	}	if (identity->Domain)		free(identity->Domain);	identity->Domain = (UINT16*) NULL;	identity->DomainLength = 0;	if (domain)	{		status = ConvertToUnicode(CP_UTF8, 0, domain, -1, (LPWSTR*) &(identity->Domain), 0);		if (status <= 0)			return -1;		identity->DomainLength = (ULONG) (status - 1);	}	if (identity->Password)		free(identity->Password);	identity->Password = NULL;	identity->PasswordLength = 0;	if (password)	{		status = ConvertToUnicode(CP_UTF8, 0, password, -1, (LPWSTR*) &(identity->Password), 0);		if (status <= 0)			return -1;		identity->PasswordLength = (ULONG) (status - 1);	}	return 1;}
开发者ID:Auto-Droid,项目名称:FreeRDP,代码行数:56,


示例6: rdp_write_extended_info_packet

void rdp_write_extended_info_packet(rdpRdp* rdp, wStream* s){	int clientAddressFamily;	WCHAR* clientAddress = NULL;	int cbClientAddress;	WCHAR* clientDir = NULL;	int cbClientDir;	int cbAutoReconnectCookie;	rdpSettings* settings = rdp->settings;	clientAddressFamily = settings->IPv6Enabled ? ADDRESS_FAMILY_INET6 : ADDRESS_FAMILY_INET;	cbClientAddress = ConvertToUnicode(CP_UTF8, 0, settings->ClientAddress, -1, &clientAddress, 0) * 2;	cbClientDir = ConvertToUnicode(CP_UTF8, 0, settings->ClientDir, -1, &clientDir, 0) * 2;	cbAutoReconnectCookie = (int) settings->ServerAutoReconnectCookie->cbLen;	Stream_Write_UINT16(s, clientAddressFamily); /* clientAddressFamily (2 bytes) */	Stream_Write_UINT16(s, cbClientAddress + 2); /* cbClientAddress (2 bytes) */	if (cbClientAddress > 0)		Stream_Write(s, clientAddress, cbClientAddress); /* clientAddress */	Stream_Write_UINT16(s, 0);	Stream_Write_UINT16(s, cbClientDir + 2); /* cbClientDir (2 bytes) */	if (cbClientDir > 0)		Stream_Write(s, clientDir, cbClientDir); /* clientDir */	Stream_Write_UINT16(s, 0);	rdp_write_client_time_zone(s, settings); /* clientTimeZone (172 bytes) */	Stream_Write_UINT32(s, 0); /* clientSessionId (4 bytes), should be set to 0 */	freerdp_performance_flags_make(settings);	Stream_Write_UINT32(s, settings->PerformanceFlags); /* performanceFlags (4 bytes) */	Stream_Write_UINT16(s, cbAutoReconnectCookie); /* cbAutoReconnectCookie (2 bytes) */	if (cbAutoReconnectCookie > 0)	{		rdp_compute_client_auto_reconnect_cookie(rdp);		rdp_write_client_auto_reconnect_cookie(rdp, s); /* autoReconnectCookie */		Stream_Write_UINT16(s, 0); /* reserved1 (2 bytes) */		Stream_Write_UINT16(s, 0); /* reserved2 (2 bytes) */	}	free(clientAddress);	free(clientDir);}
开发者ID:C4rt,项目名称:FreeRDP,代码行数:54,


示例7: remdesk_send_ctl_authenticate_pdu

static int remdesk_send_ctl_authenticate_pdu(remdeskPlugin* remdesk){	int status;	wStream* s;	int cbExpertBlobW = 0;	WCHAR* expertBlobW = NULL;	int cbRaConnectionStringW = 0;	WCHAR* raConnectionStringW = NULL;	REMDESK_CTL_AUTHENTICATE_PDU pdu;	status = remdesk_generate_expert_blob(remdesk);	if (status < 0)		return -1;	pdu.expertBlob = remdesk->ExpertBlob;	pdu.raConnectionString = remdesk->settings->RemoteAssistanceRCTicket;	status = ConvertToUnicode(CP_UTF8, 0, pdu.raConnectionString, -1, &raConnectionStringW, 0);	if (status <= 0)		return -1;	cbRaConnectionStringW = status * 2;	status = ConvertToUnicode(CP_UTF8, 0, pdu.expertBlob, -1, &expertBlobW, 0);	if (status <= 0)		return -1;	cbExpertBlobW = status * 2;	remdesk_prepare_ctl_header(&(pdu.ctlHeader), REMDESK_CTL_AUTHENTICATE,			cbRaConnectionStringW + cbExpertBlobW);	s = Stream_New(NULL, REMDESK_CHANNEL_CTL_SIZE + pdu.ctlHeader.DataLength);	remdesk_write_ctl_header(s, &(pdu.ctlHeader));	Stream_Write(s, (BYTE*) raConnectionStringW, cbRaConnectionStringW);	Stream_Write(s, (BYTE*) expertBlobW, cbExpertBlobW);	Stream_SealLength(s);	remdesk_virtual_channel_write(remdesk, s);	free(raConnectionStringW);	free(expertBlobW);	return 1;}
开发者ID:MrRecovery,项目名称:FreeRDP,代码行数:51,


示例8: LoadLibraryA

HMODULE LoadLibraryA(LPCSTR lpLibFileName){#if defined(_UWP)	int status;	HMODULE hModule = NULL;	WCHAR* filenameW = NULL;	if (!lpLibFileName)		return NULL;	status = ConvertToUnicode(CP_UTF8, 0, lpLibFileName, -1, &filenameW, 0);	if (status < 1)		return NULL;	hModule = LoadPackagedLibrary(filenameW, 0);	free(filenameW);	return hModule;#else	HMODULE library;	library = dlopen(lpLibFileName, RTLD_LOCAL | RTLD_LAZY);	if (!library)	{		WLog_ERR(TAG, "LoadLibraryA: %s", dlerror());		return NULL;	}	return library;#endif}
开发者ID:BrianChangchien,项目名称:FiWoRDC,代码行数:34,


示例9: cliprdr_temp_directory

int cliprdr_temp_directory(CliprdrClientContext* context, CLIPRDR_TEMP_DIRECTORY* tempDirectory){	int length;	wStream* s;	WCHAR* wszTempDir = NULL;	cliprdrPlugin* cliprdr = (cliprdrPlugin*) context->handle;	s = cliprdr_packet_new(CB_TEMP_DIRECTORY, 0, 520 * 2);	length = ConvertToUnicode(CP_UTF8, 0, tempDirectory->szTempDir, -1, &wszTempDir, 0);	if (length < 0)		return -1;	if (length > 520)		length = 520;	Stream_Write(s, tempDirectory->szTempDir, length * 2);	Stream_Zero(s, (520 - length) * 2);	free(wszTempDir);	WLog_Print(cliprdr->log, WLOG_DEBUG, "TempDirectory: %s",			tempDirectory->szTempDir);	cliprdr_packet_send(cliprdr, s);	return 1;}
开发者ID:akallabeth,项目名称:FreeRDP,代码行数:29,


示例10: statvfs

int statvfs(const char *path, struct statvfs *buf){	BOOL res;	int len;	LPWSTR unicodestr = NULL;	DWORD lpSectorsPerCluster;	DWORD lpBytesPerSector;	DWORD lpNumberOfFreeClusters;	DWORD lpTotalNumberOfClusters;	len = ConvertToUnicode(CP_ACP, 0, path, -1, &unicodestr, 0);	if (len <= 0)		return -1;	res = GetDiskFreeSpaceW(unicodestr, &lpSectorsPerCluster, &lpBytesPerSector, &lpNumberOfFreeClusters, &lpTotalNumberOfClusters);	free(unicodestr);	buf->f_bsize = lpBytesPerSector; /* file system block size */	buf->f_frsize = 0; /* fragment size */	buf->f_blocks = lpTotalNumberOfClusters; /* size of fs in f_frsize units */	buf->f_bfree = lpNumberOfFreeClusters; /* # free blocks */	buf->f_bavail = lpNumberOfFreeClusters; /* # free blocks for unprivileged users */	buf->f_files = 0; /* # inodes */	buf->f_ffree = 0; /* # free inodes */	buf->f_favail = 0; /* # free inodes for unprivileged users */	buf->f_fsid = lpNumberOfFreeClusters & 0xffff; /* file system ID */	buf->f_flag = 0; /* mount flags */	buf->f_namemax = 250; /* maximum filename length */		return res;}
开发者ID:BrianChangchien,项目名称:FiWoRDC,代码行数:31,


示例11: clipboard_synthesize_cf_unicodetext

static void* clipboard_synthesize_cf_unicodetext(wClipboard* clipboard, UINT32 formatId,        const void* data, UINT32* pSize){	int size;	int status;	char* crlfStr = NULL;	WCHAR* pDstData = NULL;	if ((formatId == CF_TEXT) || (formatId == CF_OEMTEXT) ||	    (formatId == ClipboardGetFormatId(clipboard, "UTF8_STRING")) ||	    (formatId == ClipboardGetFormatId(clipboard, "text/plain")) ||	    (formatId == ClipboardGetFormatId(clipboard, "TEXT")) ||	    (formatId == ClipboardGetFormatId(clipboard, "STRING")))	{		if (!pSize || (*pSize > INT32_MAX))			return NULL;		size = (int) * pSize;		crlfStr = ConvertLineEndingToCRLF((char*) data, &size);		if (!crlfStr)			return NULL;		status = ConvertToUnicode(CP_UTF8, 0, crlfStr, size, &pDstData, 0);		free(crlfStr);		if (status <= 0)			return NULL;		*pSize = status * 2;	}	return (void*) pDstData;}
开发者ID:FreeRDP,项目名称:FreeRDP,代码行数:34,


示例12: ntlm_SetContextWorkstation

int ntlm_SetContextWorkstation(NTLM_CONTEXT* context, char* Workstation){	int status;	DWORD nSize = 0;	char* ws = Workstation;	if (!Workstation)	{		GetComputerNameExA(ComputerNameNetBIOS, NULL, &nSize);				ws = (char*) malloc(nSize);		if (!ws)			return -1;		if (!GetComputerNameExA(ComputerNameNetBIOS, ws, &nSize))			return 0;	}	context->Workstation.Buffer = NULL;	status = ConvertToUnicode(CP_UTF8, 0, ws, -1, &context->Workstation.Buffer, 0);	free(ws);	if (status <= 0)		return -1;	context->Workstation.Length = (USHORT) (status - 1);	context->Workstation.Length *= 2;	if (!Workstation)		free(Workstation);	return 1;}
开发者ID:Auto-Droid,项目名称:FreeRDP,代码行数:34,


示例13: nsMsgI18NConvertRawBytesToUTF16

void nsMsgI18NConvertRawBytesToUTF16(const nsCString& inString,                                      const char* charset,                                     nsAString& outString){  if (MsgIsUTF8(inString))  {    CopyUTF8toUTF16(inString, outString);    return;  }  nsresult rv = ConvertToUnicode(charset, inString, outString);  if (NS_SUCCEEDED(rv))    return;  const char* cur = inString.BeginReading();  const char* end = inString.EndReading();  outString.Truncate();  while (cur < end) {    char c = *cur++;    if (c & char(0x80))      outString.Append(UCS2_REPLACEMENT_CHAR);    else      outString.Append(c);  }}
开发者ID:cmotc,项目名称:spacehamster,代码行数:25,


示例14: rdpdr_send_client_name_request

static void rdpdr_send_client_name_request(rdpdrPlugin* rdpdr){	STREAM* data_out;	WCHAR* computerNameW = NULL;	size_t computerNameLenW;	if (!rdpdr->computerName[0])		gethostname(rdpdr->computerName, sizeof(rdpdr->computerName) - 1);	computerNameLenW = ConvertToUnicode(CP_UTF8, 0, rdpdr->computerName, -1, &computerNameW, 0) * 2;	data_out = stream_new(16 + computerNameLenW + 2);	stream_write_UINT16(data_out, RDPDR_CTYP_CORE);	stream_write_UINT16(data_out, PAKID_CORE_CLIENT_NAME);	stream_write_UINT32(data_out, 1); /* unicodeFlag, 0 for ASCII and 1 for Unicode */	stream_write_UINT32(data_out, 0); /* codePage, must be set to zero */	stream_write_UINT32(data_out, computerNameLenW + 2); /* computerNameLen, including null terminator */	stream_write(data_out, computerNameW, computerNameLenW);	stream_write_UINT16(data_out, 0); /* null terminator */	free(computerNameW);	svc_plugin_send((rdpSvcPlugin*) rdpdr, data_out);}
开发者ID:4hosi,项目名称:FreeRDP,代码行数:26,


示例15: remdesk_send_ctl_remote_control_desktop_pdu

static int remdesk_send_ctl_remote_control_desktop_pdu(remdeskPlugin* remdesk){	int status;	wStream* s;	int cbRaConnectionStringW = 0;	WCHAR* raConnectionStringW = NULL;	REMDESK_CTL_REMOTE_CONTROL_DESKTOP_PDU pdu;	pdu.raConnectionString = remdesk->settings->RemoteAssistanceRCTicket;	status = ConvertToUnicode(CP_UTF8, 0, pdu.raConnectionString, -1, &raConnectionStringW, 0);	if (status <= 0)		return -1;	cbRaConnectionStringW = status * 2;	remdesk_prepare_ctl_header(&(pdu.ctlHeader), REMDESK_CTL_REMOTE_CONTROL_DESKTOP, cbRaConnectionStringW);	s = Stream_New(NULL, REMDESK_CHANNEL_CTL_SIZE + pdu.ctlHeader.DataLength);	remdesk_write_ctl_header(s, &(pdu.ctlHeader));	Stream_Write(s, (BYTE*) raConnectionStringW, cbRaConnectionStringW);	Stream_SealLength(s);	remdesk_virtual_channel_write(remdesk, s);	free(raConnectionStringW);	return 1;}
开发者ID:MrRecovery,项目名称:FreeRDP,代码行数:33,


示例16: ntlm_SetContextTargetName

int ntlm_SetContextTargetName(NTLM_CONTEXT* context, char* TargetName){	int status;	DWORD nSize = 0;	char* name = TargetName;	if (!TargetName)	{		if (!GetComputerNameExA(ComputerNameDnsHostname, NULL, &nSize))			return -1;		name = (char*) malloc(nSize);		if (!name)			return -1;		if (!GetComputerNameExA(ComputerNameDnsHostname, name, &nSize))			return -1;		CharUpperA(TargetName);	}	context->TargetName.pvBuffer = NULL;	status = ConvertToUnicode(CP_UTF8, 0, name, -1, (LPWSTR*) &context->TargetName.pvBuffer, 0);	if (status <= 0)		return -1;	context->TargetName.cbBuffer = (USHORT) ((status - 1) * 2);	if (!TargetName)		free(name);	return 1;}
开发者ID:Auto-Droid,项目名称:FreeRDP,代码行数:35,


示例17: nsMsgI18NConvertRawBytesToUTF8

void nsMsgI18NConvertRawBytesToUTF8(const nsCString& inString,                                     const char* charset,                                    nsACString& outString){  if (MsgIsUTF8(inString))  {    outString.Assign(inString);    return;  }  nsAutoString utf16Text;  nsresult rv = ConvertToUnicode(charset, inString, utf16Text);  if (NS_SUCCEEDED(rv))  {    CopyUTF16toUTF8(utf16Text, outString);    return;  }  // EF BF BD (UTF-8 encoding of U+FFFD)  NS_NAMED_LITERAL_CSTRING(utf8ReplacementChar, "/357/277/275");  const char* cur = inString.BeginReading();  const char* end = inString.EndReading();  outString.Truncate();  while (cur < end) {    char c = *cur++;    if (c & char(0x80))      outString.Append(utf8ReplacementChar);    else      outString.Append(c);  }}
开发者ID:cmotc,项目名称:spacehamster,代码行数:31,


示例18: rdp_write_extended_info_packet

void rdp_write_extended_info_packet(wStream* s, rdpSettings* settings){	int clientAddressFamily;	WCHAR* clientAddress = NULL;	int cbClientAddress;	WCHAR* clientDir = NULL;	int cbClientDir;	int cbAutoReconnectLen;	clientAddressFamily = settings->IPv6Enabled ? ADDRESS_FAMILY_INET6 : ADDRESS_FAMILY_INET;	cbClientAddress = ConvertToUnicode(CP_UTF8, 0, settings->ClientAddress, -1, &clientAddress, 0) * 2;	cbClientDir = ConvertToUnicode(CP_UTF8, 0, settings->ClientDir, -1, &clientDir, 0) * 2;	cbAutoReconnectLen = (int) settings->ClientAutoReconnectCookie->cbLen;	Stream_Write_UINT16(s, clientAddressFamily); /* clientAddressFamily */	Stream_Write_UINT16(s, cbClientAddress + 2); /* cbClientAddress */	if (cbClientAddress > 0)		Stream_Write(s, clientAddress, cbClientAddress); /* clientAddress */	Stream_Write_UINT16(s, 0);	Stream_Write_UINT16(s, cbClientDir + 2); /* cbClientDir */	if (cbClientDir > 0)		Stream_Write(s, clientDir, cbClientDir); /* clientDir */	Stream_Write_UINT16(s, 0);	rdp_write_client_time_zone(s, settings); /* clientTimeZone */	Stream_Write_UINT32(s, 0); /* clientSessionId, should be set to 0 */	Stream_Write_UINT32(s, settings->PerformanceFlags); /* performanceFlags */	Stream_Write_UINT16(s, cbAutoReconnectLen); /* cbAutoReconnectLen */	if (cbAutoReconnectLen > 0)		rdp_write_client_auto_reconnect_cookie(s, settings); /* autoReconnectCookie */	/* reserved1 (2 bytes) */	/* reserved2 (2 bytes) */	free(clientAddress);	free(clientDir);}
开发者ID:pevik,项目名称:debian-freerdp,代码行数:47,


示例19: UninitializeSpellCheckEngine

int HunspellInterface::InitializeSpellCheckEngine(){  UninitializeSpellCheckEngine();  wxString strAffixFile = GetAffixFileName();  wxString strDictionaryFile = GetDictionaryFileName();  if ( wxFileName::FileExists(strAffixFile) && wxFileName::FileExists(strDictionaryFile) )  {    wxCharBuffer affixFileCharBuffer = ConvertToUnicode(strAffixFile);    wxCharBuffer dictionaryFileCharBuffer = ConvertToUnicode(strDictionaryFile);    m_pHunspell = new Hunspell(affixFileCharBuffer, dictionaryFileCharBuffer);  }  m_bEngineInitialized = (m_pHunspell != NULL);  return m_bEngineInitialized;}
开发者ID:stahta01,项目名称:EmBlocks,代码行数:17,


示例20: sspi_SetAuthIdentityWithUnicodePassword

int sspi_SetAuthIdentityWithUnicodePassword(SEC_WINNT_AUTH_IDENTITY* identity, const char* user,        const char* domain, LPWSTR password, ULONG passwordLength){	int status;	identity->Flags = SEC_WINNT_AUTH_IDENTITY_UNICODE;	free(identity->User);	identity->User = (UINT16*) NULL;	identity->UserLength = 0;	if (user)	{		status = ConvertToUnicode(CP_UTF8, 0, user, -1, (LPWSTR*) & (identity->User), 0);		if (status <= 0)			return -1;		identity->UserLength = (ULONG)(status - 1);	}	free(identity->Domain);	identity->Domain = (UINT16*) NULL;	identity->DomainLength = 0;	if (domain)	{		status = ConvertToUnicode(CP_UTF8, 0, domain, -1, (LPWSTR*) & (identity->Domain), 0);		if (status <= 0)			return -1;		identity->DomainLength = (ULONG)(status - 1);	}	free(identity->Password);	identity->Password = (UINT16*) calloc(1, (passwordLength + 1) * sizeof(WCHAR));	if (!identity->Password)		return -1;	CopyMemory(identity->Password, password, passwordLength * sizeof(WCHAR));	identity->PasswordLength = passwordLength;	return 1;}
开发者ID:FreeRDP,项目名称:FreeRDP,代码行数:43,


示例21: schannel_AcquireCredentialsHandleA

SECURITY_STATUS SEC_ENTRY schannel_AcquireCredentialsHandleA(SEC_CHAR* pszPrincipal, SEC_CHAR* pszPackage,		ULONG fCredentialUse, void* pvLogonID, void* pAuthData, SEC_GET_KEY_FN pGetKeyFn,		void* pvGetKeyArgument, PCredHandle phCredential, PTimeStamp ptsExpiry){	SECURITY_STATUS status;	SEC_WCHAR* pszPrincipalW = NULL;	SEC_WCHAR* pszPackageW = NULL;	ConvertToUnicode(CP_UTF8, 0, pszPrincipal, -1, &pszPrincipalW, 0);	ConvertToUnicode(CP_UTF8, 0, pszPackage, -1, &pszPackageW, 0);	status = schannel_AcquireCredentialsHandleW(pszPrincipalW, pszPackageW, fCredentialUse, pvLogonID,			pAuthData, pGetKeyFn, pvGetKeyArgument, phCredential, ptsExpiry);	free(pszPrincipalW);	free(pszPackageW);	return SEC_E_OK;}
开发者ID:4hosi,项目名称:FreeRDP,代码行数:19,


示例22: GUIInfo

Info::Info(wxWindow* parent) : GUIInfo(parent){	std::string inf=getFile(g_res_path+"info_"+g_lang+".txt");	if(inf.empty())	{		inf=getFile(g_res_path+"info.txt");	}	m_textCtrl14->SetValue(ConvertToUnicode(inf));	Show(true);}
开发者ID:alvinvarghese,项目名称:urbackup_frontend_wx,代码行数:10,


示例23: ConvertToUnicode

bool HunspellInterface::IsWordInDictionary(const wxString& strWord){  if (m_pHunspell == NULL)    return false;  wxCharBuffer wordCharBuffer = ConvertToUnicode(strWord);  if ( wordCharBuffer == NULL )    return false;  return ((m_pHunspell->spell(wordCharBuffer) == 1) || (m_PersonalDictionary.IsWordInDictionary(strWord)));}
开发者ID:stahta01,项目名称:EmBlocks,代码行数:10,


示例24:

std::vector<SBackupDir> Connector::getSharedPaths(void){    std::vector<SBackupDir> ret;    std::string d=getResponse("1GET BACKUP DIRS","");    int lc=linecount(d);    for(int i=0; i<lc; i+=2)    {        SBackupDir bd;        bd.id=atoi(getline(i, d).c_str() );        std::string path=getline(i+1, d);        bd.path=wxString::FromUTF8(path.c_str() );        if(path.find("|")!=std::string::npos)        {            bd.path=ConvertToUnicode(getafter("|", path));            bd.name=ConvertToUnicode(getuntil("|", path));        }        ret.push_back( bd );    }    return ret;}
开发者ID:alvinvarghese,项目名称:urbackup_frontend_wx,代码行数:20,


示例25: sspi_GetSecurityFunctionTableWByNameA

SecurityFunctionTableW* sspi_GetSecurityFunctionTableWByNameA(const SEC_CHAR* Name){	SEC_WCHAR* NameW;	SecurityFunctionTableW* table;	ConvertToUnicode(CP_UTF8, 0, Name, -1, &NameW, 0);	table = sspi_GetSecurityFunctionTableWByNameW(NameW);	free(NameW);	return table;}
开发者ID:ayoubkiler,项目名称:FreeRDP,代码行数:12,


示例26: remdesk_send_ctl_verify_password_pdu

/** * Function description * * @return 0 on success, otherwise a Win32 error code */static UINT remdesk_send_ctl_verify_password_pdu(remdeskPlugin* remdesk){	int status;	UINT error;	wStream* s;	int cbExpertBlobW = 0;	WCHAR* expertBlobW = NULL;	REMDESK_CTL_VERIFY_PASSWORD_PDU pdu;	if ((error = remdesk_generate_expert_blob(remdesk)))	{		WLog_ERR(TAG, "remdesk_generate_expert_blob failed with error %lu!", error);		return error;	}	pdu.expertBlob = remdesk->ExpertBlob;	status = ConvertToUnicode(CP_UTF8, 0, pdu.expertBlob, -1, &expertBlobW, 0);	if (status <= 0)	{		WLog_ERR(TAG, "ConvertToUnicode failed!");		return ERROR_INTERNAL_ERROR;	}	cbExpertBlobW = status * 2;	remdesk_prepare_ctl_header(&(pdu.ctlHeader), REMDESK_CTL_VERIFY_PASSWORD, cbExpertBlobW);	s = Stream_New(NULL, REMDESK_CHANNEL_CTL_SIZE + pdu.ctlHeader.DataLength);	if (!s)	{		WLog_ERR(TAG, "Stream_New failed!");		error = CHANNEL_RC_NO_MEMORY;		goto out;	}	remdesk_write_ctl_header(s, &(pdu.ctlHeader));	Stream_Write(s, (BYTE*) expertBlobW, cbExpertBlobW);	Stream_SealLength(s);	if ((error = remdesk_virtual_channel_write(remdesk, s)))		WLog_ERR(TAG, "remdesk_virtual_channel_write failed with error %lu!", error);out:	free(expertBlobW);	if (error != CHANNEL_RC_OK)		Stream_Free(s, TRUE);	return error;}
开发者ID:BrianChangchien,项目名称:FiWoRDC,代码行数:58,


示例27: nego_send_preconnection_pdu

BOOL nego_send_preconnection_pdu(rdpNego* nego){	wStream* s;	UINT32 cbSize;	UINT16 cchPCB = 0;	WCHAR* wszPCB = NULL;	WLog_DBG(TAG, "Sending preconnection PDU");	if (!nego_tcp_connect(nego))		return FALSE;	/* it's easier to always send the version 2 PDU, and it's just 2 bytes overhead */	cbSize = PRECONNECTION_PDU_V2_MIN_SIZE;	if (nego->PreconnectionBlob)	{		cchPCB = (UINT16) ConvertToUnicode(CP_UTF8, 0, nego->PreconnectionBlob, -1, &wszPCB, 0);		cchPCB += 1; /* zero-termination */		cbSize += cchPCB * 2;	}	s = Stream_New(NULL, cbSize);	if (!s)	{		free(wszPCB);		WLog_ERR(TAG, "Stream_New failed!");		return FALSE;	}	Stream_Write_UINT32(s, cbSize); /* cbSize */	Stream_Write_UINT32(s, 0); /* Flags */	Stream_Write_UINT32(s, PRECONNECTION_PDU_V2); /* Version */	Stream_Write_UINT32(s, nego->PreconnectionId); /* Id */	Stream_Write_UINT16(s, cchPCB); /* cchPCB */	if (wszPCB)	{		Stream_Write(s, wszPCB, cchPCB * 2); /* wszPCB */		free(wszPCB);	}	Stream_SealLength(s);	if (transport_write(nego->transport, s) < 0)	{		Stream_Free(s, TRUE);		return FALSE;	}	Stream_Free(s, TRUE);	return TRUE;}
开发者ID:FreeRDP,项目名称:FreeRDP,代码行数:53,


示例28: rdg_send_tunnel_request

static BOOL rdg_send_tunnel_request(rdpRdg* rdg){	wStream* s;	BOOL status;	UINT32 packetSize = 16;	UINT16 fieldsPresent = 0;	WCHAR* PAACookie = NULL;	UINT16 PAACookieLen = 0;	if (rdg->extAuth == HTTP_EXTENDED_AUTH_PAA)	{		PAACookieLen = ConvertToUnicode(CP_UTF8, 0, rdg->settings->GatewayAccessToken, -1, &PAACookie, 0);		if (!PAACookie)			return FALSE;		packetSize += 2 + PAACookieLen * sizeof(WCHAR);		fieldsPresent = HTTP_TUNNEL_PACKET_FIELD_PAA_COOKIE;	}	s = Stream_New(NULL, packetSize);	if (!s)	{		free(PAACookie);		return FALSE;	}	Stream_Write_UINT16(s, PKT_TYPE_TUNNEL_CREATE); /* Type (2 bytes) */	Stream_Write_UINT16(s, 0); /* Reserved (2 bytes) */	Stream_Write_UINT32(s, packetSize); /* PacketLength (4 bytes) */	Stream_Write_UINT32(s, HTTP_CAPABILITY_TYPE_QUAR_SOH); /* CapabilityFlags (4 bytes) */	Stream_Write_UINT16(s, fieldsPresent); /* FieldsPresent (2 bytes) */	Stream_Write_UINT16(s, 0); /* Reserved (2 bytes), must be 0 */	if (PAACookie)	{		Stream_Write_UINT16(s, PAACookieLen * 2); /* PAA cookie string length */		Stream_Write_UTF16_String(s, PAACookie, PAACookieLen);	}	Stream_SealLength(s);	status = rdg_write_packet(rdg, s);	Stream_Free(s, TRUE);	free(PAACookie);	if (status)	{		rdg->state = RDG_CLIENT_STATE_TUNNEL_CREATE;	}	return status;}
开发者ID:mfleisz,项目名称:FreeRDP,代码行数:53,


示例29: ntlm_SetContextTargetName

int ntlm_SetContextTargetName(NTLM_CONTEXT* context, char* TargetName){	int status;	char* name = TargetName;	DWORD nSize = 0;	CHAR* computerName = NULL;	if (!name)	{		if (GetComputerNameExA(ComputerNameNetBIOS, NULL, &nSize) || (GetLastError() != ERROR_MORE_DATA) ||		    (nSize < 2))			return -1;		computerName = calloc(nSize, sizeof(CHAR));		if (!computerName)			return -1;		if (!GetComputerNameExA(ComputerNameNetBIOS, computerName, &nSize))		{			free(computerName);			return -1;		}		if (nSize > MAX_COMPUTERNAME_LENGTH)			computerName[MAX_COMPUTERNAME_LENGTH] = '/0';		name = computerName;		if (!name)			return -1;		CharUpperA(name);	}	context->TargetName.pvBuffer = NULL;	status = ConvertToUnicode(CP_UTF8, 0, name, -1, (LPWSTR*) &context->TargetName.pvBuffer, 0);	if (status <= 0)	{		if (!TargetName)			free(name);		return -1;	}	context->TargetName.cbBuffer = (USHORT)((status - 1) * 2);	if (!TargetName)		free(name);	return 1;}
开发者ID:JunaidLoonat,项目名称:FreeRDP,代码行数:53,



注:本文中的ConvertToUnicode函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


C++ ConvertUTF32ToUTF8函数代码示例
C++ ConvertFromUnicode函数代码示例
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。