
おもしろいですが、長い間、
Visual Studioからサードパーティのアプリケーションを実行する能力は注目に値すると
は思いませんでした。 深刻な統合にはプラグインの開発が必要です。それだけです!
結局のところ、私は間違っていました。
外部ツールが
Visual Studioの機能を迅速に拡張する多くのシナリオがあります。
ちょうど昨日、私の親友が質問をし
ました-Visual Studio 2010パッケージの
PowerCommandsから
Open Containing Folderコマンドを作成し、
Windows Explorerではなく
Far Managerを起動する方法を
教えてください。 オリジナルでは、このコマンドは
ソリューションエクスプローラーのコンテキストメニューで使用できます
。Windowsエクスプローラーを開き、呼び出されたファイルにカーソルを設定します。
私の最初のアイデア(簡単なことはありません
-Visual Studioギャラリーから
PowerCommands.vsixをダウンロードし、解凍し、
Reflectorで解析し、
Visual Studio拡張ガイドでカバーし、すぐにアナログを書く必要があります)これはエディターの拡張ではありません))はまだ非常に重要なタスクであり、経験がなければ、例やステップバイステップのマニュアルでも、その解決策は半日以上かかります-1日ではないにしても!
少し考えてから、
外部ツールメカニズムがこれらの目的に非常に適していると判断しました。 そして、実際、
FARに
Open Containing Folderの 「チーム」を作成するのに30分もかかりませんでした。
これがどのように行われるかを見てみましょう。
外部ツールを登録する
最初のステップは、新しい
外部ツールを登録することです。
Visual Studioで外部ツールを管理するための
外部ツールウィンドウがあります(
メインメニュー >
ツール >
外部ツール ...):
新しいツールを追加するには、[
追加 ]ボタンをクリックして、いくつかのパラメーターを指定します。
タイトル :FARに含まれるフォルダーを開く
コマンド :「C:\ Program Files \ Far2 \ Far.exe」
引数 :$(ItemPath)
この場合の
初期ディレクトリパラメータは空白のままにすることができます。
引数と
初期ディレクトリパラメータに使用できる引数のリストは、MSDNライブラリの
Visual Studioの外部ツール/外部ツールの引数にあります 。 さらに、ボタンをクリックすると開く特別なメニューを使用できます

。
ここに私が終わったものがあります:
[
外部ツール]ウィンドウを閉じた後、
[ メインメニュー] > [
ツール ]
メニューに [
FARに含まれるディレクトリを開く ]項目が表示されます。 このアイテムを選択すると、
Far Managerが起動し、カーソルが次の場所を指します。
- エディターで開かれたファイル-エディターからメニューにアクセスした場合。
- ソリューションエクスプローラーで選択したファイル- ソリューションエクスプローラーからメニューにアクセスした場合。
CMDスクリプトの実行
次の図に、
FARコマンドで
ディレクトリを開くの結果を示します。 そして、この結果は、控えめに言っても、印象的ではありません... 私の
Far Managerは、異なるウィンドウサイズで動作するように構成されています。
通常のサイズのウィンドウを開くには、小さなスクリプトを作成する必要があります。
mode con cols=132 lines=59 "C:\Program Files\Far2\Far.exe"
このスクリプトを
Visual Studioから実行するには、ディスクに保存し(
C:\ psg \ Tools \ VSOpenInFAR \ VSOpenInFAR.cmdという名前で保存し
ます )、このスクリプトを指すようにCommandパラメーターを変更する必要があります。
これで結果は非常に満足できるものになりました
。FarManagerウィンドウには通常のサイズがあります。
ご注意
Visual Studioは
cmd.exeを使用してCMDスクリプトを実行し、次の形式で呼び出します。
cmd.exe /c ""C:\psg\Tools\VSOpenInFAR\VSOpenInFAR.cmd" "C:\psg\...\Class2.cs""
[終了時に閉じる ]オプションがチェックされていない場合、呼び出しフォームはわずかに変更されます。
cmd.exe /c ""C:\psg\Tools\VSOpenInFAR\VSOpenInFAR.cmd" "C:\psg\...\Class2.cs" & pause"
これは、引用符とスクリプト完了コードの問題を回避するために留意する必要があります!
コンテキストメニューから外部ツールを呼び出す
さて、実行可能なツールが手に入りました。これで、グッズの追加を開始できるようになりました。たとえば、
FAR呼び出し
で[フォルダーを開く ]を
ソリューションエクスプローラーのコンテキストメニューに追加します。
これには以下が必要です。
- [ カスタマイズ]ウィンドウを開きます( メインメニュー > [ ツール ] > [ カスタマイズ...] )。
- [ コマンド ]タブに移動します。
- [ 並べ替えるメニューまたはツールバーを選択]セクションで、[ コンテキストメニュー]を選択し、[ プロジェクトとソリューションのコンテキストメニュー ]を選択します。 アイテム
次のステップは、新しいメニュー項目に適切な位置を選択することです。
Open Containing Folderアイテムの隣に配置することにしました。
ここで、選択した位置に新しいメニュー項目を挿入する必要があります。このため
にコマンドの
追加ボタンが設計されており、同じ名前のウィンドウが表示されます。
このウィンドウでは、[
ツール]カテゴリを選択し、[
外部コマンド6]コマンドを指定する必要があります。残念ながら、
外部ツールを起動するコマンドはシリアル番号でしか識別できません。 [OK]をクリックすると、コンテキストメニューに新しいアイテムが表示されます-
外部コマンド6 。
最後の手順は、メニュー項目の名前を変更することです。 これを行うには、
[選択の
変更 ]ボタンをクリックし、
[ 名前]フィールドでツールの名前を指定します
-FARに含まれるフォルダーを開きます。
これらの操作の結果を以下に示します-
ソリューションエクスプローラーのコンテキストメニュー
で[FARでフォルダーを開く ]項目を使用できます。
追加情報
外部ツールの使用に関する追加情報は、MSDNで入手できます。
- Visual Studioの外部ツール
- 外部ツールの引数