-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