如何像 c# sendkeys 一样在 node-webkit 上执行组合键

How execute a combination key on node-webkit like c# sendkeys

我制作了一个 Webkit 应用程序,可以在 txt 上注册小代码,例如片段,以便稍后在其他应用程序上使用。我可以找到我的 "snippet" 并将内容设置到剪贴板上。

而且,我想要 运行 "Ctrl+v" Node-Webkit 上的组合键,就像 C# 上的 SendKeys 函数一样。

现在我需要手动按下组合键 "Ctrl+v" 才能粘贴到另一个应用程序中。

我也在想如何 运行 另一个文件,比如一个小的 exe 程序,它执行 SendKey 函数并关闭它。但我更喜欢不调用其他脚本或exe程序的node-webkit函数。

可以做到,我该怎么做?谢谢大家。

嗯,一直在网上找答案,没有结果。

但我实施的最佳解决方案是使用 VBScript 帮助文件。

而且效果很好!!

应用程序调用粘贴函数执行“paste.vbs”文件。


paste.vbs

set shell = CreateObject("WScript.Shell") 
WScript.Sleep 300
shell.SendKeys "^V"

myapp.js

var gui = require('nw.gui');
var win = gui.Window.get();

function getCommandLine() {
   switch (process.platform) { 
      case 'darwin' : return 'open';
      case 'win32' : return 'start';
      case 'win64' : return 'start';
      default : return 'xdg-open';
   }
} 
function Paste(){
    var sys = require('util');
    var exec = require('child_process').exec; 
    exec(getCommandLine() + ' ' + "paste.vbs"); 
} 
function useSnippet(content){
    var clipboard = gui.Clipboard.get(); 
    clipboard.set(content, 'text');
    win.minimize();
    Paste();
} 

现在您可以获取文件内容以粘贴到其他应用程序中。

如果要兼容其他操作系统,必须使用另一个类似于VBS的命令文件

我用一个搜索列表的文件列表和阅读段落内容。

我可以在 GitHub 上创建一个项目来加载代码,以便其他人可以使用它或帮助我改进代码。