if (!System.IO.File.Exists(gpmcPath)) throw new Exception("GPMC not installed. Install RSAT.");
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 group policy management console
Process.Start(psi);
if (!string.IsNullOrEmpty(domain)) psi.Arguments = $"/domain=domain"; FileName = gpmcPath
string gpmcPath = @"C:\Windows\System32\gpmc.msc";
Open-GPMC -DomainFQDN "contoso.com" B. C# (for compiled tools) using System.Diagnostics; using System.Security.Principal; public static void OpenGroupPolicyManagementConsole(string domain = null) UseShellExecute = true
try Process.Start("gpmc.msc"); catch (Exception ex) MessageBox.Show($"Failed to open GPMC: ex.Message\nEnsure RSAT is installed.");