string gpmcPath = @"C:\Windows\System32\gpmc.msc";
FileName = gpmcPath, UseShellExecute = true, Verb = IsAdmin() ? "" : "runas" // Request admin if not elevated ;
# Launch GPMC if ($DomainFQDN) Start-Process $gpmcPath -ArgumentList "/domain=$DomainFQDN" elseif ($GPOId) Start-Process $gpmcPath -ArgumentList "/gpo:$GPOId" else Start-Process $gpmcPath
Open-GPMC -DomainFQDN "contoso.com" B. C# (for compiled tools) using System.Diagnostics; using System.Security.Principal; public static void OpenGroupPolicyManagementConsole(string domain = null)
Process.Start(psi);
var psi = new ProcessStartInfo
try Process.Start("gpmc.msc"); catch (Exception ex) MessageBox.Show($"Failed to open GPMC: ex.Message\nEnsure RSAT is installed.");