如何从 VB 静默运行 dregcmd 并将结果输出到文件

如何从 VB 静默运行 dregcmd 并将结果输出到文件

dsregcmd 有一个结果对于我的需求至关重要,而其他方法无法与 Azure、dsregcmd /status 相关联。

如果将其发送到 cmd 或从我发现的任何除了在 cmd 提示符中手动运行之外的其他任何方式运行,它都不会成功。

我必须确定的是 ADJoined 和/或 EnterpriseJoined

+----------------------------------------------------------------------+
| Device State                                                         |
+----------------------------------------------------------------------+

             AzureAdJoined : NO  <--- THIS
          EnterpriseJoined : NO  <--- THIS

我还可以尝试什么?

答案1

如果您想“隐身”启动命令,您可以尝试执行以下操作:

  1. 打开文本编辑器并输入以下代码:
Set WshShell = CreateObject("WScript.Shell") 
WshShell.Run "dsregcmd /status >C:\Somepath\output.txt", 0
Set WshShell = Nothing
  1. 使用扩展名保存文件,vbs例如test.vbs
  2. 双击文件执行命令。然后打开输出文件读取内容。

代码的第二行执行命令dsregcmd /status >C:\Users\Reddy\output.txt并隐藏窗口(0)。

WSH » wshshell » 运行

答案2

您在评论中提到它无法从已编译的可执行文件运行。这可能是因为您尝试从 32 位进程运行它。dsregcmd仅作为 64 位进程可用。您可以使用sysnative虚拟文件夹从 32 位可执行文件启动 64 位命令。

相关内容