100分问题!!!C#里要用WMI获取系统信息,请问一个有几个ManagementClass?分别是什么?

100分问题!!!C#里要用WMI获取系统信息,请问一个有几个ManagementClass?分别是什么?,第1张

/
Rainsoft Development Library for MicrosoftNET
Author: Qyuhen (qyuhen@hotmailcom)
/
using System;
using SystemCollections;
using SystemRuntimeInteropServices;
using SystemIO;
using SQLDMO;
namespace RainsoftData
{
/// <summary>
/// SQLDMO辅助类
/// </summary>
/// <remarks>
/// 使用前添加 "Microsoft SQLDMO Object Library" COM 引用。
/// </remarks>
public class SqlDmoHelper
{
#region DatabaseInfo
/// <summary>
/// 数据库信息
/// </summary>
public struct DatabaseInfo
{
public string Name;
public string Owner;
public string PrimaryFilePath;
public string CreateDate;
public int Size;
public float SpaceAvailable;
public string PrimaryName;
public string PrimaryFilename;
public int PrimarySize;
public int PrimaryMaxSize;
public string LogName;
public string LogFilename;
public int LogSize;
public int LogMaxSize;
public override string ToString()
{
string s = "Name:{0}\r\n" +
"Owner:{1}\r\n" +
"PrimaryFilePath:{2}\r\n" +
"CreateDate:{3}\r\n" +
"Size:{4}MB\r\n" +
"SpaceAvailable:{5}MB\r\n" +
"PrimaryName:{6}\r\n" +
"PrimaryFilename:{7}\r\n" +
"PrimarySize:{8}MB\r\n" +
"PrimaryMaxSize:{9}MB\r\n" +
"LogName:{10}\r\n" +
"LogFilename:{11}\r\n" +
"LogSize:{12}MB\r\n" +
"LogMaxSize:{13}MB";
return stringFormat(s, Name, Owner, PrimaryFilePath, CreateDate, Size,
SpaceAvailable, PrimaryName, PrimaryFilename, PrimarySize,
PrimaryMaxSize, LogName, LogFilename, LogSize, LogMaxSize);
}
}
#endregion
private SQLServer2 sqlServer;
private string server;
private string login;
private string password;
public SqlDmoHelper(string server, string login, string password)
{
thisserver = server;
thislogin = login;
thispassword = password;
sqlServer = new SQLServer2Class();
sqlServerConnect(server, login, password);
}
public void Close()
{
sqlServerClose();
}
#region Property
/// <summary>
/// 获取主要版本号
/// </summary>
public string Version
{
get
{
return stringFormat("{0}{1}", sqlServerVersionMajor, sqlServerVersionMinor);
}
}
/// <summary>
/// 获取详细版本信息
/// </summary>
public string VersionString
{
get
{
return sqlServerVersionString;
}
}
/// <summary>
/// 获取服务器时间
/// </summary>
public string ServerTime
{
get
{
return sqlServerServerTime;
}
}
/// <summary>
/// 获取系统服务名称
/// </summary>
public string ServiceName
{
get
{
return sqlServerServiceName;
}
}
/// <summary>
/// 获取或设置系统服务是否自动启动
/// </summary>
public bool AutostartServer
{
get
{
return sqlServerRegistryAutostartServer;
}
set
{
sqlServerRegistryAutostartServer = value;
}
}
/// <summary>
/// 获取字符集设置
/// </summary>
public string CharacterSet
{
get
{
return sqlServerRegistryCharacterSet;
}
}
/// <summary>
/// 获取服务器物理内存大小(MB)
/// </summary>
public int PhysicalMemory
{
get
{
return sqlServerRegistryPhysicalMemory;
}
}
/// <summary>
/// 获取服务器处理器(CPU)数量
/// </summary>
public int NumberOfProcessors
{
get
{
return sqlServerRegistryNumberOfProcessors;
}
}
#endregion
#region Public Method
/// <summary>
/// 获取网络内所有可用的服务器
/// </summary>
/// <returns></returns>
public static string[] ListAvailableSQLServers()
{
NameList servers = new ApplicationClass()ListAvailableSQLServers();
if (serversCount <= 0) return new string[0];
ArrayList list = new ArrayList(serversCount);
foreach (object o in servers) listAdd(o);
return (string[])listToArray(typeof(string));
}
/// <summary>
/// 断开数据库所有连接
/// </summary>
/// <param name="dbName"></param>
public void KillAllProcess(string dbName)
{
QueryResults qr = sqlServerEnumProcesses(-1) ;

// 获取SPID和DBNAME字段列序号
int iColPIDNum = -1 ;
int iColDbName = -1 ;
for(int i = 1; i <= qrColumns; i++)
{
string strName = qrget_ColumnName(i) ;

if (strNameToUpper()Trim() == "SPID")
iColPIDNum = i ;
else if (strNameToUpper()Trim() == "DBNAME")
iColDbName = i ;
if (iColPIDNum != -1 && iColDbName != -1)
break ;
}

// 将指定数据库的连接全部断开
for(int i = 1; i <= qrRows; i++)
{
int lPID = qrGetColumnLong(i,iColPIDNum);
string strDBName = qrGetColumnString(i, iColDbName);
if (stringCompare(strDBName, "test", true) == 0)
sqlServerKillProcess(lPID);
}
}
/// <summary>
/// 获取数据库信息
/// </summary>
/// <param name="dbName"></param>
/// <returns></returns>
public DatabaseInfo GetDatabaseInfo(string dbName)
{
Database db = GetDatabase(dbName);
if (db == null) throw new Exception("Database not exists!");
DatabaseInfo info = new DatabaseInfo();
infoName = dbName;
infoOwner = dbOwner;
infoPrimaryFilePath = dbPrimaryFilePath;
infoCreateDate = dbCreateDate;
infoSize = dbSize;
infoSpaceAvailable = dbSpaceAvailableInMB;

DBFile primary = dbFileGroupsItem("PRIMARY")DBFilesItem(1);
infoPrimaryName = primaryName;
infoPrimaryFilename = primaryPhysicalNameTrim();
infoPrimarySize = primarySize;
infoPrimaryMaxSize = primaryMaximumSize;
_LogFile log = dbTransactionLogLogFilesItem(1);
infoLogName = logName;
infoLogFilename = logPhysicalNameTrim();
infoLogSize = logSize;
infoLogMaxSize = logMaximumSize;
return info;
}
/// <summary>
/// 分离数据库
/// </summary>
/// <param name="dbName"></param>
/// <remarks>
/// 分离前最好调用KillAllProcess关闭所有连接,否则分离可能失败。
/// </remarks>
public void DetachDB(string dbName)
{
sqlServerDetachDB(dbName, true);
}
/// <summary>
/// 附加数据库
/// </summary>
/// <param name="dbName"></param>
/// <param name="dbFile"></param>
/// <example>
/// <code>
/// SqlDmoHelper dmo = new SqlDmoHelper("(local)", "sa", "sa");
/// dmoAttachDB("test", @"d:\temp\database\test_datamdf");
/// </code>
/// </example>
public void AttachDB(string dbName, string dbFile)
{
sqlServerAttachDB(dbName, dbFile);
}
/// <summary>
/// 删除数据库(文件也将被删除)
/// </summary>
/// <param name="dbName"></param>
public void KillDB(string dbName)
{
sqlServerKillDatabase(dbName);
}
/// <summary>
/// 创建数据库
/// </summary>
/// <param name="dbName">数据库名称</param>
/// <param name="path">数据文件保存路径</param>
/// <param name="primaryFilename">数据库文件名(不含路径)</param>
/// <param name="logFilename">日志文件名(不含路径)</param>
/// <example>
/// <code>
/// SqlDmoHelper dmo = new SqlDmoHelper("(local)", "sa", "sa");
/// dmoCreateDB("test1", @"d:\temp\database", "abcmdf", "abc1ldf");
/// </code>
/// </example>
public void CreateDB(string dbName, string path, string primaryFilename, string logFilename)
{
// 创建数据库文件
DBFile dbFile = new DBFileClass();
dbFileName = dbName + "_Data";
dbFilePhysicalName = PathCombine(path, primaryFilename);
dbFilePrimaryFile = true;
//dbFileSize = 2; // 设置初始化大小(MB)
//dbFileFileGrowthType = SQLDMO_GROWTH_TYPESQLDMOGrowth_MB; // 设置文件增长方式
//dbFileFileGrowth=1; // 设置增长幅度
// 创建日志文件
_LogFile logFile = new LogFileClass();
logFileName = dbName + "_Log";
logFilePhysicalName = PathCombine(path, logFilename);
//logFileSize = 3;
//logFileFileGrowthType=SQLDMO_GROWTH_TYPESQLDMOGrowth_MB;
//logFileFileGrowth=1;

// 创建数据库
Database db = new DatabaseClass();
dbName = dbName;
dbFileGroupsItem("PRIMARY")DBFilesAdd(dbFile);
dbTransactionLogLogFilesAdd(logFile);
// 建立数据库联接,并添加数据库到服务器
sqlServerDatabasesAdd(db);
}
/// <summary>
/// 备份数据库
/// </summary>
/// <param name="dbName"></param>
/// <param name="bakFile"></param>
/// <param name="bakSetName"></param>
/// <param name="bakDescription"></param>
/// <example>
/// <code>
/// SqlDmoHelper dmo = new SqlDmoHelper("(local)", "sa", "sa");
/// dmoBackupDB("test", @"d:\temp\database\testbak", "手动备份1", "备份说明");
/// </code>
/// </example>
public void BackupDB(string dbName, string bakFile, string bakSetName, string bakDescription)
{
Backup oBackup = new BackupClass();
oBackupAction = SQLDMO_BACKUP_TYPESQLDMOBackup_Database;
oBackupDatabase = dbName;
oBackupFiles = bakFile;
oBackupBackupSetName = bakSetName;
oBackupBackupSetDescription = bakDescription;
oBackupInitialize = true;
oBackupSQLBackup(sqlServer);
}
/// <summary>
/// 恢复数据库
/// </summary>
/// <param name="dbName"></param>
/// <param name="bakFile"></param>
/// <remarks>
/// 恢复前最好调用KillAllProcess关闭所有连接,否则恢复可能失败。
/// </remarks>
/// <example>
/// <code>
/// SqlDmoHelper dmo = new SqlDmoHelper("(local)", "sa", "sa");
/// dmoRestoreDB("test", @"d:\temp\database\testbak");
/// </code>
/// </example>
public void RestoreDB(string dbName, string bakFile)
{
Restore oRestore = new RestoreClass();
oRestoreAction = SQLDMO_RESTORE_TYPESQLDMORestore_Database;
oRestoreDatabase = dbName;
oRestoreFiles = bakFile;
oRestoreFileNumber = 1;
oRestoreReplaceDatabase = true;
oRestoreSQLRestore(sqlServer);
}
/// <summary>
/// 收缩数据库
/// </summary>
/// <param name="dbName"></param>
public void ShrinkDB(string dbName)
{
Database db = GetDatabase(dbName);
if (db == null) throw new Exception("Database not exists!");
dbShrink(0, SQLDMO_SHRINK_TYPESQLDMOShrink_Default);
}
/// <summary>
/// 获取所有的数据库名
/// </summary>
/// <returns></returns>
public string[] ListAllDatabase()
{
ArrayList list = new ArrayList();
foreach(Database d in sqlServerDatabases)
{
listAdd(dName);
}
if (listCount == 0)
return new string[0];
else
return (string[])listToArray(typeof(string));
}
/// <summary>
/// 获取所有登录名
/// </summary>
/// <returns></returns>
/// <remarks>
/// 管理工具 "安全性->登录"
/// </remarks>
public string[] ListAllLogins()
{
ArrayList list = new ArrayList();
foreach(Login d in sqlServerLogins)
{
listAdd(dName);
}
if (listCount == 0)
return new string[0];
else
return (string[])listToArray(typeof(string));
}
/// <summary>
/// 获取全部数据表名称
/// </summary>
/// <param name="dbName"></param>
/// <returns></returns>
public string[] ListAllTables(string dbName)
{
Database db = GetDatabase(dbName);
if (db == null) throw new Exception("Database not exists!");
ArrayList list = new ArrayList();
foreach(Table t in dbTables)
{
listAdd(tName);
}
if (listCount == 0)
return new string[0];
else
return (string[])listToArray(typeof(string));
}
/// <summary>
/// 获取全部存储过程名称
/// </summary>
/// <param name="dbName"></param>
/// <returns></returns>
public string[] ListAllStoredProcedure(string dbName)
{
Database db = GetDatabase(dbName);
if (db == null) throw new Exception("Database not exists!");
ArrayList list = new ArrayList();
foreach(StoredProcedure sp in dbStoredProcedures)
{
listAdd(spName);
}
if (listCount == 0)
return new string[0];
else
return (string[])listToArray(typeof(string));
}
/// <summary>
/// 获取数据库对象
/// </summary>
/// <param name="dbName"></param>
/// <returns></returns>
/// <remarks>
/// 可以通过数据库对象获取数据库内表、存储过程、触发器、数据类型等信息。
/// </remarks>
/// <example>
/// 显示数据库中所有表及其结构
/// <code>
/// SqlDmoHelper dmo = new SqlDmoHelper("(local)", "sa", "sa");
/// SQLDMODatabase db = dmoGetDatabase("test");
/// foreach(SQLDMOTable t in dbTables)
/// {
/// ConsoleWriteLine("Table:{0}", tName);
/// for (int i = 1; i <= tColumnsCount; i++) // SQLDMO所有索引序号从1开始
/// {
/// SQLDMO_Column col = tColumnsItem(i);
/// ConsoleWriteLine(" Column:{0} DataType:{1}", colName, colDatatype);
/// }
///
/// ConsoleWriteLine("---------------");
/// }
/// </code>
/// </example>
public Database GetDatabase(string dbName)
{
foreach(Database d in sqlServerDatabases)
{
if (stringCompare(dName, dbName, true) == 0)
return d;
}
return null;
}
#endregion
}
}

