[wmiclass]”win32_share” 和 get-wmiobject -class win32_share 有什么区别呢?


PowerShell交流中心[wmiclass]”win32_share” 和 get-wmiobject -class win32_share 有什么区别呢?
0
ivan asked 7 年 ago

想用powershell创建一个共享文件夹,发现一个问题,如下:

$s = [wmiclass]”win32_share”, 然后$s.Create(xxxx),可以执行,并且文件共享成果。

如果用 $s = get-wmiObject – class win32_share, 然后$s就不会有create()这个方法。

请问这两者之间的区别是啥啊?不都是获取一个对象么?

谢谢。

ps: get-ciminstance -classname win32_share,然后也是找不到 create()方法。

1 Answers
0
Mooser Lee 管理员 answered 7 年 ago

前者创建的对象为:System.Management.ManagementClass,后者创建的对象为System.Management.ManagementObject。create方法属于ManagementClass类方法,而不是ManagementObject实例方法。

PS> ([WMIClass]”WIN32_Share”).gettype().fullname
System.Management.ManagementClass
PS> (Get-WmiObject -Class win32_share | select -First 1).gettype().fullname
System.Management.ManagementObject