0

我正在通过 C# 生成 C++ 代码,出于某种原因,在应用 astyle 后我生成的代码编译。那么有没有一种方法可以从我的 C# windows 应用程序中调用 astyle ?

4

2 回答 2

0

Astyle 是一个命令行工具,因此您可以使用 Process 类在外部调用它并要求它格式化 C++ 源文件。

我过去做过类似的项目,例如

http://alex.codeplex.com

于 2012-04-06T09:41:39.760 回答
0

几天前我终于想通了,所以我想我会通过 c# 将我的函数分享给 astyle

' private void astyleDirectory(string target_path) { System.Diagnostics.Process pProcess = new System.Diagnostics.Process(); //此处输入获取Astyle.exe的路径 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 { }
   }

'

于 2012-04-17T06:36:30.707 回答