RainSoft(润索)公司是在世界水处理行业内,率先为软水机产品承诺提供“Limited Lifetime
Warranty(有限的终身质保)”的公司。润索公司对其软水机的质保提出了以下承诺:“只要用户在使用,润索就对树脂、树脂罐、电子面板、盐箱、阀体等核心部件终身质保”。在每一台润索软水机包装箱中都有一份由美国原厂颁发的质量保证书,将上述承诺郑重地以书面文字形式交用户留存,以做为今后兑现承诺的凭证。
润索中央净水机是由全自动控制器与食品级玻璃钢压力罐相结合,通过内置椰壳活性炭和KDF过滤材料对原水进行过滤的家用水净化设备。可以去除铁锈、泥沙、悬浮颗粒物;吸附有机物、农药、洗涤剂、以及去除异色异味、 *** ;抑制微生物、藻类的繁殖。KDF55过滤材料:有效滤除水中重金属,抑制水中细菌的生长繁殖。使全家用水更清洁、更健康。
主要特点:
1、整机原装进口。2、控制阀体电子面板质保10年、树脂罐、终身质保。3、选用斯里兰卡优质椰壳活性炭,过滤效果更好”KDF”滤料的添加,有效去除水 中重金属。4、阀体采用Norylò 特种材料制成,零磨损。5、树脂罐采用耐高压、搞冲击聚乙烯内胆,食品级卫生标准,使用安全放心。6、智能控制系统阀头,全自动冲洗再生,省水省电、省盐,8个 *** 作界面,20组数据传输,独特的断电记忆功能,确保用户使用参数不会因为断电而丢失。7、所有机型均标配大流量旁通阀, *** 作简便,用户在不需要净化水时轻松绕过净水系统,直接取用自来水,方便浇花、养鱼、拖地。8、采用美国军工级密封技术,提供最安全的用水保障。

