Deploying Microsoft Help Viewer in IPv6 Environments via Scripting

Written by

in

Deploying the Microsoft Help Viewer in an enterprise IPv6-only or dual-stack network environment requires configuring the service to listen and route traffic via IPv6 rather than its default IPv4 loopback settings. Because Help Viewer relies on a local HTTP service hosted on an ephemeral port (e.g., http://localhost:port/help/), it fails to initialize or connect to local help files if the network environment restricts IPv4 or requires explicitly bound IPv6 addresses.

Microsoft solves this by providing a dedicated package—MicrosoftHelpViewerIPv6ConfigurationScripts.exe—to script and automate this configuration across an enterprise. 🔑 The Core Registry & ACL Configurations

To make Help Viewer operational over IPv6, a script must automate two primary changes at the system level:

Registry Entry: Enable the IPv6 flag within the Help configuration registry path.

HTTP Namespace Reservation: Reserve the local loopback IPv6 address ([::1]) and configure the Access Control List (ACL) to grant the Everyone group listening permissions on port 47873. ⚙️ Automation Scripts 1. PowerShell Script (CreateHelpViewerIPv6Settings.ps1)

This is the standard PowerShell snippet used to provision a machine for Microsoft Help Viewer under an IPv6 framework: powershell

# Ensure the registry path exists and set IPv6 to true (1) \(RegistryPath = "HKLM:\SOFTWARE\Microsoft\Help\v1.0" if (-not (Test-Path \)RegistryPath)) { New-Item -Path \(RegistryPath -Force | Out-Null } Set-ItemProperty -Path \)RegistryPath -Name “IPv6” -Value 1 -Type DWord # Reserve the URL namespace for the local IPv6 loopback adapter # Port 47873 is used universally by Help Viewer netsh http add urlacl url=http://[::1]:47873/help/ user=\Everyone listen=yes delegate=no sddl=“D:(A;;GX;;;WD)” Use code with caution.

2. Rollback/Cleanup Script (RemoveHelpViewerIPv6Settings.ps1)

If a machine needs to be rolled back to default IPv4 configurations, use this teardown script: powershell

# Remove the registry value \(RegistryPath = "HKLM:\SOFTWARE\Microsoft\Help\v1.0" if (Test-Path \)RegistryPath) { Remove-ItemProperty -Path $RegistryPath -Name “IPv6” -ErrorAction SilentlyContinue } # Remove the URL namespace reservation netsh http delete urlacl url=http://[::1]:47873/help/ Use code with caution. 🚀 Enterprise Deployment Strategy

To push this configuration silently out to multiple machines across a network (using Microsoft Intune, SCCM/MECM, or Group Policy Objects), package the task using these guidelines:

Elevation: Scripts must be run with administrative privileges to modify HKLM keys and add netsh http URL ACL entries.

Order of Operations: Execute the IPv6 enablement script after installing Microsoft Help Viewer (typically bundled with Visual Studio or SQL Server documentation components) but before users initialize the application.

Verification: Confirm deployment success by querying the registry:

reg query “HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Help\v1.0” /v IPv6 Use code with caution.

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *