2016-05-25 23 views
0

我製作了一個Webkit應用程序,可以在txt上註冊小代碼,如片段以便稍後在其他應用程序中使用。我可以找到我的「片段」並將其內容設置在剪貼板上。如何在node-webkit上執行組合密鑰,如c#sendkeys

但是,我想在Node-Webkit上運行「Ctrl + v」組合鍵,就像C#上的SendKeys函數一樣。

現在我需要按手動組合鍵「Ctrl + v」粘貼到另一個應用程序。

另外我在想如何運行另一個文件,如一個小的exe程序,它執行SendKey函數並關閉它。但是我更喜歡node-webkit函數,而不用調用其他腳本或exe程序。

可以做到這一點,我該怎麼做?多謝你們。

回答

1

那麼,我在網上尋找一個沒有結果的答案。

但我已經實現的最佳解決方案是使用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上創建一個項目來加載代碼,以便其他人可以使用它或幫助我改進代碼。

相關問題