def find_vc_pdir_vswhere(msvc_version):
    """
    Find the MSVC product directory using vswhere.exe .
    Run it asking for specified version and get MSVS  install location
    :param msvc_version:
    :return: MSVC install dir
    """
    vswhere_path = os.path.join(
        'C:\\',
        'Program Files (x86)',
        'Microsoft Visual Studio',
        'Installer',
        'vswhere.exe'
    )
    vswhere_cmd = [vswhere_path, '-version', msvc_version, '-property', 'installationPath']

    if os.path.exists(vswhere_path):
        sp = subprocess.Popen(vswhere_cmd, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
        vsdir, err = sp.communicate()
        vsdir = vsdir.decode("mbcs")
        vsdir = vsdir.rstrip()
        vc_pdir = os.path.join(vsdir, 'VC')
        return vc_pdir
    else:
        # No vswhere on system, no install info available
        return None
Find the MSVC product directory using vswhere.exe .
    Run it asking for specified version and get MSVS  install location
    :param msvc_version:
    :return: MSVC install dir