目前在中国100%原装进口,
康丽根作为国际化的大公司,净水行业龙头,国产化是趋势,核心技术过硬,哪里产的并不那么重要。是不是进口的,看涉水批件,“卫水进字”是进口的,“卫水字”是国产的,还要让商家提供报关单税证明,是进口的产品,这些东西都是有的。

问题一:康丽根净水器怎么样 净水器一般分为两种,一种是通过PP棉,活性炭,反渗透膜等一般经过5层过滤,这是纯水机,过滤精度达到万分之一微米,而钙,镁,氯等离子都要大于网分之一微米,都会被过滤掉,可以直接饮用。沁园,安吉尔,美的,是国内纯水机的一线品牌可以放心使用。但是第一种要用电,还要有一个储水桶放在橱柜下面,价钱一般在1500-3500左右,主要是滤芯不一样,3000应该算是中上等的了,再贵一些的4-5千的那种就不用储水桶了。
一种是通过超滤膜过滤,留有钙,镁离子的,也可以达到直接饮用,一线品牌有泉来,立升。这种净水器过滤精度在001微米会保留水中的钙镁离子。
沁园,安吉尔,美的,泉来,立升都是可以信赖的品牌,你说的这个品牌知名度不很高。
如果有用请给与采纳,O(∩_∩)O谢谢

