1

SlickEditに別のウィンドウを制御させたい。

一部のウィンドウのAPIを使用してこれを行う方法はわかっていますが、SlickEditでこれを実装する方法がわかりません。Slick-C(SlickEditのマクロ言語)が使われると思います。Slick-Cでいくつかの制限されたコーディングを行いましたが、ウィンドウAPIを実行できるかどうかわかりません。

これが私がWindowsAPIを使ってやりたいことです。

  • BringWindowToTop(これにより他のウィンドウが一番上に表示されます)
  • SetForegroundWindow
  • SendKeyを使用して、他のウィンドウでF7を押すことをシミュレートします。
  • SendKeyは、WScript.Shellのメソッドです。

それはかなり簡単に聞こえます、私が知る必要があるのはSlickEditでそれを行う方法だけです。

アップデート:

私は、 jussijが概説した概念をほとんど使用しましたが、PL/Bと呼ばれる言語に精通しています。私はすでにこれらのAPIのほとんどを別のプロセスで機能させていたので、この新しいプログラムを作成するのは非常に簡単で、プログラムを実行するためにSlickEditシェルを使用しました。

SlickEdit内で必要だったものは次のとおりです。

_command BenShellSAV1P198() name_info(','VSARG2_MACRO|VSARG2_MARK|VSARG2_REQUIRES_MDI_EDITORCTL|VSARG2_READ_ONLY)
{
   save_all();
   shell("T:\\Sunbelt\\CODE\\plbwin.exe -h -i PlbBenTDSm.INI SAV1P198.PLC","N");
}

次に、そのマクロをホットキーにバインドすると、すべて正常に機能します。

4

1 に答える 1

3

SendKey は WScript.Shell のメソッドです。

あなたが説明したことはすべて、WScript レベルで実行できると確信しています。

したがって、すべての作業を行うスクリプトを作成し、それが機能したら、cscript.exe実行可能ファイルを使用してスクリプトを実行することにより、SlickEdit にツールとして追加するだけです。

于 2009-09-28T00:13:57.397 に答える