2017-07-10 2 views
0

Je développe une application Windows Forms en C# qui va apporter des modifications à un document et je veux inclure un bouton qui ouvrira l'avant et après dans winmerge.ouvrir winmerge avec deux documents côte à côte C#

Si c'est possible, comment puis-je le faire?

Plus de détail:

Je veux cliquer sur un bouton Show Result avec le fichier à partir de la zone de texte. Il devrait ouvrir winmerge et ouvrir this dialog avec le fichier original sur la gauche et le fichier mis à jour sur la droite.

Jusqu'à présent, j'ai:

Process notePad = new Process(); 
    notePad.StartInfo.FileName = "WinMerge.exe"; 
    notePad.StartInfo.Arguments = txtIn.Text; 
    notePad.Start(); 

Le fichier mis à jour est dans le même répertoire que le fichier d'entrée un niveau plus bas dans un dossier appelé « mis à jour »

+2

Salut - bienvenue à SO. Votre question est un peu trop ouverte, ce qui rend moins probable que quelqu'un puisse vous aider - veuillez fournir plus de détails: cherchez-vous des détails sur comment appeler winmerge depuis la ligne de commande? Peut-être avez-vous une question sur la façon d'utiliser Winforms pour fournir une interface d'édition de fichier? Bonne chance! –

Répondre

1

de winmerge has command line parameters, qui sont documentés sur leur site.

L'utilisation minimale de ligne de commande semble être ceci:

winmergeu leftpath rightpath 

Vous pouvez exécuter ce en appelant Process.Start() avec les arguments appropriés.

String leftFilePath = "..."; 
String rightFilePath = "..."; 

// This will do, if the winmerge exe is in the search path. 
string exe = "winmergeu.exe"; 
String args = [email protected]"""{leftFilePath}"" ""{rightFilePath}"""; 

Process.Start(exe, args); 

Vous pouvez stocker votre texte avant et après in temp files.