Search code examples
c#c++.netastyle

Invoking Astyle on a string or a file via C#


I am generating C++ code via C#, for some reason after applying astyle my generated code compiles. So is there a way I can invoke astyle from within my C# windows application?


Solution

  • I finally figured it out a few days ago, so thought i would share my function to astyle via c#

    ' private void astyleDirectory(string target_path) { System.Diagnostics.Process pProcess = new System.Diagnostics.Process(); //Enter Path to get Astyle.exe here pProcess.StartInfo.FileName=System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().Location) + @"\Astyle.exe";

           pProcess.StartInfo.Arguments = "--options=none --style=ansi --recursive  *.h *.cpp";
           pProcess.StartInfo.UseShellExecute = false;
           pProcess.StartInfo.RedirectStandardOutput = true;
           pProcess.StartInfo.RedirectStandardError = true;
           pProcess.StartInfo.WorkingDirectory = System.IO.Path.GetDirectoryName(target_path);
           try
           {
               pProcess.Start();
               string strOutput = pProcess.StandardOutput.ReadToEnd();
               string strError = pProcess.StandardError.ReadToEnd();
               pProcess.WaitForExit();
    
           }
           catch { }
       }
    

    '