问题二:家里装修快结束了,想买个净水器,朋友推荐一个美国康丽根的品牌,不知道咋样? 康丽根是不错,这个牌子在中国比较少两方面原因,首先不太适合中国水质,而起价格特别高。

问题三:康丽根净水器怎么样 净水器主要分为超滤净水器、活性炭净水器和反渗透净水器(RO机)。
■超滤净水器只是简单的滤除泥沙、胶体和细菌,不能滤除水垢、重金属和化学污染物,不能改善口感;外压型的不能冲洗排污,内压型的可以冲洗排污,优点是:不用电、不浪费水,流量大、滤芯寿命长(1-5年)
■活性炭净水器,能吸附异色异味,改善口感,不能滤除水垢、重金属和化学污染物,烧开喝、泡茶与自来水区别不大,还有细菌滋生、亚硝酸盐超标等二次污染问题,易饱和失效,需要半年左右更换一次才能保证水质和卫生安全;优点是:不用电、不浪费水。
■反渗透净水器(纯水机),能垢滤除水垢、重金属和化学污染物,彻底改善水质和口感。缺点是:制水慢、浪费水、用电,安装维护比较麻烦
■针对传统反渗透净水器的缺点,有企业开发成功了集“超滤膜、活性炭纤维和RO膜”为一体的双膜双智净水器,带有“净水洗膜”功能(发明专利号:ZL2012103061455),智能判断水源条件和滤芯状态,智能调整冲洗方式,解决了传统RO机制水慢、废水多、滤芯寿命短、使用成本高等缺点。
从历次质监、卫生部门的抽检结果看,活性炭净水器的不合格率最高,其次是超滤净水器,反渗透净水器(纯水机)最安全、最放心。
■前置过滤器,主要是滤除大颗粒的铁锈、泥沙。在原水浑浊、铁锈泥沙多的情况下,可以起到保护净水器、延长净水器滤芯的使用寿命。
净水器都怕冰冻。在冬季需要采取防冻措施,以防止结冰。反渗透净水器(RO机)的制水速度受温度影响比较大,温度越低,制水越慢。

