File: //lib64/python3.9/distutils/__pycache__/msvc9compiler.cpython-39.opt-2.pyc
a
    �DOg�v  �                   @   sJ  d dl Z d dlZd dlZd dlZd dlmZmZmZmZm	Z	 d dl
mZmZ d dl
mZ d dlmZ d dlZejZejZejZejZejejejejfZejdko�ej dkZ!e!r�dZ"d	Z#d
Z$ndZ"dZ#d
Z$ddd�Z%G dd� d�Z&G dd� d�Z'dd� Z(dd� Z)dd� Z*dd� Z+d#dd�Z,e(� Z-e-dk �r6ed e- ��G d!d"� d"e�Z.dS )$�    N)�DistutilsExecError�DistutilsPlatformError�CompileError�LibError�	LinkError)�	CCompiler�gen_lib_options)�log)�get_platform�win32l        z1Software\Wow6432Node\Microsoft\VisualStudio\%0.1fz5Software\Wow6432Node\Microsoft\Microsoft SDKs\Windowsz,Software\Wow6432Node\Microsoft\.NETFrameworkz%Software\Microsoft\VisualStudio\%0.1fz)Software\Microsoft\Microsoft SDKs\Windowsz Software\Microsoft\.NETFramework�x86Zamd64�r   z	win-amd64c                   @   sL   e Zd Zdd� Zee�Zdd� Zee�Zdd� Zee�Zdd� Zee�Zd	S )
�Regc                 C   s:   t D ](}| �||�}|r||v r||   S qt|��d S �N)�HKEYS�read_values�KeyError)�cls�path�key�base�d� r   �//usr/lib64/python3.9/distutils/msvc9compiler.py�	get_value?   s
    z
Reg.get_valuec                 C   sj   zt ||�}W n ty"   Y d S 0 g }d}zt||�}W n tyP   Y qfY n0 |�|� |d7 }q,|S �Nr   �   )�RegOpenKeyEx�RegError�
RegEnumKey�append)r   r   r   �handle�L�i�kr   r   r   �	read_keysG   s    
z
Reg.read_keysc           	      C   s�   zt ||�}W n ty"   Y d S 0 i }d}zt||�\}}}W n tyV   Y q~Y n0 |�� }| �|�|| �|�<