我正在做一个项目,需要允许 Windows 远程桌面连接使用以下命令通过 wmic 接口:
wmic RDToggle 其中 servername=”ServerName" 调用 SetAllowTSConnections 1
但每次我尝试执行它时wmic RDToggle command
都会返回相同的错误(我已经在三台不同的机器上测试过它,结果相同):
如您所见,甚至用于查询 TS 连接设置的 WMIC 命令也不起作用......
在运行命令之前我是否忘记了什么?有什么建议吗?
附言:我正在从提升模式运行cmd...
答案1
我刚刚输入了 wmic RDToggle get AllowTSConnections。我的 cmd 窗口运行命令正常;在我的例子中,它显示如下
C:\Windows\System32> wmic RDToggle 获取 AllowTSConnections AllowTSConnections 0
C:\Windows\System32>(闪烁的光标)
我不知道该告诉你什么。
输入 ipconfig/all 并发布,然后输入 netstat 并发布。我会帮你看看。另外,我已经很久没用过命令行了,所以我又要重操旧业了。我必须读一读并熟悉一下。一小时后我回来!
—Xenith
~~~~编辑~~~~
我回来后发现了一些与你的问题相关的内容。我试图在我的电脑上复制你的问题,但无法完全复制。试试这个:
该行为似乎是由于无法在该计算机上 mofcomp 特定的 mof/mfl 文件而导致的。%windir%\system32\wbem\logs 中的日志可能会提示您为什么缺少 root\cimv2 命名空间。如果这没有帮助,请尝试通过运行以下批处理来重建 WMI 存储库。
Net stop winmgmt /y 如果存在“%windir%\system32\wbem\repository.old” rmdir /s/q “%windir%\system32\wbem\repository.old”
重命名“%windir%\system32\wbem\repository”“%windir%\system32\wbem\repository.old”
对于 /f %s 在('dir /b /s %windir%\system32\wbem*.dll')中执行 regsvr32 /s %s
-- Andy Cheung Microsoft WMI 测试工程师
一切功劳都归于 Andy Cheung。
PS:您运行的是什么操作系统?
答案2
了解远程桌面状态
wmic /node:"REMOTE_COMPUTER" rdtoggle list brief
其中“0”表示已禁用,“1”表示已启用。
要将状态更改为“已启用”
wmic /node:"REMOTE_COMPUTER" rdtoggle where allowtsconnections="0" call setallowtsconnections "1"
不要忘记以域管理员的身份运行命令行。