Это код на C #, конвертируйте его или создайте c # dll с моим кодом:
(Вам необходимо добавить ссылку Microsoft.VisualBasic
)
public string GetClipboardText()
{
Microsoft.VisualBasic.Devices.Computer c = new Microsoft.VisualBasic.Devices.Computer();
return c.Clipboard.GetText();
}
public void SetClipboardText(string stext)
{
Microsoft.VisualBasic.Devices.Computer c = new Microsoft.VisualBasic.Devices.Computer();
c.Clipboard.SetText(stext);
}
Обновление кода C ++:
System::String^ GetClipboardText()
{
Microsoft::VisualBasic::Devices::Computer^ c = gcnew Microsoft::VisualBasic::Devices::Computer();
return c->Clipboard->GetText();
}
void SetClipboardText(System::String^ stext)
{
Microsoft::VisualBasic::Devices::Computer^ c = gcnew Microsoft::VisualBasic::Devices::Computer();
c->Clipboard->SetText(stext);
}
Обновление 2
Полагаю, вам нужен нативный код, поэтому вы не использовали мой код там, где не требовался дескриптор, плюс если вы получаете HWND MShwnd = FindWindowA("MapleStoryClass", NULL);
, значит, у вас есть дескриптор ... В любом случае, я предлагаю последний Метод заключается в следующем:
keybd_event(0x11, 0, 0, 0); // press ctrl
keybd_event(0x56, 0, 0, 0); // press v
keybd_event(0x56, 0, 2, 0); // release v
keybd_event(0x11, 0, 2, 0); // release ctrl