in vscode-extension/src/platform.ts [389:425]
private findWinPS({ useAlternateBitness = false }: { useAlternateBitness?: boolean } = {}): IPossiblePowerShellExe {
// 32-bit OSes only have one WinPS on them
if (!this.platformDetails.isOS64Bit && useAlternateBitness) {
return null;
}
let winPS = useAlternateBitness ? this.alternateBitnessWinPS : this.winPS;
if (winPS === undefined) {
const systemFolderPath: string = this.getSystem32Path({ useAlternateBitness });
const winPSPath = path.join(systemFolderPath, "WindowsPowerShell", "v1.0", "powershell.exe");
let displayName: string;
if (this.platformDetails.isProcess64Bit) {
displayName = useAlternateBitness
? WindowsPowerShell32BitLabel
: WindowsPowerShell64BitLabel;
} else if (this.platformDetails.isOS64Bit) {
displayName = useAlternateBitness
? WindowsPowerShell64BitLabel
: WindowsPowerShell32BitLabel;
} else {
displayName = WindowsPowerShell32BitLabel;
}
winPS = new PossiblePowerShellExe(winPSPath, displayName, { knownToExist: true });
if (useAlternateBitness) {
this.alternateBitnessWinPS = winPS;
} else {
this.winPS = winPS;
}
}
return winPS;
}