-2
我有一個特殊字符的字符串,像這樣std::string test = "hello é -";
我想用keybd_event
寫這個字符串,但特殊字符顯示不好。 我這樣做:特殊字符keybd_event C++
std::string result = "Hello é -";
int taille = result.size();
for (int i = 0 ; i < taille ; i++)
{
keybd_event(VkKeyScan(result.at(i)),0x9e,0 , 0);
keybd_event(VkKeyScan(result.at(i)),0x9e, KEYEVENTF_KEYUP,0);
}
我做了一些研究,發現std::wstring
對Unicode的,但即使它不工作,任何想法?
問問自己,你會怎麼** **型鍵盤上的任意字符。然後重現那個。更好的是,我們自動化。 –
直接從[keybd_event]的文檔(https://msdn.microsoft.com/en-us/library/windows/desktop/ms646304.aspx):*「此功能已被取代。使用[SendInput](https: //msdn.microsoft.com/en-us/library/windows/desktop/ms646310.aspx)。「*發送不得與其他來源的鍵盤輸入交錯的擊鍵序列(如您的問題中的情況)是爲什麼'keybd_event'已被替換爲'SendInput'的原因。 – IInspectable
是的,我讀了關於'SendInput'的文檔,但我真的不知道如何發送特殊字符到'SendInput' @IInspectable – simon