zoukankan      html  css  js  c++  java
  • C#获取当前系统信息的类

     /// <summary>

        /// Class designed to give information
        /// about the current system
        /// </summary>
        public static class Environment
        {
            #region Public Static Properties
            /// <summary>
            /// Name of the machine running the app
            /// </summary>
            public static string MachineName
            {
                get { return System.Environment.MachineName; }
            }

            /// <summary>
            /// Gets the user name that the app is running under
            /// </summary>
            public static string UserName
            {
                get { return System.Environment.UserName; }
            }

            /// <summary>
            /// Name of the domain that the app is running under
            /// </summary>
            public static string DomainName
            {
                get { return System.Environment.UserDomainName; }
            }

            /// <summary>
            /// Name of the OS running
            /// </summary>
            public static string OSName
            {
                get { return System.Environment.OSVersion.Platform.ToString(); }
            }

            /// <summary>
            /// Version information about the OS running
            /// </summary>
            public static string OSVersion
            {
                get { return System.Environment.OSVersion.Version.ToString(); }
            }

            /// <summary>
            /// The service pack running on the OS
            /// </summary>
            public static string OSServicePack
            {
                get { return System.Environment.OSVersion.ServicePack; }
            }
            
            /// <summary>
            /// Full name, includes service pack, version, etc.
            /// </summary>
            public static string OSFullName
            {
                get { return System.Environment.OSVersion.VersionString; }
            }

            /// <summary>
            /// Gets the current stack trace information
            /// </summary>
            public static string StackTrace
            {
                get { return System.Environment.StackTrace; }
            }

            /// <summary>
            /// Returns the number of processors on the machine
            /// </summary>
            public static int NumberOfProcessors
            {
                get { return System.Environment.ProcessorCount; }
            }

            /// <summary>
            /// The total amount of memory the GC believes is used
            /// by the app in bytes
            /// </summary>
            public static long TotalMemoryUsed
            {
                get { return GC.GetTotalMemory(false); }
            }

            /// <summary>
            /// The total amount of memory that is available in bytes
            /// </summary>
            public static long TotalMemory
            {
                get 
                {
                    long ReturnValue = 0;
                    ObjectQuery TempQuery = new ObjectQuery("SELECT * FROM Win32_LogicalMemoryConfiguration");
                    using (ManagementObjectSearcher Searcher = new ManagementObjectSearcher(TempQuery))
                    {
                        foreach (ManagementObject TempObject in Searcher.Get())
                        {
                            ReturnValue = long.Parse(TempObject["TotalPhysicalMemory"].ToString()) * 1024;
                        }
                    }
                    return ReturnValue;
                }
            }
            #endregion
        }
  • 相关阅读:
    PHP 中 define() 和 const 定义常量时的区别
    tar 解压常用压缩文件格式命令大全
    JVM的GC策略
    守护线程(Daemon Thread)
    探索HashMap实现原理及其在jdk8数据结构的改进
    Java面试& HashMap实现原理分析
    Java分布式应用
    全面理解Java内存模型
    Java& Vector与ArrayList区别
    深入理解Java虚拟机&运行时数据区
  • 原文地址:https://www.cnblogs.com/kevinGao/p/2323349.html
Copyright © 2011-2022 走看看