Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/305.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/visual-studio-2010/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何";“以编程方式”;将diff工具与visualstudio集成_C#_Visual Studio 2010_Winmerge - Fatal编程技术网

C# 如何";“以编程方式”;将diff工具与visualstudio集成

C# 如何";“以编程方式”;将diff工具与visualstudio集成,c#,visual-studio-2010,winmerge,C#,Visual Studio 2010,Winmerge,有没有一种方法可以“以编程方式”将diff工具(如WinDiff和WinMerge)与VisualStudio2010集成?这些文件不是在解决方案资源管理器中找到的文件 程序必须搜索并在列表中存储从某个目录中找到的文件,然后递归地比较同名文件 您可能想看看这个扩展是否是您所需要的:据我所知,您正在寻找TFS类。下面是一个如何使用它的示例: string f1 = @"file1.cs"; string f2 = @"f2.cs"; Microsoft.TeamFoundation.Versio

有没有一种方法可以“以编程方式”将diff工具(如WinDiff和WinMerge)与VisualStudio2010集成?这些文件不是在解决方案资源管理器中找到的文件


程序必须搜索并在列表中存储从某个目录中找到的文件,然后递归地比较同名文件

您可能想看看这个扩展是否是您所需要的:

据我所知,您正在寻找TFS类。下面是一个如何使用它的示例:

string f1 = @"file1.cs";
string f2 = @"f2.cs";

Microsoft.TeamFoundation.VersionControl.Common.DiffOptions options = new Microsoft.TeamFoundation.VersionControl.Common.DiffOptions();
options.Recursive = true;
options.StreamWriter = new System.IO.StreamWriter(Console.OpenStandardOutput());
options.UseThirdPartyTool = true;
options.OutputType = Microsoft.TeamFoundation.VersionControl.Common.DiffOutputType.Unified;            

var diff = Difference.DiffFiles(
            f1, FileType.Detect(f1, null),
            f2, FileType.Detect(f2, null),
            options);

while (diff != null)
{
    // Do whatever it is that you want to do here            
    diff = diff.Next;
}

谢谢但是,有没有一种方法可以自动比较winmerge或windiff中的文件并使用C语言?如果您打算在代码中启动windiff,您可以通过启动一个新进程来调用它,请看。我希望在不实际执行windiff的情况下比较文件。我还没有找到解决办法。。。也许对我来说最好的方法就是使用方法
ReadAllText
来编写代码。你到底想实现什么?您只是想确定文件或文件中的文本不同,还是希望每个文件都显示WinMerge?