Functions/GenXdev.Webbrowser/Get-ChromiumRemoteDebuggingPort.ps1
################################################################################ <# .SYNOPSIS Returns the remote debugging port for the system's default Chromium browser. .DESCRIPTION Detects whether Microsoft Edge or Google Chrome is the default browser and returns the appropriate debugging port number. If Chrome is the default browser, returns the Chrome debugging port. Otherwise returns the Edge debugging port (also used when no default browser is detected). .OUTPUTS [int] The remote debugging port number for the detected browser. .EXAMPLE # Get debugging port using full command name Get-ChromiumRemoteDebuggingPort .EXAMPLE # Get debugging port using alias Get-BrowserDebugPort #> function Get-ChromiumRemoteDebuggingPort { [CmdletBinding()] [OutputType([int])] [Alias('Get-BrowserDebugPort')] param() ############################################################################ begin { # verbose output to indicate start of browser detection Write-Verbose "Starting detection of default Chromium browser type" # get the system's default browser information $defaultBrowser = Get-DefaultWebbrowser # log the detected default browser name Write-Verbose ("Default browser detected: {0}" -f ` $(if ($null -eq $defaultBrowser) { 'None' } else { $defaultBrowser.Name })) } process { # determine and return appropriate debugging port based on browser if (($null -ne $defaultBrowser) -and ($defaultBrowser.Name -like "*Chrome*")) { # chrome is default - return chrome debugging port Write-Verbose "Using Chrome debugging port" Get-ChromeRemoteDebuggingPort } else { # edge is default or no browser - return edge debugging port Write-Verbose "Using Edge debugging port" Get-EdgeRemoteDebuggingPort } } end { } } ################################################################################ |