问题四:美国康丽根净水器咋样?求良心评价。 正用的就是美国康丽根,装了半年了,使用体验良好。

问题五:请问美国康丽根的净水器质量怎么样?本人在长沙这边 美国牌子不过国产了,进口的钱买国产货,自己考虑咯

问题六:康丽根净水器和霍尼韦尔哪个好 家用净水器类型多样,功能也各有特色。选择哪一类净水器,消费者需要结合自己的家庭需求进行购买。如果净水器主要用于过滤水中的杂质,建议购买PP滤芯、石英砂过滤、活性炭过滤等粗过滤净水器;如果是用于去除水中细菌、一些大分子有机物,可以选择以超滤为主要技术的净水器;如果所在地区水污染很严重,反渗透(RO)纯水机是不错的选择。总之,不同种类的家用净水器各有利弊,消费者要结合家庭用水量、水压以及水质情况等再做决定。

问题七:净水机康丽根好还是德国bwt好 其实好一点的净水器品牌净水效果都基本一样,能比较的就是价格问题还有能使用多久,净水器有分很多种,纯水机、净水机、超滤机等。要选择一款适合自己并且技术成熟使用放心,家人用得安心的。像澳润跟美的这两个品牌也不错,性价比高,纯物理过滤,不带电安全,一键快接式,售后服务放心。净水器带电的话很容易影响水质的,因为会电离水中的分子,也不安全。

