如何在 VB - Visual Studio 2015 中打开 SCCM 配置管理器

How to open the SCCM Configuration Manager in VB - Visual Studio 2015

我正在使用 Visual Studio 2015 在 VB 中创建一个工具,但在单击打开 SCCM Configuration Manager 时我在强制菜单条上的一个项目时遇到了一些问题。

到目前为止我已经尝试过:

选项 1

Dim ProcID As Integer 
ProcID = Shell("control smscfgrc", AppWinStyle.NormalFocus)

选项 2

Process.Start("cmd.exe", "control smscfgrc")

选项 3

Dim p as Process = new Process()
Dim pi as ProcessStartInfo = new ProcessStartInfo()
pi.Arguments = "control smscfgrc"
pi.FileName = "cmd.exe"
p.StartInfo = pi 

选项 4

Shell=("control smscfgrc", 0)

None 上面的工作,他们只是打开了控制台,没有别的。

如果我使用 "windows + R" 打开常规 cmd window 并键入命令 "control smscfgrc" 它会按预期打开 SCCM Configuration Manager

我真的需要这个来完成我的工具,非常感谢任何帮助!

感谢您花时间阅读本文。

我不是 VS 专家,也不是 VB,但您打开 cmd.exe 的命令看起来不正确。您需要添加一个/c运行 window ( + R) 看起来像这样...

cmd.exe /c control smscfgrc

当然,control其实就是control.exe,所以你甚至不需要cmd.exe:

control.exe smscfgrc

测试并确认这会从 运行 [=47] 打开 Configuration Manager 属性 window =] 在我的电脑上。

您可能还需要 control.exe 的完整路径。我会使用环境变量;我认为这就是 VB:

中的处理方式
Dim control_exe As String
control_exe = Environment.GetEnvironmentVariable("SystemRoot") & "\System32\control.exe"

如果 运行 在 64 位 OS 上作为 32 位进程运行,您将自动重定向到 SysWOW64

选项 2

Process.Start(control_exe, "smscfgrc")

选项 3

Dim p as Process = new Process()
Dim pi as ProcessStartInfo = new ProcessStartInfo()
pi.Arguments = "smscfgrc"
pi.FileName = control_exe
p.StartInfo = pi