public async Task <PowerShellVersion> Handle(GetVersionParams request, CancellationToken cancellationToken) { var architecture = PowerShellProcessArchitecture.Unknown; // This should be changed to using a .NET call sometime in the future... but it's just for logging purposes. string arch = Environment.GetEnvironmentVariable("PROCESSOR_ARCHITECTURE"); if (arch != null) { if (string.Equals(arch, "AMD64", StringComparison.CurrentCultureIgnoreCase)) { architecture = PowerShellProcessArchitecture.X64; } else if (string.Equals(arch, "x86", StringComparison.CurrentCultureIgnoreCase)) { architecture = PowerShellProcessArchitecture.X86; } } if (VersionUtils.IsPS5 && _configurationService.CurrentSettings.PromptToUpdatePackageManagement) { await CheckPackageManagement().ConfigureAwait(false); } return(new PowerShellVersion { Version = VersionUtils.PSVersionString, Edition = VersionUtils.PSEdition, DisplayVersion = VersionUtils.PSVersion.ToString(2), Architecture = architecture.ToString() }); }
public Task <PowerShellVersion> Handle(GetVersionParams request, CancellationToken cancellationToken) { var architecture = PowerShellProcessArchitecture.Unknown; // This should be changed to using a .NET call sometime in the future... but it's just for logging purposes. string arch = Environment.GetEnvironmentVariable("PROCESSOR_ARCHITECTURE"); if (arch != null) { if (string.Equals(arch, "AMD64", StringComparison.CurrentCultureIgnoreCase)) { architecture = PowerShellProcessArchitecture.X64; } else if (string.Equals(arch, "x86", StringComparison.CurrentCultureIgnoreCase)) { architecture = PowerShellProcessArchitecture.X86; } } return(Task.FromResult(new PowerShellVersion { Version = VersionUtils.PSVersionString, Edition = VersionUtils.PSEdition, DisplayVersion = VersionUtils.PSVersion.ToString(2), Architecture = architecture.ToString() })); }