问题八:有人用过康丽根家用净水器吗?他们售后怎么样? 要一下检测报告(不要印刷版的,要照片版的),一看就明白了。企业执照,生产许可,这些东西不是凭白无故就给企业发的,上面有很多信息的。一查就知道怎么回事了,而且一般客服会给你看的,他巴不得你向

问题九:康丽根净水器和怡口净水器那个好 无论从品牌上来讲还是从机器上来讲都差不多,在美国本土的销量前三名中的两个,还有一个是润索Rainsoft,所以这几个牌子你可以对比下然后做个选择。

问题十:美国culligan康丽根净水机PS250怎么样 美国Culligan公司成立70多年来,坚持为用户创造更高品质的水环境,所有产品及涉水零部件、材料、原料均通过美国NSF认证。作为水处理行业的领先者,Culligan永远致力于独立的开发体系。以至于其产品的每一个功能系统中不会找到水处理领域里其它公司的影子。为此他是全球唯一一家拥有200多项专利技术的水处理产品商家。其通过几代人的革新与创造开发了具有自己特色的产品,同时在全球建立了独立的服务体系。从而向全世界提供了最完美的产品及最人性化的服务。 Culligan公司目前在全球已有超过2000个的销售服务网点。无论您在何处,Culligan公司都可以向您提供最完美的服务??包括产品的方案设计、产品选型、安装、维修与更换等服务。让您充分享受到安全、健康的水。

芬尼品牌的空气能热水器安全又节能,推荐购买。

芬尼空气能热水器的优点:

1、使用寿命长。曾经有人做过调查,电热水器和燃气热水器的使用寿命,分别平均值在12年和8年左右,相对而言,空气能热水器的寿命比较长,它一般可以用15年~20年。

2、比电热水器更节能、更省钱。电热水器以电能为能源进行加热,而空气能电热水的工作方式,以空气为主,电为辅。虽说这也是一个耗电的过程,但是空气能电热水器只要电热水器1/4的耗电能,燃气热水器的1/3使用成本。从节能上比一比,空气能热水器完胜!

3、更安全。很多人说电热水器存在漏电的隐患,反正我没有遇到过。一比较,确实空气能热水器更安全。因为它的安装,在结构上将水电完全分离,不用担心用久了漏电、水连电引发的一些安全事故,依靠空气,不会排放出一些有害的气体,较为环保。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/13476251.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-08-14
下一篇 2023-08-14

发表评论

登录后才能评论

评论列表(0条)

保存