2016-05-25 4 views
0

他のアプリケーションで後で使用するためにスニペットのような小さなコードをtxtに登録するWebkitアプリを作った。私は自分の「スニペット」を見つけて、クリップボードにコンテンツを設定することができます。C#sendkeysのようなノードWebkit上でコンビネーションキーを実行するには

また、C#のSendKeys関数のようにNode-Webkitで "Ctrl + v"キーの組み合わせを実行したいと思います。

今、別のアプリに貼り付けるには、手動でキーの組み合わせ「Ctrl + v」を押す必要があります。

また、私はSendKey関数を実行してそれを閉じる小さなexeプログラムのような別のファイルをどのように実行するかと考えていました。しかし、私は他のスクリプトやexeプログラムを呼び出すことなく、ノードWebkit関数を好む。

これは可能ですが、どうすればいいですか?みんなありがとう。

答えて

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でプロジェクトを作成して、他の人が使用できるようにコードをロードしたり、コードを改善したりできます。

関連する問題