为了调试目的而获取“关键”机器信息的库?

时间:2011-07-20 12:45:04

标签: c# .net debugging

我们的软件在现场,将记录“关键”机器信息,并用于调试目的。

“严重”信息可能包括对调试应用程序“通常”很重要的数据。它可能包括:

  1. 操作系统
  2. 已安装Windows更新
  3. 硬件信息:CPU,RAM,HDD
  4. 正在运行的流程/服务
  5. 当前用户帐户
  6. 我很抱歉提出这样模糊的问题,我相信使用WMI编写自定义问题是相当简单的。但是,如果已经有一个设计用来做这种东西的库/框架,那么重新发明轮子会很棒。

1 个答案:

答案 0 :(得分:1)

尝试类似这样的内容, 伪代码!

        private StringBuilder GetSystemInformationString()
        {
            StringBuilder sb = new StringBuilder();
            PropertyInfo[] properties = typeof(System.Windows.Forms.SystemInformation).GetProperties();
            if (properties != null && properties.Length > 0)
            {
                foreach (PropertyInfo pin in properties)
                {
                    sb.Append(System.Environment.NewLine);
                    sb.Append(pin.Name + " : " + pin.GetValue(pin, null));
                }
            }

            return sb;

        }

对于内存可以使用这样的东西:

(System.Diagnostics.Process.GetCurrentProcess().WorkingSet64 / 1024).ToString() + " Kb";

问候。