powershell - 如何在不指定参数的情况下使用 invoke-wmimethod?
问题描述
我正在尝试创建一个 PowerShell 命令来编辑共享文件夹的一些信息。有 3 个参数 access、description 和 max users 但我只想更改 description 和 max users。
我需要此代码才能在 Windows 2008 和更多当前版本上工作。
这些命令用于更改共享文件夹的参数:
$c = Get-WmiObject -Namespace "root\cimv2" -Query "SELECT * FROM Win32_Share WHERE Name=`'ADMIN`$`'";
Invoke-WmiMethod -InputObject $c -Name SetShareInfo -ArgumentList @($null,"Remote Admin","5")
但在这个过程中我相信它会删除访问参数。
有谁知道编辑共享文件夹参数的简单方法。
解决方案
我会以这种方式使用该方法。您可以仔细检查参数的顺序。
$a = get-wmiobject win32_share | where name -eq admin$
$a.setshareinfo
OverloadDefinitions
-------------------
System.Management.ManagementBaseObject SetShareInfo(System.UInt32 MaximumAllowed,System.String Description, System.Management.ManagementObject#Win32_SecurityDescriptor Access)
$a.setshareinfo($null,'Remote Admin','5')
推荐阅读
- node.js - 如何从nodejs写入excel表的特定单元格
- windows - powershell 脚本在 ISE 中运行良好,但在 cli 中出现问题
- javascript - 当值与来自 database-javascript 的数据相同时选中复选框
- laravel - 在 Laravel 中,此远程 API 连接不起作用,但 Curl 有效, Postman 有效
- flutter - 在颤动中如何防止屏幕截图以保护我的应用程序在 kotlin 中的 android 部分
- php - 自定义函数 validate_date 创建错误
- javascript - 降低匹配两个数组元素的复杂度
- ios - 滚动视图中的 SwiftUI 动画/过渡表现奇怪
- r - 取消列出 R 中多个元素的列表
- ionic3 - ionic 3中如何让页面可以左右滑动?