Win32类属性数据类型不匹配错误
我正在尝试为类Win32_NetworkAdapter
的“InstallDate”属性设置一个新值。Win32类属性数据类型不匹配错误
这里是对类的描述的链接:
http://msdn.microsoft.com/en-us/library/aa394216%28v=vs.85%29.aspx
然而,当我试图建立一个新的日期时间,我得到一个“类型不匹配”的错误,尽管我m试图设置一个DateTime对象,如结构中所列。
这是代码:
private static void Check()
{
var win32DeviceClassName = "Win32_NetworkAdapter";
var query = string.Format("select * from {0}", win32DeviceClassName);
using (var searcher = new ManagementObjectSearcher(query))
{
ManagementObjectCollection objectCollection = searcher.Get();
foreach (ManagementBaseObject managementBaseObject in objectCollection)
{
if (!managementBaseObject.Properties["Description"].Value.ToString().Contains("what i need"))
{
continue;
}
managementBaseObject.Properties["InstallDate"].Value = DateTime.Now;
}
}
}
你的问题有了答案,如果你通过的文件,它说
InstallDate
数据类型:日期时间
访问类型:只读
对象的安装日期和时间。该属性不需要一个值来指示对象已安装。该属性是从CIM_ManagedSystemElement继承的。 该属性尚未实现。它默认返回一个NULL值。
好吧,我没有注意到,但不知怎的...但是,那么你怎么确实看到安装日期属性中的值?当您打开设备管理器并选择设备时,您可以在安装日期属性 –
中看到一个值,系统将在内部对其进行设置 – Ehsan
中途向下翻页,它说'InstallDate'是只读的,虽然它应该显示安装日期,但它尚未实现。我不知道它为什么会抛出这个错误..也许在'ManagementBaseObject'中有内部事件发生。 –
好的,我没有注意到,但不知怎的...但是,那么你怎么确实看到安装日期属性中的值?当你打开设备管理器并选择一个设备时,你可以在安装日期属性 –
中看到一个值。对不起,我对这个类不熟悉..只是认为我会通读文档来看看我能否提供帮助。 –