2017-01-10 17 views
0

私はVisual Studio拡張機能からVisualDiffFiles静的関数を使用しています。それは、私が拡張機能を実行しているものではなく、VSの別のインスタンス(デバッグしているもの)の差分ウィンドウを開きます。正しいVSインスタンスで強制的に開くことができますか?Visual Studio Extension別のインスタンスでVisualDIffFilesが開きます

編集 これは、現在のVisual Studioのインスタンス上で差分ウィンドウを表示したい場合は、それを達成するためにdte.ExecuteCommandメソッドを使用してくださいユーザーコントロール

// Diff params 
    string sourceFile = @"c:\temp\Eula1.txt"; 
    string targetFile = @"c:\temp\Eula2.txt"; 
    string sourceFileTag = "1"; 
    string targetFileTag = "2"; 
    string sourceFileLabel = "1"; 
    string targetFileLabel = "2"; 
    bool isSourceReadOnly = true; 
    bool isTargetReadOnly = true; 

    // Use the VS diff tools 
    Microsoft.TeamFoundation.VersionControl.Client.Difference.VisualDiffFiles(sourceFile, targetFile, sourceFileTag, targetFileTag, 
                      sourceFileLabel, targetFileLabel, isSourceReadOnly, isTargetReadOnly); 
+0

関連するコード(vsx)と手順を記載してください。問題を私の側で再現することができます。 –

+0

私はあなたに拡張子を与えることはできません、それは内部ツールです。私は上記の私の質問に使用している正確なコードを追加しました。 –

+1

あなたのコードに基づいて、あなたのコードを使用して簡単なカスタムコマンドを作成し、拡張ビジュアルスタジオinstance.https://1drv.ms/u/s!を実行しているウィンドウを表示します。AlvaNEnglADDgQCqFJeRaoMUgjf2 –

答えて

1

から実行、コードです。

DTE2 dte = (DTE2)this.ServiceProvider.GetService(typeof(DTE)); 

string file1 = @"D:\Test\Test1.txt"; 
string file2 = @"D:\Test\Test2.txt"; 

dte.ExecuteCommand("Tools.DiffFiles", $"\"{ file1}\" \"{ file2}\""); 
+0

これはうまくいきます。差分ウィンドウのキャプションもカスタマイズする方法はありますか? –

関連する問題