2016-05-25 2 views
0

Ich habe eine Webkit-App erstellt, die kleine Codes auf txt wie Snippets registriert, um sie später in anderen Apps zu verwenden. Ich finde mein "Snippet" und setze den Inhalt in die Zwischenablage.Wie führe ich einen Kombinationsschlüssel auf node-webkit aus wie C# sendkeys

Aber auch, ich möchte run „Strg + v“ Tastenkombination auf Node-Webkit wie die Tastaturbefehle Funktion auf C#.

Jetzt muss ich drücken manuell Tastenkombination „Strg + v“ in einer anderen App einzufügen.

Auch ich dachte, wie eine andere Datei wie ein kleines exe-Programm ausführen, dass es die SendKey Funktion tun, und es schließen. Aber ich bevorzuge eine Node-Webkit-Funktion ohne Aufruf eines anderen Skripts oder eines EXE-Programms.

Es ist möglich, es zu tun, und wie kann ich es tun? Danke Leute.

Antwort

1

Nun, ich suchte eine Antwort im Internet ohne Ergebnisse.

Aber die beste Lösung, die ich implementiert habe, ist eine VBScript-Hilfedatei zu verwenden.

Und es funktioniert gut !!

Die App ruft die Paste-Funktion die „paste.vbs“ Datei auszuführen.


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(); 
} 

Jetzt können Sie den Inhalt der Datei für das Einfügen in andere Anwendungen bekommen.

Wenn Sie Kompatibilität mit anderen Betriebssystemen wollen, müssen Sie eine andere Befehlsdatei ähnlich wie

VBS verwenden

Ich verwende eine Liste von Dateien und Passagen Inhalt einer Suchliste zu lesen.

kann ich ein Projekt auf GitHub erstellen den Code zu laden, so dass andere Leute es mich verwenden kann oder helfen, den Code zu verbessern.

Verwandte Themen