| 1572 | } |
| 1573 | |
| 1574 | export function getMissingMsvcEnvironmentVariables(): string[] { |
| 1575 | const msvcEnvVars: string[] = [ |
| 1576 | 'DevEnvDir', |
| 1577 | 'Framework40Version', |
| 1578 | 'FrameworkDir', |
| 1579 | 'FrameworkVersion', |
| 1580 | 'INCLUDE', |
| 1581 | 'LIB', |
| 1582 | 'LIBPATH', |
| 1583 | 'UCRTVersion', |
| 1584 | 'UniversalCRTSdkDir', |
| 1585 | 'VCIDEInstallDir', |
| 1586 | 'VCINSTALLDIR', |
| 1587 | 'VCToolsRedistDir', |
| 1588 | 'VisualStudioVersion', |
| 1589 | 'VSINSTALLDIR', |
| 1590 | 'WindowsLibPath', |
| 1591 | 'WindowsSdkBinPath', |
| 1592 | 'WindowsSdkDir', |
| 1593 | 'WindowsSDKLibVersion', |
| 1594 | 'WindowsSDKVersion' |
| 1595 | ]; |
| 1596 | return msvcEnvVars.filter(envVarName => |
| 1597 | (process.env[envVarName] === undefined || process.env[envVarName] === '') && |
| 1598 | extensionContext?.environmentVariableCollection?.get(envVarName) === undefined |
| 1599 | ); |
| 1600 | } |
| 1601 | |
| 1602 | function isIntegral(str: string): boolean { |
| 1603 | const regex = /^-?\d+$/; |