我有一个在 2 个用户之间共享屏幕然后远程控制屏幕的项目。我有一个可视化的 c++ 代码,我通过它调用 Java 屏幕共享方法来共享屏幕。这工作得很好。
现在我正在尝试调用其他机器人事件,例如(mouseMove、keypress 等)。我能够从我的 c++ 代码中顺利调用 Java 方法(包含机器人事件调用),并且该函数总是返回 true 到我的 c++ 代码,从而显示成功执行,但是用Java方法编写的机器人事件没有被触发。谁能帮我找到正确的方向。我的代码如下:
从 C++ 代码:
status= m_pJVM->InvokeClassMethod(m_sccObj,"keyPress",
"(D)V", NULL,
keyCode);
if (status)
{
GetLogger()->Log(_T("Successfull key Press"));
}
else
{
GetLogger()->Log(_T("Unsuccessfull key Press"));
}
在这里,我总是将“成功按键”作为控制台上的输出。
在Java方面,代码是:
public boolean keyPress(double key)
{
try
{
this.robot = new Robot();
if(robot != null)
{
robot.delay(5000);
robot.keyPress(java.awt.event.KeyEvent.VK_T);
robot.keyPress(KeyEvent.VK_E);
robot.keyPress(KeyEvent.VK_S);
robot.keyPress(KeyEvent.VK_T);
return true;
}
else
{
return false;
}
}
catch(Exception e)
{
return false;
}
}
谁能告诉我这里是否遗漏了任何东西。
谢谢,任何帮助将不胜感激。