<?xml version="1.0" encoding="ISO-8859-1"?>

<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/">
	<channel>
		<title>Forum du club des développeurs et IT Pro - Déploiement/Installation</title>
		<link>https://www.developpez.net/forums/</link>
		<description><![CDATA[Forum d'entraide sur le déploiement d'applications et sur l'installation/compilation de bibliothèques]]></description>
		<language>fr</language>
		<lastBuildDate>Sat, 18 Apr 2026 01:22:31 GMT</lastBuildDate>
		<generator>vBulletin</generator>
		<ttl>15</ttl>
		<image>
			<url>https://forum.developpez.be/images/misc/rss.png</url>
			<title>Forum du club des développeurs et IT Pro - Déploiement/Installation</title>
			<link>https://www.developpez.net/forums/</link>
		</image>
		<item>
			<title><![CDATA[[Python 3.X] TTS Voice Cloning]]></title>
			<link>https://www.developpez.net/forums/showthread.php?t=2180581&amp;goto=newpost</link>
			<pubDate>Sat, 22 Nov 2025 15:23:40 GMT</pubDate>
			<description>Yo, 
 
ça fait des années que...</description>
			<content:encoded><![CDATA[<div>Yo,<br />
<br />
ça fait des années que jsuis pas venu sur ce forum. j'suis étonné que ça soit encore aussi actif, depuis fin 2022.<br />
<br />
<br />
est ce qu'il y a des monstres en clonage de voix opensource ?<br />
<br />
ça fait 2 semaines que je souffre avec ça. <br />
<br />
J'ai appris pas mal de leçons dans ma galère<br />
<br />
- Si t'es dans une version postérieure à Python 3.10, ne cherche pas à aller plus loin<br />
- Le seul deboggeur utile - qui se connecte aux tutos en ligne - c'est Grok 4.1<br />
- Ton audio source doit être ultra propre - zéro bruit de fond et zéro intervenant secondaire<br />
- Tu peux laisser le TTS faire la transcription automatiquement pour toi, mais attends-toi à des hallucinations et du repatching sans fin<br />
- Transcription uniquement avec Whisper Large, oublie les version Small ou Medium<br />
- Si t'as un audio source de 30 min très propre, pas obligé de faire du fine-tuning, même en zero shot la fidélité de la voix est bluffante<br />
- Le découpage des chunks- c'est à dire l'endroit où tu décides de découper - est aussi décisif que la transcription<br />
- Pas obligé dte payer un PC  avec GPU 16Go VRAM à 2000€, y'a la plateforme Kaggle avec ses deux GPU T4 qui tournent en tandem. Le forfait 30Go est réinitialisé tous les samedi<br />
- Tortoise TTS m'a donné un très bon résultat sur du texte long, mais qu'est ce qu'il est lent ce batard. 1h30 pour 300 mots. Et en plus en mode ultra_fast !!<br />
- C'est des crevards chez Lighting AI. dès que t'as fini ton crédit d'inscription, avec le ralentissement imposé - t'es contraint de payer<br />
- Colab c'est pour les gamins avec des scripts de moins de 100 lignes<br />
- J'ai bien kiffé le parcours d'apprentissage sur Kaggle - hors sujet mais je tenais à le mentionner<br />
<br />
Aujourd'hui je suis passé à F5 TTS. La fidélité de la voix est excellente, c'est 10 fois plus rapide que Tortoise TTS, mais purée le respect de la ponctuation c'est une catastrophe. Et en plus petite hallucination, il me rajoute le même mot imaginaire à chaque jointure de chunk. Bref, je suis parti pour plusieurs jours de patching<br />
<br />
Du coup, si y'a un gars pour qui le machine learning audio n'a aucun secret, ça me sauverait de ma misère.<br />
<br />
Je poste ici car ça me semblait la section la plus judicieuse.</div>

]]></content:encoded>
			<category domain="https://www.developpez.net/forums/f924/autres-langages/python/deploiement-installation/">Déploiement/Installation</category>
			<dc:creator>Yuseph</dc:creator>
			<guid isPermaLink="true">https://www.developpez.net/forums/d2180581/autres-langages/python/deploiement-installation/tts-voice-cloning/</guid>
		</item>
		<item>
			<title><![CDATA[[Python 3.X] Crée une application mobile avec python]]></title>
			<link>https://www.developpez.net/forums/showthread.php?t=2178745&amp;goto=newpost</link>
			<pubDate>Thu, 21 Aug 2025 12:46:36 GMT</pubDate>
			<description>Bonjour, 
 
Je cherche à créé...</description>
			<content:encoded><![CDATA[<div>Bonjour,<br />
<br />
Je cherche à créé une application pour mobile avec python et je voudrai savoir si cette opération était possible et si oui, comment la crée (lib à utiliser, fonctionnement de cette librairie...)</div>

]]></content:encoded>
			<category domain="https://www.developpez.net/forums/f924/autres-langages/python/deploiement-installation/">Déploiement/Installation</category>
			<dc:creator>Elliot2.0</dc:creator>
			<guid isPermaLink="true">https://www.developpez.net/forums/d2178745/autres-langages/python/deploiement-installation/cree-application-mobile-python/</guid>
		</item>
		<item>
			<title>pyinstaller comment faire ?</title>
			<link>https://www.developpez.net/forums/showthread.php?t=2178526&amp;goto=newpost</link>
			<pubDate>Sat, 09 Aug 2025 18:49:44 GMT</pubDate>
			<description><![CDATA[Bonjour, 
 
J'essai à partir...]]></description>
			<content:encoded><![CDATA[<div>Bonjour,<br />
<br />
J'essai à partir d'un fichier python, de créer un executable sur linux depuis un raspberry pi 5.<br />
Pour cela, j'essai d'utiliser la commande pyinstaller.<br />
Malheureusement, je ne comprends pas l'erreur.. Es ce que quelqu'un pourrait m'aider, s'il vous plait ?<br />
<br />
<img src="https://www.developpez.net/forums/attachments/p669350d1754765355/autres-langages/python/deploiement-installation/pyinstaller-faire/capture-d-ecran-2025-08-09-204655.png/" border="0" alt="Nom : Capture d’écran 2025-08-09 204655.png
Affichages : 151
Taille : 252,9 Ko"  style="float: CONFIG" /></div>


	<div style="padding:10px">

	

	
		<fieldset class="fieldset">
			<legend>Images attachées</legend>
				<div style="padding:10px">
				<img class="attach" src="https://www.developpez.net/forums/attachments/p669350d1754765355/autres-langages/python/deploiement-installation/pyinstaller-faire/capture-d-ecran-2025-08-09-204655.png/" alt="" />&nbsp;
			</div>
		</fieldset>
	

	

	

	</div>
]]></content:encoded>
			<category domain="https://www.developpez.net/forums/f924/autres-langages/python/deploiement-installation/">Déploiement/Installation</category>
			<dc:creator>versatilesvibes</dc:creator>
			<guid isPermaLink="true">https://www.developpez.net/forums/d2178526/autres-langages/python/deploiement-installation/pyinstaller-faire/</guid>
		</item>
		<item>
			<title><![CDATA[ModuleNotFoundError: No module named 'distutils']]></title>
			<link>https://www.developpez.net/forums/showthread.php?t=2177257&amp;goto=newpost</link>
			<pubDate>Sun, 01 Jun 2025 09:10:18 GMT</pubDate>
			<description>Bonjour 
Sur le Terminal,...</description>
			<content:encoded><![CDATA[<div>Bonjour<br />
Sur le Terminal, quand je veux installer une bibliothèque dlib je mets cette commande pip3 install dlib<br />
Et j'ai cette réponse :     <br />
from distutils.util import strtobool   <br />
ModuleNotFoundError: No module named 'distutils'<br />
<br />
Merci</div>

]]></content:encoded>
			<category domain="https://www.developpez.net/forums/f924/autres-langages/python/deploiement-installation/">Déploiement/Installation</category>
			<dc:creator>zachour</dc:creator>
			<guid isPermaLink="true">https://www.developpez.net/forums/d2177257/autres-langages/python/deploiement-installation/modulenotfounderror-no-module-named-distutils/</guid>
		</item>
		<item>
			<title><![CDATA[[Python 3.X] Requêtes WMI Matériels]]></title>
			<link>https://www.developpez.net/forums/showthread.php?t=2176301&amp;goto=newpost</link>
			<pubDate>Sat, 19 Apr 2025 17:53:46 GMT</pubDate>
			<description>Bonjour,  
 
Passionné avec...</description>
			<content:encoded><![CDATA[<div>Bonjour, <br />
<br />
Passionné avec AutoIt, j'ai voulu refaire en Python.<br />
Version plus graphique, mais j'aimerais vos yeux avertis pour me faire évoluer sur ce code.<br />
<div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	<hr /><code class="bbcode_code"><table cellspacing="0" cellpadding="0"><tr><td valign="top" width="40"><div style="border: 1px dashed gray; padding-left: 5px; padding-right: 5px; margin-right: 5px; text-align: right; font-family: monospace">1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br />20<br />21<br />22<br />23<br />24<br />25<br />26<br />27<br />28<br />29<br />30<br />31<br />32<br />33<br />34<br />35<br />36<br />37<br />38<br />39<br />40<br />41<br />42<br />43<br />44<br />45<br />46<br />47<br />48<br />49<br />50<br />51<br />52<br />53<br />54<br />55<br />56<br />57<br />58<br />59<br />60<br />61<br />62<br />63<br />64<br />65<br />66<br />67<br />68<br />69<br />70<br />71<br />72<br />73<br />74<br />75<br />76<br />77<br />78<br />79<br />80<br />81<br />82<br />83<br />84<br />85<br />86<br />87<br />88<br />89<br />90<br />91<br />92<br />93<br />94<br />95<br />96<br />97<br />98<br />99<br />100<br />101<br />102<br />103<br />104<br />105<br />106<br />107<br />108<br />109<br />110<br />111<br />112<br />113<br />114<br />115<br />116<br />117<br />118<br />119<br />120<br />121<br />122<br />123<br />124<br />125<br />126<br />127<br />128<br />129<br />130<br />131<br />132<br />133<br />134<br />135<br />136<br />137<br />138<br />139<br />140<br />141<br />142<br />143<br />144<br />145<br />146<br />147<br />148<br />149<br />150<br />151<br />152<br />153<br />154<br />155<br />156<br />157<br />158<br />159<br />160<br />161<br />162<br />163<br />164<br />165<br />166<br />167<br />168<br />169<br />170<br />171<br />172<br />173<br />174<br />175<br />176<br />177<br />178<br />179<br />180<br />181<br />182<br />183<br />184<br />185<br />186<br />187<br />188<br />189<br />190<br />191<br />192<br />193<br />194<br />195<br />196<br />197<br />198<br />199<br />200<br />201<br />202<br />203<br />204<br />205<br />206<br />207<br />208<br />209<br />210<br />211<br />212<br />213<br />214<br />215<br />216<br />217<br />218<br />219<br />220<br />221<br />222<br />223<br />224<br />225<br />226<br />227<br />228<br />229<br />230<br />231<br />232<br />233<br />234<br />235<br />236<br />237<br />238<br />239<br />240<br />241<br />242<br />243<br />244<br />245<br />246<br />247<br />248<br />249<br />250<br />251<br />252<br />253<br />254<br />255<br />256<br />257<br />258<br />259<br />260<br />261<br />262<br />263<br />264<br />265<br />266<br />267<br />268<br />269<br />270<br />271<br />272<br />273<br />274<br />275<br />276<br />277<br />278<br />279<br />280<br />281<br />282<br />283<br />284<br />285<br />286<br />287<br />288<br />289<br />290<br />291<br />292<br />293<br />294<br />295<br />296<br />297<br />298<br />299<br />300<br />301<br />302<br />303<br />304<br />305<br />306<br />307<br />308<br />309<br />310<br />311<br />312<br />313<br />314<br />315<br />316<br />317<br />318<br />319<br />320<br />321<br />322<br />323<br />324<br />325<br />326<br />327<br />328<br />329<br />330<br />331<br />332<br />333<br />334<br />335<br />336<br />337<br />338<br />339<br />340<br />341<br />342<br />343<br />344<br />345<br />346<br />347<br />348<br />349<br />350<br />351<br />352<br />353<br />354<br />355<br />356<br />357<br />358<br />359<br />360<br />361<br />362<br />363<br />364<br />365<br />366<br />367<br />368<br />369<br />370<br />371<br />372<br />373<br />374<br />375<br />376<br />377<br />378<br />379<br />380<br />381<br />382<br />383<br />384<br />385<br />386<br />387<br />388<br />389<br />390<br />391<br />392<br />393<br />394<br />395<br />396<br />397<br />398<br />399<br />400<br />401<br />402<br />403<br />404<br />405<br />406<br />407<br />408<br />409<br />410<br />411<br />412<br />413<br />414<br />415<br />416<br />417<br />418<br />419<br />420<br />421<br />422<br />423<br />424<br />425<br />426<br />427<br />428<br />429<br />430<br />431<br />432<br />433<br />434<br />435<br />436<br />437<br />438<br />439<br />440<br />441<br />442<br />443<br />444<br />445<br />446<br />447<br />448<br />449<br />450<br />451<br />452<br />453<br />454<br />455<br />456<br />457<br />458<br />459<br />460<br />461<br />462<br />463<br />464<br />465<br />466<br />467<br />468<br />469<br />470<br />471<br />472<br />473<br />474<br />475<br />476<br />477<br />478<br />479<br />480<br />481<br />482<br />483<br />484<br />485<br />486<br />487<br />488<br />489<br />490<br />491<br />492<br />493<br />494<br />495<br />496<br />497<br />498<br />499<br />500<br />501<br />502<br />503<br />504<br />505<br />506<br />507<br />508<br />509<br />510<br />511<br />512<br />513<br />514<br />515<br />516<br />517<br />518<br />519<br />520<br />521<br /></div></td><td valign="top"><pre style="margin: 0"><span style="color: #0000ff;">import</span> wmi
<span style="color: #0000ff;">import</span> locale
<span style="color: #0000ff;">import</span> tkinter <span style="color: #0000ff;">as</span> tk
<span style="color: #0000ff;">from</span> tkinter <span style="color: #0000ff;">import</span> ttk
<span style="color: #0000ff;">import</span> threading
&nbsp;
<span style="color: #808080;"># Initialize WMI</span>
strComputer = <span style="color: #FF0000;">&quot;localhost&quot;</span>
objWMIService = wmi.WMI<span class="br0">&#40;</span>computer=strComputer<span class="br0">&#41;</span>
&nbsp;
<span style="color: #808080;"># Language detection</span>
os_lang = locale.getdefaultlocale<span class="br0">&#40;</span><span class="br0">&#41;</span><span class="br0">&#91;</span><span style="color: #cc66cc;">0</span><span class="br0">&#93;</span>
<span style="color: #0000ff;">if</span> os_lang <span style="color: #0000ff;">in</span> <span class="br0">&#91;</span><span style="color: #FF0000;">&quot;fr_FR&quot;</span>, <span style="color: #FF0000;">&quot;fr_BE&quot;</span>, <span style="color: #FF0000;">&quot;fr_CA&quot;</span>, <span style="color: #FF0000;">&quot;fr_CH&quot;</span>, <span style="color: #FF0000;">&quot;fr_LU&quot;</span>, <span style="color: #FF0000;">&quot;fr_MC&quot;</span><span class="br0">&#93;</span>:
    SLANGUE = <span style="color: #FF0000;">&quot;Francais&quot;</span>
<span style="color: #0000ff;">else</span>:
    SLANGUE = <span style="color: #FF0000;">&quot;Anglais&quot;</span>
&nbsp;
<span style="color: #808080;"># Language-specific strings</span>
labels = <span class="br0">&#123;</span><span class="br0">&#125;</span>
&nbsp;
<span style="color: #808080;"># Generic function to get WMI data</span>
<span style="color: #0000ff;">def</span> get_wmi_data<span class="br0">&#40;</span>wmi_class<span class="br0">&#41;</span>:
    <span style="color: #0000ff;">try</span>:
        wmi_objects = objWMIService.instancesOf<span class="br0">&#40;</span>wmi_class<span class="br0">&#41;</span>
        <span style="color: #0000ff;">return</span> wmi_objects
    <span style="color: #0000ff;">except</span> Exception <span style="color: #0000ff;">as</span> e:
        <span style="color: #0000ff;">print</span><span class="br0">&#40;</span>f<span style="color: #FF0000;">&quot;Error getting {wmi_class}: {e}&quot;</span><span class="br0">&#41;</span>
        <span style="color: #0000ff;">return</span> <span class="br0">&#91;</span><span class="br0">&#93;</span>
&nbsp;
<span style="color: #808080;"># WMI Functions</span>
<span style="color: #0000ff;">def</span> OperatingSystem<span class="br0">&#40;</span><span class="br0">&#41;</span>:
    Output = <span style="color: #FF0000;">&quot;&quot;</span>
    colItems = objWMIService.Win32_OperatingSystem<span class="br0">&#40;</span><span class="br0">&#41;</span>
&nbsp;
    <span style="color: #0000ff;">if</span> colItems:
        Output += f<span style="color: #FF0000;">&quot;{labels.get('SWMI', 'WMI Output')} Win32_OperatingSystem<span style="color: #800000;">\n</span>&quot;</span>
        Output += <span style="color: #FF0000;">&quot;-----------------------------------------<span style="color: #800000;">\n</span><span style="color: #800000;">\n</span>&quot;</span>
&nbsp;
        <span style="color: #0000ff;">for</span> objItem <span style="color: #0000ff;">in</span> colItems:
            Output += f<span style="color: #FF0000;">&quot;{labels.get('Name', 'Name')}: {objItem.Name}<span style="color: #800000;">\n</span>&quot;</span>
            Output += f<span style="color: #FF0000;">&quot;OS Architecture : {objItem.OSArchitecture}<span style="color: #800000;">\n</span>&quot;</span>
            Output += f<span style="color: #FF0000;">&quot;{labels.get('Manufacturer', 'Manufacturer')}: {objItem.Manufacturer}<span style="color: #800000;">\n</span>&quot;</span>
&nbsp;
            <span style="color: #808080;"># Check if MUILanguages is not None and not empty</span>
            <span style="color: #0000ff;">if</span> objItem.MUILanguages:
                Output += f<span style="color: #FF0000;">&quot;MUI Languages : {objItem.MUILanguages[0]}<span style="color: #800000;">\n</span>&quot;</span>
            <span style="color: #0000ff;">else</span>:
                Output += <span style="color: #FF0000;">&quot;MUI Languages : N/A<span style="color: #800000;">\n</span>&quot;</span>
&nbsp;
            Output += f<span style="color: #FF0000;">&quot;Version : {objItem.Version}<span style="color: #800000;">\n</span>&quot;</span>
            Output += f<span style="color: #FF0000;">&quot;SystemDrive : {objItem.SystemDrive}<span style="color: #800000;">\n</span>&quot;</span>
            Output += f<span style="color: #FF0000;">&quot;Build Number : {objItem.BuildNumber}<span style="color: #800000;">\n</span>&quot;</span>  <span style="color: #808080;"># Num&eacute;ro de build</span>
            Output += f<span style="color: #FF0000;">&quot;Registered User : {objItem.RegisteredUser}<span style="color: #800000;">\n</span>&quot;</span>  <span style="color: #808080;"># Utilisateur enregistr&eacute;</span>
            Output += f<span style="color: #FF0000;">&quot;SerialNumber : {objItem.SerialNumber}<span style="color: #800000;">\n</span>&quot;</span>  <span style="color: #808080;"># Num&eacute;ro de s&eacute;rie</span>
            Output += <span style="color: #FF0000;">&quot;-----------------------------------------<span style="color: #800000;">\n</span><span style="color: #800000;">\n</span>&quot;</span>
&nbsp;
            <span style="color: #808080;"># Free memory info</span>
            FPMem = int<span class="br0">&#40;</span>objItem.FreePhysicalMemory<span class="br0">&#41;</span> / <span class="br0">&#40;</span><span style="color: #cc66cc;">1024</span> ** <span style="color: #cc66cc;">2</span><span class="br0">&#41;</span>
            ResutFreePhyMem = f<span style="color: #FF0000;">&quot;{FPMem:.2f}&quot;</span>
            Output += f<span style="color: #FF0000;">&quot;{labels.get('FreePhysicalMemory', 'FreePhysicalMemory')}: {ResutFreePhyMem} - GO<span style="color: #800000;">\n</span>&quot;</span>
&nbsp;
            FSpacePF = int<span class="br0">&#40;</span>objItem.FreeSpaceInPagingFiles<span class="br0">&#41;</span> / <span class="br0">&#40;</span><span style="color: #cc66cc;">1024</span> ** <span style="color: #cc66cc;">2</span><span class="br0">&#41;</span>
            ResultFreeSpacePF = f<span style="color: #FF0000;">&quot;{FSpacePF:.2f}&quot;</span>
            Output += f<span style="color: #FF0000;">&quot;{labels.get('FreeSpaceInPagingFiles', 'FreeSpaceInPagingFiles')}: {ResultFreeSpacePF} - GO<span style="color: #800000;">\n</span>&quot;</span>
&nbsp;
            FreeVirtualMem = int<span class="br0">&#40;</span>objItem.FreeVirtualMemory<span class="br0">&#41;</span> / <span class="br0">&#40;</span><span style="color: #cc66cc;">1024</span> ** <span style="color: #cc66cc;">2</span><span class="br0">&#41;</span>
            ResultFreeVirtualMem = f<span style="color: #FF0000;">&quot;{FreeVirtualMem:.2f}&quot;</span>
            Output += f<span style="color: #FF0000;">&quot;{labels.get('FreeVirtualMemory', 'FreeVirtualMemory')}: {ResultFreeVirtualMem} - GO<span style="color: #800000;">\n</span>&quot;</span>
&nbsp;
            Output += <span style="color: #FF0000;">&quot;-----------------------------------------<span style="color: #800000;">\n</span><span style="color: #800000;">\n</span>&quot;</span>
            Output += f<span style="color: #FF0000;">&quot;{labels.get('NumberOfLicensedUsers', 'NumberOfLicensedUsers')}: {objItem.NumberOfLicensedUsers}<span style="color: #800000;">\n</span>&quot;</span>
            Output += f<span style="color: #FF0000;">&quot;{labels.get('NumberOfProcesses', 'NumberOfProcesses')}: {objItem.NumberOfProcesses}<span style="color: #800000;">\n</span>&quot;</span>
            Output += f<span style="color: #FF0000;">&quot;{labels.get('NumberOfUsers', 'NumberOfUsers')}: {objItem.NumberOfUsers}<span style="color: #800000;">\n</span>&quot;</span>
            Output += f<span style="color: #FF0000;">&quot;Total Visible Memory Size: {objItem.TotalVisibleMemorySize} KB<span style="color: #800000;">\n</span>&quot;</span>  <span style="color: #808080;"># Taille m&eacute;moire totale visible</span>
            Output += f<span style="color: #FF0000;">&quot;Install Date: {objItem.InstallDate}<span style="color: #800000;">\n</span>&quot;</span>  <span style="color: #808080;"># Date d'installation</span>
&nbsp;
    <span style="color: #0000ff;">if</span> <span style="color: #0000ff;">not</span> Output:
        Output += f<span style="color: #FF0000;">&quot;{labels.get('SortieWMI_OperatingSystem', 'No Operating System Information')}<span style="color: #800000;">\n</span>&quot;</span>
&nbsp;
    <span style="color: #0000ff;">return</span> Output
&nbsp;
<span style="color: #0000ff;">def</span> BIOS<span class="br0">&#40;</span><span class="br0">&#41;</span>:
    Output = <span style="color: #FF0000;">&quot;&quot;</span>
    colItems = objWMIService.Win32_BIOS<span class="br0">&#40;</span><span class="br0">&#41;</span>
&nbsp;
    <span style="color: #0000ff;">if</span> colItems:
        Output += f<span style="color: #FF0000;">&quot;{labels.get('SWMI', 'WMI Output')} Win32_BIOS<span style="color: #800000;">\n</span>&quot;</span>
        Output += <span style="color: #FF0000;">&quot;-----------------------------------------<span style="color: #800000;">\n</span><span style="color: #800000;">\n</span>&quot;</span>
&nbsp;
        <span style="color: #0000ff;">for</span> objItem <span style="color: #0000ff;">in</span> colItems:
            Output += f<span style="color: #FF0000;">&quot;{labels.get('Name', 'Name')}: {objItem.Name}<span style="color: #800000;">\n</span>&quot;</span>
            Output += f<span style="color: #FF0000;">&quot;{labels.get('Manufacturer', 'Manufacturer')}: {objItem.Manufacturer}<span style="color: #800000;">\n</span>&quot;</span>
            Output += f<span style="color: #FF0000;">&quot;{labels.get('Version', 'Version')}: {objItem.SMBIOSBIOSVersion}<span style="color: #800000;">\n</span>&quot;</span>
            Output += f<span style="color: #FF0000;">&quot;{labels.get('SerialNumber', 'SerialNumber')}: {objItem.SerialNumber}<span style="color: #800000;">\n</span>&quot;</span>
            Output += f<span style="color: #FF0000;">&quot;Release Date: {objItem.ReleaseDate}<span style="color: #800000;">\n</span>&quot;</span>  <span style="color: #808080;"># Date de sortie du BIOS</span>
            Output += f<span style="color: #FF0000;">&quot;BIOS Version: {objItem.Version}<span style="color: #800000;">\n</span>&quot;</span>  <span style="color: #808080;"># Version du BIOS</span>
            Output += f<span style="color: #FF0000;">&quot;Build Number: {objItem.BuildNumber}<span style="color: #800000;">\n</span>&quot;</span>  <span style="color: #808080;"># Num&eacute;ro de build</span>
        Output += <span style="color: #FF0000;">&quot;-----------------------------------------<span style="color: #800000;">\n</span><span style="color: #800000;">\n</span>&quot;</span>
    <span style="color: #0000ff;">else</span>:
        Output += f<span style="color: #FF0000;">&quot;{labels.get('SortieWMI_Bios', 'No BIOS Information')}<span style="color: #800000;">\n</span>&quot;</span>
    <span style="color: #0000ff;">return</span> Output
&nbsp;
<span style="color: #0000ff;">def</span> BaseBoard<span class="br0">&#40;</span><span class="br0">&#41;</span>:
    Output = <span style="color: #FF0000;">&quot;&quot;</span>
    colItems = objWMIService.Win32_BaseBoard<span class="br0">&#40;</span><span class="br0">&#41;</span>
&nbsp;
    <span style="color: #0000ff;">if</span> colItems:
        Output += f<span style="color: #FF0000;">&quot;{labels.get('SWMI', 'WMI Output')} Win32_BaseBoard<span style="color: #800000;">\n</span>&quot;</span>
        Output += <span style="color: #FF0000;">&quot;-----------------------------------------<span style="color: #800000;">\n</span><span style="color: #800000;">\n</span>&quot;</span>
&nbsp;
        <span style="color: #0000ff;">for</span> objItem <span style="color: #0000ff;">in</span> colItems:
            Output += f<span style="color: #FF0000;">&quot;{labels.get('Manufacturer', 'Manufacturer')}: {objItem.Manufacturer}<span style="color: #800000;">\n</span>&quot;</span>
            Output += f<span style="color: #FF0000;">&quot;{labels.get('Product', 'Product')}: {objItem.Product}<span style="color: #800000;">\n</span>&quot;</span>
            Output += f<span style="color: #FF0000;">&quot;{labels.get('Version', 'Version')}: {objItem.Version}<span style="color: #800000;">\n</span>&quot;</span>
            Output += f<span style="color: #FF0000;">&quot;{labels.get('SerialNumber', 'SerialNumber')}: {objItem.SerialNumber}<span style="color: #800000;">\n</span>&quot;</span>
            Output += f<span style="color: #FF0000;">&quot;Hosting Board: {objItem.HostingBoard}<span style="color: #800000;">\n</span>&quot;</span>  <span style="color: #808080;"># Indique si c'est une carte d'accueil</span>
            Output += f<span style="color: #FF0000;">&quot;Hot Swappable: {objItem.HotSwappable}<span style="color: #800000;">\n</span>&quot;</span>  <span style="color: #808080;"># Indique si elle est rempla&ccedil;able &agrave; chaud</span>
            Output += f<span style="color: #FF0000;">&quot;Removable: {objItem.Removable}<span style="color: #800000;">\n</span>&quot;</span>  <span style="color: #808080;"># Indique si elle est amovible</span>
            Output += f<span style="color: #FF0000;">&quot;Replaceable: {objItem.Replaceable}<span style="color: #800000;">\n</span>&quot;</span>  <span style="color: #808080;"># Indique si elle est rempla&ccedil;able</span>
        Output += <span style="color: #FF0000;">&quot;-----------------------------------------<span style="color: #800000;">\n</span><span style="color: #800000;">\n</span>&quot;</span>
    <span style="color: #0000ff;">else</span>:
        Output += f<span style="color: #FF0000;">&quot;{labels.get('SortieWMI_BaseBoard', 'No Base Board Information')}<span style="color: #800000;">\n</span>&quot;</span>
    <span style="color: #0000ff;">return</span> Output
&nbsp;
<span style="color: #0000ff;">def</span> Processor<span class="br0">&#40;</span><span class="br0">&#41;</span>:
    Output = <span style="color: #FF0000;">&quot;&quot;</span>
    colItems = objWMIService.Win32_Processor<span class="br0">&#40;</span><span class="br0">&#41;</span>
&nbsp;
    <span style="color: #0000ff;">if</span> colItems:
        Output += f<span style="color: #FF0000;">&quot;{labels.get('SWMI', 'WMI Output')} Win32_Processor<span style="color: #800000;">\n</span>&quot;</span>
        Output += <span style="color: #FF0000;">&quot;-----------------------------------------<span style="color: #800000;">\n</span><span style="color: #800000;">\n</span>&quot;</span>
&nbsp;
        <span style="color: #0000ff;">for</span> objItem <span style="color: #0000ff;">in</span> colItems:
            Output += f<span style="color: #FF0000;">&quot;{labels.get('Name', 'Name')}: {objItem.Name}<span style="color: #800000;">\n</span>&quot;</span>
            Output += f<span style="color: #FF0000;">&quot;{labels.get('Manufacturer', 'Manufacturer')}: {objItem.Manufacturer}<span style="color: #800000;">\n</span>&quot;</span>
            Output += f<span style="color: #FF0000;">&quot;{labels.get('Caption', 'Caption')}: {objItem.Caption}<span style="color: #800000;">\n</span>&quot;</span>
            Output += f<span style="color: #FF0000;">&quot;{labels.get('DeviceID', 'DeviceID')}: {objItem.DeviceID}<span style="color: #800000;">\n</span>&quot;</span>
&nbsp;
            Output += f<span style="color: #FF0000;">&quot;Architecture: {objItem.Architecture}<span style="color: #800000;">\n</span>&quot;</span>
            Output += f<span style="color: #FF0000;">&quot;Current Clock Speed: {objItem.CurrentClockSpeed}<span style="color: #800000;">\n</span>&quot;</span>
            Output += f<span style="color: #FF0000;">&quot;Max Clock Speed: {objItem.MaxClockSpeed}<span style="color: #800000;">\n</span>&quot;</span>
            Output += f<span style="color: #FF0000;">&quot;Number of Cores: {objItem.NumberOfCores}<span style="color: #800000;">\n</span>&quot;</span>
            Output += f<span style="color: #FF0000;">&quot;Number of Logical Processors: {objItem.NumberOfLogicalProcessors}<span style="color: #800000;">\n</span>&quot;</span>
            Output += f<span style="color: #FF0000;">&quot;L2 Cache Size: {objItem.L2CacheSize}<span style="color: #800000;">\n</span>&quot;</span>
            Output += f<span style="color: #FF0000;">&quot;L3 Cache Size: {objItem.L3CacheSize}<span style="color: #800000;">\n</span>&quot;</span>
            Output += f<span style="color: #FF0000;">&quot;Data Width: {objItem.DataWidth}<span style="color: #800000;">\n</span>&quot;</span>
            Output += f<span style="color: #FF0000;">&quot;Description: {objItem.Description}<span style="color: #800000;">\n</span>&quot;</span>
            Output += f<span style="color: #FF0000;">&quot;Family: {objItem.Family}<span style="color: #800000;">\n</span>&quot;</span>
            Output += f<span style="color: #FF0000;">&quot;ProcessorId: {objItem.ProcessorId}<span style="color: #800000;">\n</span>&quot;</span>
            Output += f<span style="color: #FF0000;">&quot;Revision: {objItem.Revision}<span style="color: #800000;">\n</span>&quot;</span>
            Output += f<span style="color: #FF0000;">&quot;Role: {objItem.Role}<span style="color: #800000;">\n</span>&quot;</span>
            Output += f<span style="color: #FF0000;">&quot;UpgradeMethod: {objItem.UpgradeMethod}<span style="color: #800000;">\n</span>&quot;</span>
            Output += f<span style="color: #FF0000;">&quot;VoltageCaps: {objItem.VoltageCaps}<span style="color: #800000;">\n</span>&quot;</span>
            Output += f<span style="color: #FF0000;">&quot;Current Voltage: {objItem.CurrentVoltage}<span style="color: #800000;">\n</span>&quot;</span> <span style="color: #808080;"># Tension actuelle</span>
            Output += f<span style="color: #FF0000;">&quot;ExtClock: {objItem.ExtClock}<span style="color: #800000;">\n</span>&quot;</span> <span style="color: #808080;"># Horloge externe</span>
        Output += <span style="color: #FF0000;">&quot;-----------------------------------------<span style="color: #800000;">\n</span><span style="color: #800000;">\n</span>&quot;</span>
    <span style="color: #0000ff;">else</span>:
        Output += f<span style="color: #FF0000;">&quot;{labels.get('SortieWMI_Processor', 'No Processor Information')}<span style="color: #800000;">\n</span>&quot;</span>
    <span style="color: #0000ff;">return</span> Output
&nbsp;
<span style="color: #0000ff;">def</span> PhysicalMemory<span class="br0">&#40;</span><span class="br0">&#41;</span>:
    Output = <span style="color: #FF0000;">&quot;&quot;</span>
    colItems = objWMIService.Win32_PhysicalMemory<span class="br0">&#40;</span><span class="br0">&#41;</span>
&nbsp;
    <span style="color: #0000ff;">if</span> colItems:
        Output += f<span style="color: #FF0000;">&quot;{labels.get('SWMI', 'WMI Output')} Win32_PhysicalMemory<span style="color: #800000;">\n</span>&quot;</span>
        Output += <span style="color: #FF0000;">&quot;-----------------------------------------<span style="color: #800000;">\n</span><span style="color: #800000;">\n</span>&quot;</span>
&nbsp;
        <span style="color: #0000ff;">for</span> objItem <span style="color: #0000ff;">in</span> colItems:
            Output += f<span style="color: #FF0000;">&quot;{labels.get('Capacity', 'Capacity')}: {objItem.Capacity}<span style="color: #800000;">\n</span>&quot;</span>
            Output += f<span style="color: #FF0000;">&quot;{labels.get('Speed', 'Speed')}: {objItem.Speed}<span style="color: #800000;">\n</span>&quot;</span>
            Output += f<span style="color: #FF0000;">&quot;{labels.get('Manufacturer', 'Manufacturer')}: {objItem.Manufacturer}<span style="color: #800000;">\n</span>&quot;</span>
            Output += f<span style="color: #FF0000;">&quot;Device Locator: {objItem.DeviceLocator}<span style="color: #800000;">\n</span>&quot;</span>  <span style="color: #808080;"># Emplacement du p&eacute;riph&eacute;rique</span>
            Output += f<span style="color: #FF0000;">&quot;Form Factor: {objItem.FormFactor}<span style="color: #800000;">\n</span>&quot;</span>  <span style="color: #808080;"># Facteur de forme</span>
            Output += f<span style="color: #FF0000;">&quot;Part Number: {objItem.PartNumber}<span style="color: #800000;">\n</span>&quot;</span>  <span style="color: #808080;"># Num&eacute;ro de pi&egrave;ce</span>
            Output += f<span style="color: #FF0000;">&quot;Serial Number: {objItem.SerialNumber}<span style="color: #800000;">\n</span>&quot;</span>  <span style="color: #808080;"># Num&eacute;ro de s&eacute;rie</span>
            Output += f<span style="color: #FF0000;">&quot;SMBIOS Memory Type: {objItem.SMBIOSMemoryType}<span style="color: #800000;">\n</span>&quot;</span>  <span style="color: #808080;"># Type de m&eacute;moire</span>
            Output += f<span style="color: #FF0000;">&quot;Tag: {objItem.Tag}<span style="color: #800000;">\n</span>&quot;</span>  <span style="color: #808080;"># Tag</span>
            Output += f<span style="color: #FF0000;">&quot;Total Width: {objItem.TotalWidth}<span style="color: #800000;">\n</span>&quot;</span>  <span style="color: #808080;"># Largeur totale</span>
        Output += <span style="color: #FF0000;">&quot;-----------------------------------------<span style="color: #800000;">\n</span><span style="color: #800000;">\n</span>&quot;</span>
    <span style="color: #0000ff;">else</span>:
        Output += f<span style="color: #FF0000;">&quot;{labels.get('SortieWMI_PhysicalMemory', 'No Physical Memory Information')}<span style="color: #800000;">\n</span>&quot;</span>
    <span style="color: #0000ff;">return</span> Output
&nbsp;
<span style="color: #0000ff;">def</span> VideoController<span class="br0">&#40;</span><span class="br0">&#41;</span>:
    Output = <span style="color: #FF0000;">&quot;&quot;</span>
    colItems = objWMIService.Win32_VideoController<span class="br0">&#40;</span><span class="br0">&#41;</span>
&nbsp;
    <span style="color: #0000ff;">if</span> colItems:
        Output += f<span style="color: #FF0000;">&quot;{labels.get('SWMI', 'WMI Output')} Win32_VideoController<span style="color: #800000;">\n</span>&quot;</span>
        Output += <span style="color: #FF0000;">&quot;-----------------------------------------<span style="color: #800000;">\n</span><span style="color: #800000;">\n</span>&quot;</span>
&nbsp;
        <span style="color: #0000ff;">for</span> objItem <span style="color: #0000ff;">in</span> colItems:
            Output += f<span style="color: #FF0000;">&quot;{labels.get('Name', 'Name')}: {objItem.Name}<span style="color: #800000;">\n</span>&quot;</span>
            Output += f<span style="color: #FF0000;">&quot;{labels.get('AdapterRAM', 'AdapterRAM')}: {objItem.AdapterRAM}<span style="color: #800000;">\n</span>&quot;</span>
            Output += f<span style="color: #FF0000;">&quot;{labels.get('CurrentBitsPerPixel', 'CurrentBitsPerPixel')}: {objItem.CurrentBitsPerPixel}<span style="color: #800000;">\n</span>&quot;</span>
            Output += f<span style="color: #FF0000;">&quot;{labels.get('CurrentRefreshRate', 'CurrentRefreshRate')}: {objItem.CurrentRefreshRate}<span style="color: #800000;">\n</span>&quot;</span>
            Output += f<span style="color: #FF0000;">&quot;Adapter DAC Type: {objItem.AdapterDACType}<span style="color: #800000;">\n</span>&quot;</span>  <span style="color: #808080;"># Type de DAC</span>
            Output += f<span style="color: #FF0000;">&quot;Driver Version: {objItem.DriverVersion}<span style="color: #800000;">\n</span>&quot;</span>  <span style="color: #808080;"># Version du pilote</span>
            Output += f<span style="color: #FF0000;">&quot;Video Mode Description: {objItem.VideoModeDescription}<span style="color: #800000;">\n</span>&quot;</span>  <span style="color: #808080;"># Description du mode vid&eacute;o</span>
            Output += f<span style="color: #FF0000;">&quot;Video Processor: {objItem.VideoProcessor}<span style="color: #800000;">\n</span>&quot;</span>  <span style="color: #808080;"># Processeur vid&eacute;o</span>
        Output += <span style="color: #FF0000;">&quot;-----------------------------------------<span style="color: #800000;">\n</span><span style="color: #800000;">\n</span>&quot;</span>
    <span style="color: #0000ff;">else</span>:
        Output += f<span style="color: #FF0000;">&quot;{labels.get('SortieWMI_VideoController', 'No Video Controller Information')}<span style="color: #800000;">\n</span>&quot;</span>
    <span style="color: #0000ff;">return</span> Output
&nbsp;
<span style="color: #0000ff;">def</span> DiskDrive<span class="br0">&#40;</span><span class="br0">&#41;</span>:
    Output = <span style="color: #FF0000;">&quot;&quot;</span>
    colItems = objWMIService.Win32_DiskDrive<span class="br0">&#40;</span><span class="br0">&#41;</span>
&nbsp;
    <span style="color: #0000ff;">if</span> colItems:
        Output += f<span style="color: #FF0000;">&quot;{labels.get('SWMI', 'WMI Output')} Win32_DiskDrive<span style="color: #800000;">\n</span>&quot;</span>
        Output += <span style="color: #FF0000;">&quot;-----------------------------------------<span style="color: #800000;">\n</span><span style="color: #800000;">\n</span>&quot;</span>
&nbsp;
        <span style="color: #0000ff;">for</span> objItem <span style="color: #0000ff;">in</span> colItems:
            Output += f<span style="color: #FF0000;">&quot;Model: {objItem.Model}<span style="color: #800000;">\n</span>&quot;</span>
            Output += f<span style="color: #FF0000;">&quot;Size: {objItem.Size}<span style="color: #800000;">\n</span>&quot;</span>
            Output += f<span style="color: #FF0000;">&quot;InterfaceType: {objItem.InterfaceType}<span style="color: #800000;">\n</span>&quot;</span>
        Output += <span style="color: #FF0000;">&quot;-----------------------------------------<span style="color: #800000;">\n</span><span style="color: #800000;">\n</span>&quot;</span>
    <span style="color: #0000ff;">else</span>:
        Output += f<span style="color: #FF0000;">&quot;{labels.get('SortieWMI_DiskDrive', 'No Disk Drive Information')}<span style="color: #800000;">\n</span>&quot;</span>
    <span style="color: #0000ff;">return</span> Output
&nbsp;
<span style="color: #0000ff;">def</span> NetworkAdapter<span class="br0">&#40;</span><span class="br0">&#41;</span>:
    Output = <span style="color: #FF0000;">&quot;&quot;</span>
    colItems = objWMIService.Win32_NetworkAdapter<span class="br0">&#40;</span><span class="br0">&#41;</span>
&nbsp;
    <span style="color: #0000ff;">if</span> colItems:
        Output += f<span style="color: #FF0000;">&quot;{labels.get('SWMI', 'WMI Output')} Win32_NetworkAdapter<span style="color: #800000;">\n</span>&quot;</span>
        Output += <span style="color: #FF0000;">&quot;-----------------------------------------<span style="color: #800000;">\n</span><span style="color: #800000;">\n</span>&quot;</span>
&nbsp;
        <span style="color: #0000ff;">for</span> objItem <span style="color: #0000ff;">in</span> colItems:
            Output += f<span style="color: #FF0000;">&quot;Name: {objItem.Name}<span style="color: #800000;">\n</span>&quot;</span>
            Output += f<span style="color: #FF0000;">&quot;MACAddress: {objItem.MACAddress}<span style="color: #800000;">\n</span>&quot;</span>
            Output += f<span style="color: #FF0000;">&quot;AdapterType: {objItem.AdapterType}<span style="color: #800000;">\n</span>&quot;</span>
            Output += f<span style="color: #FF0000;">&quot;NetConnectionID: {objItem.NetConnectionID}<span style="color: #800000;">\n</span>&quot;</span>
        Output += <span style="color: #FF0000;">&quot;-----------------------------------------<span style="color: #800000;">\n</span><span style="color: #800000;">\n</span>&quot;</span>
    <span style="color: #0000ff;">else</span>:
        Output += f<span style="color: #FF0000;">&quot;{labels.get('SortieWMI_NetworkAdapter', 'No Network Adapter Information')}<span style="color: #800000;">\n</span>&quot;</span>
    <span style="color: #0000ff;">return</span> Output
&nbsp;
<span style="color: #0000ff;">def</span> ComputerSystem<span class="br0">&#40;</span><span class="br0">&#41;</span>:
    Output = <span style="color: #FF0000;">&quot;&quot;</span>
    colItems = objWMIService.Win32_ComputerSystem<span class="br0">&#40;</span><span class="br0">&#41;</span>
&nbsp;
    <span style="color: #0000ff;">if</span> colItems:
        Output += f<span style="color: #FF0000;">&quot;{labels.get('SWMI', 'WMI Output')} Win32_ComputerSystem<span style="color: #800000;">\n</span>&quot;</span>
        Output += <span style="color: #FF0000;">&quot;-----------------------------------------<span style="color: #800000;">\n</span><span style="color: #800000;">\n</span>&quot;</span>
&nbsp;
        <span style="color: #0000ff;">for</span> objItem <span style="color: #0000ff;">in</span> colItems:
            Output += f<span style="color: #FF0000;">&quot;Model: {objItem.Model}<span style="color: #800000;">\n</span>&quot;</span>
            Output += f<span style="color: #FF0000;">&quot;Manufacturer: {objItem.Manufacturer}<span style="color: #800000;">\n</span>&quot;</span>
            Output += f<span style="color: #FF0000;">&quot;TotalPhysicalMemory: {objItem.TotalPhysicalMemory}<span style="color: #800000;">\n</span>&quot;</span>
        Output += <span style="color: #FF0000;">&quot;-----------------------------------------<span style="color: #800000;">\n</span><span style="color: #800000;">\n</span>&quot;</span>
    <span style="color: #0000ff;">else</span>:
        Output += f<span style="color: #FF0000;">&quot;{labels.get('SortieWMI_ComputerSystem', 'No Computer System Information')}<span style="color: #800000;">\n</span>&quot;</span>
    <span style="color: #0000ff;">return</span> Output
&nbsp;
<span style="color: #0000ff;">def</span> ProcessInfo<span class="br0">&#40;</span><span class="br0">&#41;</span>:
    Output = <span style="color: #FF0000;">&quot;&quot;</span>
    colItems = objWMIService.Win32_Process<span class="br0">&#40;</span><span class="br0">&#41;</span>
&nbsp;
    <span style="color: #0000ff;">if</span> colItems:
        Output += f<span style="color: #FF0000;">&quot;{labels.get('SWMI', 'WMI Output')} Win32_Process<span style="color: #800000;">\n</span>&quot;</span>
        Output += <span style="color: #FF0000;">&quot;-----------------------------------------<span style="color: #800000;">\n</span><span style="color: #800000;">\n</span>&quot;</span>
&nbsp;
        <span style="color: #0000ff;">for</span> objItem <span style="color: #0000ff;">in</span> colItems:
            Output += f<span style="color: #FF0000;">&quot;Name: {objItem.Name}<span style="color: #800000;">\n</span>&quot;</span>
            Output += f<span style="color: #FF0000;">&quot;ProcessId: {objItem.ProcessId}<span style="color: #800000;">\n</span>&quot;</span>
            Output += f<span style="color: #FF0000;">&quot;ExecutablePath: {objItem.ExecutablePath}<span style="color: #800000;">\n</span>&quot;</span>
        Output += <span style="color: #FF0000;">&quot;-----------------------------------------<span style="color: #800000;">\n</span><span style="color: #800000;">\n</span>&quot;</span>
    <span style="color: #0000ff;">else</span>:
        Output += f<span style="color: #FF0000;">&quot;{labels.get('SortieWMI_Process', 'No Process Information')}<span style="color: #800000;">\n</span>&quot;</span>
    <span style="color: #0000ff;">return</span> Output
&nbsp;
<span style="color: #0000ff;">def</span> BatteryInfo<span class="br0">&#40;</span><span class="br0">&#41;</span>:
    Output = <span style="color: #FF0000;">&quot;&quot;</span>
    colItems = objWMIService.Win32_Battery<span class="br0">&#40;</span><span class="br0">&#41;</span>
&nbsp;
    <span style="color: #0000ff;">if</span> colItems:
        Output += f<span style="color: #FF0000;">&quot;{labels.get('SWMI', 'WMI Output')} Win32_Battery<span style="color: #800000;">\n</span>&quot;</span>
        Output += <span style="color: #FF0000;">&quot;-----------------------------------------<span style="color: #800000;">\n</span><span style="color: #800000;">\n</span>&quot;</span>
&nbsp;
        <span style="color: #0000ff;">for</span> objItem <span style="color: #0000ff;">in</span> colItems:
            Output += f<span style="color: #FF0000;">&quot;DesignCapacity: {objItem.DesignCapacity}<span style="color: #800000;">\n</span>&quot;</span>
            Output += f<span style="color: #FF0000;">&quot;EstimatedChargeRemaining: {objItem.EstimatedChargeRemaining}<span style="color: #800000;">\n</span>&quot;</span>
            Output += f<span style="color: #FF0000;">&quot;BatteryStatus: {objItem.BatteryStatus}<span style="color: #800000;">\n</span>&quot;</span>
        Output += <span style="color: #FF0000;">&quot;-----------------------------------------<span style="color: #800000;">\n</span><span style="color: #800000;">\n</span>&quot;</span>
    <span style="color: #0000ff;">else</span>:
        Output += f<span style="color: #FF0000;">&quot;{labels.get('SortieWMI_Battery', 'No Battery Information')}<span style="color: #800000;">\n</span>&quot;</span>
    <span style="color: #0000ff;">return</span> Output
&nbsp;
<span style="color: #0000ff;">def</span> FanInfo<span class="br0">&#40;</span><span class="br0">&#41;</span>:
    Output = <span style="color: #FF0000;">&quot;&quot;</span>
    colItems = objWMIService.Win32_Fan<span class="br0">&#40;</span><span class="br0">&#41;</span>
&nbsp;
    <span style="color: #0000ff;">if</span> colItems:
        Output += f<span style="color: #FF0000;">&quot;{labels.get('SWMI', 'WMI Output')} Win32_Fan<span style="color: #800000;">\n</span>&quot;</span>
        Output += <span style="color: #FF0000;">&quot;-----------------------------------------<span style="color: #800000;">\n</span><span style="color: #800000;">\n</span>&quot;</span>
&nbsp;
        <span style="color: #0000ff;">for</span> objItem <span style="color: #0000ff;">in</span> colItems:
            Output += f<span style="color: #FF0000;">&quot;Name: {objItem.Name}<span style="color: #800000;">\n</span>&quot;</span>
            Output += f<span style="color: #FF0000;">&quot;Status: {objItem.Status}<span style="color: #800000;">\n</span>&quot;</span>
        Output += <span style="color: #FF0000;">&quot;-----------------------------------------<span style="color: #800000;">\n</span><span style="color: #800000;">\n</span>&quot;</span>
    <span style="color: #0000ff;">else</span>:
        Output += f<span style="color: #FF0000;">&quot;{labels.get('SortieWMI_Fan', 'No Fan Information')}<span style="color: #800000;">\n</span>&quot;</span>
    <span style="color: #0000ff;">return</span> Output
&nbsp;
<span style="color: #0000ff;">def</span> NetworkAdapterConfiguration<span class="br0">&#40;</span><span class="br0">&#41;</span>:
    Output = <span style="color: #FF0000;">&quot;&quot;</span>
    colItems = objWMIService.Win32_NetworkAdapterConfiguration<span class="br0">&#40;</span><span class="br0">&#41;</span>
&nbsp;
    <span style="color: #0000ff;">if</span> colItems:
        Output += f<span style="color: #FF0000;">&quot;{labels.get('SWMI', 'WMI Output')} Win32_NetworkAdapterConfiguration<span style="color: #800000;">\n</span>&quot;</span>
        Output += <span style="color: #FF0000;">&quot;-----------------------------------------<span style="color: #800000;">\n</span><span style="color: #800000;">\n</span>&quot;</span>
&nbsp;
        <span style="color: #0000ff;">for</span> objItem <span style="color: #0000ff;">in</span> colItems:
            <span style="color: #0000ff;">if</span> objItem.IPAddress:
                Output += f<span style="color: #FF0000;">&quot;IPAddress: {objItem.IPAddress[0]}<span style="color: #800000;">\n</span>&quot;</span>
            <span style="color: #0000ff;">if</span> objItem.DefaultIPGateway:
                Output += f<span style="color: #FF0000;">&quot;DefaultIPGateway: {objItem.DefaultIPGateway[0]}<span style="color: #800000;">\n</span>&quot;</span>
            <span style="color: #0000ff;">if</span> objItem.DNSServerSearchOrder:
                Output += f<span style="color: #FF0000;">&quot;DNSServerSearchOrder: {objItem.DNSServerSearchOrder}<span style="color: #800000;">\n</span>&quot;</span>
        Output += <span style="color: #FF0000;">&quot;-----------------------------------------<span style="color: #800000;">\n</span><span style="color: #800000;">\n</span>&quot;</span>
    <span style="color: #0000ff;">else</span>:
        Output += f<span style="color: #FF0000;">&quot;{labels.get('SortieWMI_NetworkAdapterConfiguration', 'No Network Adapter Configuration Information')}<span style="color: #800000;">\n</span>&quot;</span>
    <span style="color: #0000ff;">return</span> Output
&nbsp;
<span style="color: #0000ff;">def</span> KeyboardInfo<span class="br0">&#40;</span><span class="br0">&#41;</span>:
    Output = <span style="color: #FF0000;">&quot;&quot;</span>
    colItems = objWMIService.Win32_Keyboard<span class="br0">&#40;</span><span class="br0">&#41;</span>
&nbsp;
    <span style="color: #0000ff;">if</span> colItems:
        Output += f<span style="color: #FF0000;">&quot;{labels.get('SWMI', 'WMI Output')} Win32_Keyboard<span style="color: #800000;">\n</span>&quot;</span>
        Output += <span style="color: #FF0000;">&quot;-----------------------------------------<span style="color: #800000;">\n</span><span style="color: #800000;">\n</span>&quot;</span>
&nbsp;
        <span style="color: #0000ff;">for</span> objItem <span style="color: #0000ff;">in</span> colItems:
            Output += f<span style="color: #FF0000;">&quot;Description: {objItem.Description}<span style="color: #800000;">\n</span>&quot;</span>
            Output += f<span style="color: #FF0000;">&quot;Manufacturer: {objItem.Manufacturer}<span style="color: #800000;">\n</span>&quot;</span>
            Output += f<span style="color: #FF0000;">&quot;Name: {objItem.Name}<span style="color: #800000;">\n</span>&quot;</span>
        Output += <span style="color: #FF0000;">&quot;-----------------------------------------<span style="color: #800000;">\n</span><span style="color: #800000;">\n</span>&quot;</span>
    <span style="color: #0000ff;">else</span>:
        Output += f<span style="color: #FF0000;">&quot;{labels.get('SortieWMI_Keyboard', 'No Keyboard Information')}<span style="color: #800000;">\n</span>&quot;</span>
    <span style="color: #0000ff;">return</span> Output
&nbsp;
<span style="color: #0000ff;">def</span> PrinterInfo<span class="br0">&#40;</span><span class="br0">&#41;</span>:
    Output = <span style="color: #FF0000;">&quot;&quot;</span>
    colItems = objWMIService.Win32_Printer<span class="br0">&#40;</span><span class="br0">&#41;</span>
&nbsp;
    <span style="color: #0000ff;">if</span> colItems:
        Output += f<span style="color: #FF0000;">&quot;{labels.get('SWMI', 'WMI Output')} Win32_Printer<span style="color: #800000;">\n</span>&quot;</span>
        Output += <span style="color: #FF0000;">&quot;-----------------------------------------<span style="color: #800000;">\n</span><span style="color: #800000;">\n</span>&quot;</span>
&nbsp;
        <span style="color: #0000ff;">for</span> objItem <span style="color: #0000ff;">in</span> colItems:
            Output += f<span style="color: #FF0000;">&quot;Name: {objItem.Name}<span style="color: #800000;">\n</span>&quot;</span>
            Output += f<span style="color: #FF0000;">&quot;PortName: {objItem.PortName}<span style="color: #800000;">\n</span>&quot;</span>
            Output += f<span style="color: #FF0000;">&quot;DriverName: {objItem.DriverName}<span style="color: #800000;">\n</span>&quot;</span>
            Output += f<span style="color: #FF0000;">&quot;PrinterStatus: {objItem.PrinterStatus}<span style="color: #800000;">\n</span>&quot;</span>
        Output += <span style="color: #FF0000;">&quot;-----------------------------------------<span style="color: #800000;">\n</span><span style="color: #800000;">\n</span>&quot;</span>
    <span style="color: #0000ff;">else</span>:
        Output += f<span style="color: #FF0000;">&quot;{labels.get('SortieWMI_Printer', 'No Printer Information')}<span style="color: #800000;">\n</span>&quot;</span>
    <span style="color: #0000ff;">return</span> Output
&nbsp;
<span style="color: #0000ff;">def</span> PowerManagementEvent<span class="br0">&#40;</span><span class="br0">&#41;</span>:
    Output = <span style="color: #FF0000;">&quot;&quot;</span>
    colItems = objWMIService.Win32_PowerManagementEvent<span class="br0">&#40;</span><span class="br0">&#41;</span>
&nbsp;
    <span style="color: #0000ff;">if</span> colItems:
        Output += f<span style="color: #FF0000;">&quot;{labels.get('SWMI', 'WMI Output')} Win32_PowerManagementEvent<span style="color: #800000;">\n</span>&quot;</span>
        Output += <span style="color: #FF0000;">&quot;-----------------------------------------<span style="color: #800000;">\n</span><span style="color: #800000;">\n</span>&quot;</span>
&nbsp;
        <span style="color: #0000ff;">for</span> objItem <span style="color: #0000ff;">in</span> colItems:
            Output += f<span style="color: #FF0000;">&quot;EventType: {objItem.EventType}<span style="color: #800000;">\n</span>&quot;</span>
            Output += f<span style="color: #FF0000;">&quot;EventTypeName: {objItem.EventTypeName}<span style="color: #800000;">\n</span>&quot;</span>
        Output += <span style="color: #FF0000;">&quot;-----------------------------------------<span style="color: #800000;">\n</span><span style="color: #800000;">\n</span>&quot;</span>
    <span style="color: #0000ff;">else</span>:
        Output += f<span style="color: #FF0000;">&quot;{labels.get('SortieWMI_PowerManagementEvent', 'No Power Management Event Information')}<span style="color: #800000;">\n</span>&quot;</span>
    <span style="color: #0000ff;">return</span> Output
&nbsp;
<span style="color: #0000ff;">def</span> SoftwareFeature<span class="br0">&#40;</span><span class="br0">&#41;</span>:
    Output = <span style="color: #FF0000;">&quot;&quot;</span>
    colItems = objWMIService.Win32_SoftwareFeature<span class="br0">&#40;</span><span class="br0">&#41;</span>
&nbsp;
    <span style="color: #0000ff;">if</span> colItems:
        Output += f<span style="color: #FF0000;">&quot;{labels.get('SWMI', 'WMI Output')} Win32_SoftwareFeature<span style="color: #800000;">\n</span>&quot;</span>
        Output += <span style="color: #FF0000;">&quot;-----------------------------------------<span style="color: #800000;">\n</span><span style="color: #800000;">\n</span>&quot;</span>
&nbsp;
        <span style="color: #0000ff;">for</span> objItem <span style="color: #0000ff;">in</span> colItems:
            Output += f<span style="color: #FF0000;">&quot;Name: {objItem.Name}<span style="color: #800000;">\n</span>&quot;</span>
            Output += f<span style="color: #FF0000;">&quot;Description: {objItem.Description}<span style="color: #800000;">\n</span>&quot;</span>
            Output += f<span style="color: #FF0000;">&quot;InstallDate: {objItem.InstallDate}<span style="color: #800000;">\n</span>&quot;</span>
        Output += <span style="color: #FF0000;">&quot;-----------------------------------------<span style="color: #800000;">\n</span><span style="color: #800000;">\n</span>&quot;</span>
    <span style="color: #0000ff;">else</span>:
        Output += f<span style="color: #FF0000;">&quot;{labels.get('SortieWMI_SoftwareFeature', 'No Software Feature Information')}<span style="color: #800000;">\n</span>&quot;</span>
    <span style="color: #0000ff;">return</span> Output
&nbsp;
<span style="color: #0000ff;">def</span> StartupCommand<span class="br0">&#40;</span><span class="br0">&#41;</span>:
    Output = <span style="color: #FF0000;">&quot;&quot;</span>
    colItems = objWMIService.Win32_StartupCommand<span class="br0">&#40;</span><span class="br0">&#41;</span>
&nbsp;
    <span style="color: #0000ff;">if</span> colItems:
        Output += f<span style="color: #FF0000;">&quot;{labels.get('SWMI', 'WMI Output')} Win32_StartupCommand<span style="color: #800000;">\n</span>&quot;</span>
        Output += <span style="color: #FF0000;">&quot;-----------------------------------------<span style="color: #800000;">\n</span><span style="color: #800000;">\n</span>&quot;</span>
&nbsp;
        <span style="color: #0000ff;">for</span> objItem <span style="color: #0000ff;">in</span> colItems:
            Output += f<span style="color: #FF0000;">&quot;Name: {objItem.Name}<span style="color: #800000;">\n</span>&quot;</span>
            Output += f<span style="color: #FF0000;">&quot;Command: {objItem.Command}<span style="color: #800000;">\n</span>&quot;</span>
            Output += f<span style="color: #FF0000;">&quot;Location: {objItem.Location}<span style="color: #800000;">\n</span>&quot;</span>
        Output += <span style="color: #FF0000;">&quot;-----------------------------------------<span style="color: #800000;">\n</span><span style="color: #800000;">\n</span>&quot;</span>
    <span style="color: #0000ff;">else</span>:
        Output += f<span style="color: #FF0000;">&quot;{labels.get('SortieWMI_StartupCommand', 'No Startup Command Information')}<span style="color: #800000;">\n</span>&quot;</span>
    <span style="color: #0000ff;">return</span> Output
&nbsp;
<span style="color: #0000ff;">def</span> ServiceInfo<span class="br0">&#40;</span><span class="br0">&#41;</span>:
    Output = <span style="color: #FF0000;">&quot;&quot;</span>
    colItems = objWMIService.Win32_Service<span class="br0">&#40;</span><span class="br0">&#41;</span>
&nbsp;
    <span style="color: #0000ff;">if</span> colItems:
        Output += f<span style="color: #FF0000;">&quot;{labels.get('SWMI', 'WMI Output')} Win32_Service<span style="color: #800000;">\n</span>&quot;</span>
        Output += <span style="color: #FF0000;">&quot;-----------------------------------------<span style="color: #800000;">\n</span><span style="color: #800000;">\n</span>&quot;</span>
&nbsp;
        <span style="color: #0000ff;">for</span> objItem <span style="color: #0000ff;">in</span> colItems:
            Output += f<span style="color: #FF0000;">&quot;Name: {objItem.Name}<span style="color: #800000;">\n</span>&quot;</span>
            Output += f<span style="color: #FF0000;">&quot;DisplayName: {objItem.DisplayName}<span style="color: #800000;">\n</span>&quot;</span>
            Output += f<span style="color: #FF0000;">&quot;State: {objItem.State}<span style="color: #800000;">\n</span>&quot;</span>
            Output += f<span style="color: #FF0000;">&quot;StartMode: {objItem.StartMode}<span style="color: #800000;">\n</span>&quot;</span>
        Output += <span style="color: #FF0000;">&quot;-----------------------------------------<span style="color: #800000;">\n</span><span style="color: #800000;">\n</span>&quot;</span>
    <span style="color: #0000ff;">else</span>:
        Output += f<span style="color: #FF0000;">&quot;{labels.get('SortieWMI_Service', 'No Service Information')}<span style="color: #800000;">\n</span>&quot;</span>
    <span style="color: #0000ff;">return</span> Output
&nbsp;
<span style="color: #808080;"># Function to display WMI data in the text widget</span>
<span style="color: #0000ff;">def</span> display_wmi_data<span class="br0">&#40;</span>wmi_function<span class="br0">&#41;</span>:
    result_text.config<span class="br0">&#40;</span>state=tk.NORMAL<span class="br0">&#41;</span>
    result_text.delete<span class="br0">&#40;</span><span style="color: #FF0000;">&quot;1.0&quot;</span>, tk.END<span class="br0">&#41;</span>
&nbsp;
    output = wmi_function<span class="br0">&#40;</span><span class="br0">&#41;</span>
    result_text.insert<span class="br0">&#40;</span>tk.END, output<span class="br0">&#41;</span>
&nbsp;
    result_text.config<span class="br0">&#40;</span>state=tk.DISABLED<span class="br0">&#41;</span>
&nbsp;
<span style="color: #808080;"># Interface graphique</span>
root = tk.Tk<span class="br0">&#40;</span><span class="br0">&#41;</span>
root.title<span class="br0">&#40;</span><span style="color: #FF0000;">&quot;WMI Data Viewer&quot;</span><span class="br0">&#41;</span>
&nbsp;
<span style="color: #808080;"># Style personnalis&eacute; pour les boutons</span>
style = ttk.Style<span class="br0">&#40;</span><span class="br0">&#41;</span>
style.theme_use<span class="br0">&#40;</span><span style="color: #FF0000;">'clam'</span><span class="br0">&#41;</span>
style.configure<span class="br0">&#40;</span>
    <span style="color: #FF0000;">&quot;Custom.TButton&quot;</span>,
    font=<span class="br0">&#40;</span><span style="color: #FF0000;">&quot;Segoe UI&quot;</span>, <span style="color: #cc66cc;">12</span>, <span style="color: #FF0000;">&quot;bold&quot;</span><span class="br0">&#41;</span>,
    foreground=<span style="color: #FF0000;">&quot;white&quot;</span>,
    background=<span style="color: #FF0000;">&quot;#007ACC&quot;</span>,
    padding=<span style="color: #cc66cc;">5</span>
<span class="br0">&#41;</span>
style.map<span class="br0">&#40;</span>
    <span style="color: #FF0000;">&quot;Custom.TButton&quot;</span>,
    foreground=<span class="br0">&#91;</span><span class="br0">&#40;</span><span style="color: #FF0000;">'pressed'</span>, <span style="color: #FF0000;">'yellow'</span><span class="br0">&#41;</span>, <span class="br0">&#40;</span><span style="color: #FF0000;">'active'</span>, <span style="color: #FF0000;">'white'</span><span class="br0">&#41;</span><span class="br0">&#93;</span>,
    background=<span class="br0">&#91;</span><span class="br0">&#40;</span><span style="color: #FF0000;">'pressed'</span>, <span style="color: #FF0000;">'#005F8C'</span><span class="br0">&#41;</span>, <span class="br0">&#40;</span><span style="color: #FF0000;">'active'</span>, <span style="color: #FF0000;">'#3399FF'</span><span class="br0">&#41;</span><span class="br0">&#93;</span>
<span class="br0">&#41;</span>
&nbsp;
<span style="color: #808080;"># Panneau de choix &agrave; gauche</span>
choice_frame = ttk.Frame<span class="br0">&#40;</span>root, padding=<span style="color: #cc66cc;">10</span><span class="br0">&#41;</span>
choice_frame.pack<span class="br0">&#40;</span>side=tk.LEFT, fill=tk.Y<span class="br0">&#41;</span>
&nbsp;
<span style="color: #808080;"># Buttons to display information</span>
ttk.Button<span class="br0">&#40;</span>choice_frame, text=<span style="color: #FF0000;">&quot;Operating System&quot;</span>, style=<span style="color: #FF0000;">&quot;Custom.TButton&quot;</span>,
           command=<span style="color: #0000ff;">lambda</span>: display_wmi_data<span class="br0">&#40;</span>OperatingSystem<span class="br0">&#41;</span><span class="br0">&#41;</span>.pack<span class="br0">&#40;</span>pady=<span style="color: #cc66cc;">5</span>, padx=<span style="color: #cc66cc;">5</span>, fill=tk.X<span class="br0">&#41;</span>
ttk.Button<span class="br0">&#40;</span>choice_frame, text=<span style="color: #FF0000;">&quot;BIOS&quot;</span>, style=<span style="color: #FF0000;">&quot;Custom.TButton&quot;</span>,
           command=<span style="color: #0000ff;">lambda</span>: display_wmi_data<span class="br0">&#40;</span>BIOS<span class="br0">&#41;</span><span class="br0">&#41;</span>.pack<span class="br0">&#40;</span>pady=<span style="color: #cc66cc;">5</span>, padx=<span style="color: #cc66cc;">5</span>, fill=tk.X<span class="br0">&#41;</span>
ttk.Button<span class="br0">&#40;</span>choice_frame, text=<span style="color: #FF0000;">&quot;BaseBoard&quot;</span>, style=<span style="color: #FF0000;">&quot;Custom.TButton&quot;</span>,
           command=<span style="color: #0000ff;">lambda</span>: display_wmi_data<span class="br0">&#40;</span>BaseBoard<span class="br0">&#41;</span><span class="br0">&#41;</span>.pack<span class="br0">&#40;</span>pady=<span style="color: #cc66cc;">5</span>, padx=<span style="color: #cc66cc;">5</span>, fill=tk.X<span class="br0">&#41;</span>
ttk.Button<span class="br0">&#40;</span>choice_frame, text=<span style="color: #FF0000;">&quot;Processor&quot;</span>, style=<span style="color: #FF0000;">&quot;Custom.TButton&quot;</span>,
           command=<span style="color: #0000ff;">lambda</span>: display_wmi_data<span class="br0">&#40;</span>Processor<span class="br0">&#41;</span><span class="br0">&#41;</span>.pack<span class="br0">&#40;</span>pady=<span style="color: #cc66cc;">5</span>, padx=<span style="color: #cc66cc;">5</span>, fill=tk.X<span class="br0">&#41;</span>
ttk.Button<span class="br0">&#40;</span>choice_frame, text=<span style="color: #FF0000;">&quot;PhysicalMemory&quot;</span>, style=<span style="color: #FF0000;">&quot;Custom.TButton&quot;</span>,
           command=<span style="color: #0000ff;">lambda</span>: display_wmi_data<span class="br0">&#40;</span>PhysicalMemory<span class="br0">&#41;</span><span class="br0">&#41;</span>.pack<span class="br0">&#40;</span>pady=<span style="color: #cc66cc;">5</span>, padx=<span style="color: #cc66cc;">5</span>, fill=tk.X<span class="br0">&#41;</span>
ttk.Button<span class="br0">&#40;</span>choice_frame, text=<span style="color: #FF0000;">&quot;VideoController&quot;</span>, style=<span style="color: #FF0000;">&quot;Custom.TButton&quot;</span>,
           command=<span style="color: #0000ff;">lambda</span>: display_wmi_data<span class="br0">&#40;</span>VideoController<span class="br0">&#41;</span><span class="br0">&#41;</span>.pack<span class="br0">&#40;</span>pady=<span style="color: #cc66cc;">5</span>, padx=<span style="color: #cc66cc;">5</span>, fill=tk.X<span class="br0">&#41;</span>
ttk.Button<span class="br0">&#40;</span>choice_frame, text=<span style="color: #FF0000;">&quot;DiskDrive&quot;</span>, style=<span style="color: #FF0000;">&quot;Custom.TButton&quot;</span>,
           command=<span style="color: #0000ff;">lambda</span>: display_wmi_data<span class="br0">&#40;</span>DiskDrive<span class="br0">&#41;</span><span class="br0">&#41;</span>.pack<span class="br0">&#40;</span>pady=<span style="color: #cc66cc;">5</span>, padx=<span style="color: #cc66cc;">5</span>, fill=tk.X<span class="br0">&#41;</span>
ttk.Button<span class="br0">&#40;</span>choice_frame, text=<span style="color: #FF0000;">&quot;NetworkAdapter&quot;</span>, style=<span style="color: #FF0000;">&quot;Custom.TButton&quot;</span>,
           command=<span style="color: #0000ff;">lambda</span>: display_wmi_data<span class="br0">&#40;</span>NetworkAdapter<span class="br0">&#41;</span><span class="br0">&#41;</span>.pack<span class="br0">&#40;</span>pady=<span style="color: #cc66cc;">5</span>, padx=<span style="color: #cc66cc;">5</span>, fill=tk.X<span class="br0">&#41;</span>
ttk.Button<span class="br0">&#40;</span>choice_frame, text=<span style="color: #FF0000;">&quot;ComputerSystem&quot;</span>, style=<span style="color: #FF0000;">&quot;Custom.TButton&quot;</span>,
           command=<span style="color: #0000ff;">lambda</span>: display_wmi_data<span class="br0">&#40;</span>ComputerSystem<span class="br0">&#41;</span><span class="br0">&#41;</span>.pack<span class="br0">&#40;</span>pady=<span style="color: #cc66cc;">5</span>, padx=<span style="color: #cc66cc;">5</span>, fill=tk.X<span class="br0">&#41;</span>
ttk.Button<span class="br0">&#40;</span>choice_frame, text=<span style="color: #FF0000;">&quot;ProcessInfo&quot;</span>, style=<span style="color: #FF0000;">&quot;Custom.TButton&quot;</span>,
           command=<span style="color: #0000ff;">lambda</span>: display_wmi_data<span class="br0">&#40;</span>ProcessInfo<span class="br0">&#41;</span><span class="br0">&#41;</span>.pack<span class="br0">&#40;</span>pady=<span style="color: #cc66cc;">5</span>, padx=<span style="color: #cc66cc;">5</span>, fill=tk.X<span class="br0">&#41;</span>
ttk.Button<span class="br0">&#40;</span>choice_frame, text=<span style="color: #FF0000;">&quot;BatteryInfo&quot;</span>, style=<span style="color: #FF0000;">&quot;Custom.TButton&quot;</span>,
           command=<span style="color: #0000ff;">lambda</span>: display_wmi_data<span class="br0">&#40;</span>BatteryInfo<span class="br0">&#41;</span><span class="br0">&#41;</span>.pack<span class="br0">&#40;</span>pady=<span style="color: #cc66cc;">5</span>, padx=<span style="color: #cc66cc;">5</span>, fill=tk.X<span class="br0">&#41;</span>
ttk.Button<span class="br0">&#40;</span>choice_frame, text=<span style="color: #FF0000;">&quot;FanInfo&quot;</span>, style=<span style="color: #FF0000;">&quot;Custom.TButton&quot;</span>,
           command=<span style="color: #0000ff;">lambda</span>: display_wmi_data<span class="br0">&#40;</span>FanInfo<span class="br0">&#41;</span><span class="br0">&#41;</span>.pack<span class="br0">&#40;</span>pady=<span style="color: #cc66cc;">5</span>, padx=<span style="color: #cc66cc;">5</span>, fill=tk.X<span class="br0">&#41;</span>
ttk.Button<span class="br0">&#40;</span>choice_frame, text=<span style="color: #FF0000;">&quot;NetworkAdapterConfiguration&quot;</span>, style=<span style="color: #FF0000;">&quot;Custom.TButton&quot;</span>,
           command=<span style="color: #0000ff;">lambda</span>: display_wmi_data<span class="br0">&#40;</span>NetworkAdapterConfiguration<span class="br0">&#41;</span><span class="br0">&#41;</span>.pack<span class="br0">&#40;</span>pady=<span style="color: #cc66cc;">5</span>, padx=<span style="color: #cc66cc;">5</span>, fill=tk.X<span class="br0">&#41;</span>
ttk.Button<span class="br0">&#40;</span>choice_frame, text=<span style="color: #FF0000;">&quot;KeyboardInfo&quot;</span>, style=<span style="color: #FF0000;">&quot;Custom.TButton&quot;</span>,
           command=<span style="color: #0000ff;">lambda</span>: display_wmi_data<span class="br0">&#40;</span>KeyboardInfo<span class="br0">&#41;</span><span class="br0">&#41;</span>.pack<span class="br0">&#40;</span>pady=<span style="color: #cc66cc;">5</span>, padx=<span style="color: #cc66cc;">5</span>, fill=tk.X<span class="br0">&#41;</span>
ttk.Button<span class="br0">&#40;</span>choice_frame, text=<span style="color: #FF0000;">&quot;PrinterInfo&quot;</span>, style=<span style="color: #FF0000;">&quot;Custom.TButton&quot;</span>,
           command=<span style="color: #0000ff;">lambda</span>: display_wmi_data<span class="br0">&#40;</span>PrinterInfo<span class="br0">&#41;</span><span class="br0">&#41;</span>.pack<span class="br0">&#40;</span>pady=<span style="color: #cc66cc;">5</span>, padx=<span style="color: #cc66cc;">5</span>, fill=tk.X<span class="br0">&#41;</span>
ttk.Button<span class="br0">&#40;</span>choice_frame, text=<span style="color: #FF0000;">&quot;PowerManagementEvent&quot;</span>, style=<span style="color: #FF0000;">&quot;Custom.TButton&quot;</span>,
           command=<span style="color: #0000ff;">lambda</span>: display_wmi_data<span class="br0">&#40;</span>PowerManagementEvent<span class="br0">&#41;</span><span class="br0">&#41;</span>.pack<span class="br0">&#40;</span>pady=<span style="color: #cc66cc;">5</span>, padx=<span style="color: #cc66cc;">5</span>, fill=tk.X<span class="br0">&#41;</span>
ttk.Button<span class="br0">&#40;</span>choice_frame, text=<span style="color: #FF0000;">&quot;SoftwareFeature&quot;</span>, style=<span style="color: #FF0000;">&quot;Custom.TButton&quot;</span>,
           command=<span style="color: #0000ff;">lambda</span>: display_wmi_data<span class="br0">&#40;</span>SoftwareFeature<span class="br0">&#41;</span><span class="br0">&#41;</span>.pack<span class="br0">&#40;</span>pady=<span style="color: #cc66cc;">5</span>, padx=<span style="color: #cc66cc;">5</span>, fill=tk.X<span class="br0">&#41;</span>
ttk.Button<span class="br0">&#40;</span>choice_frame, text=<span style="color: #FF0000;">&quot;StartupCommand&quot;</span>, style=<span style="color: #FF0000;">&quot;Custom.TButton&quot;</span>,
           command=<span style="color: #0000ff;">lambda</span>: display_wmi_data<span class="br0">&#40;</span>StartupCommand<span class="br0">&#41;</span><span class="br0">&#41;</span>.pack<span class="br0">&#40;</span>pady=<span style="color: #cc66cc;">5</span>, padx=<span style="color: #cc66cc;">5</span>, fill=tk.X<span class="br0">&#41;</span>
ttk.Button<span class="br0">&#40;</span>choice_frame, text=<span style="color: #FF0000;">&quot;ServiceInfo&quot;</span>, style=<span style="color: #FF0000;">&quot;Custom.TButton&quot;</span>,
           command=<span style="color: #0000ff;">lambda</span>: display_wmi_data<span class="br0">&#40;</span>ServiceInfo<span class="br0">&#41;</span><span class="br0">&#41;</span>.pack<span class="br0">&#40;</span>pady=<span style="color: #cc66cc;">5</span>, padx=<span style="color: #cc66cc;">5</span>, fill=tk.X<span class="br0">&#41;</span>
&nbsp;
<span style="color: #808080;"># Panneau d'affichage des r&eacute;sultats &agrave; droite</span>
result_frame = ttk.Frame<span class="br0">&#40;</span>root, padding=<span style="color: #cc66cc;">10</span><span class="br0">&#41;</span>
result_frame.pack<span class="br0">&#40;</span>side=tk.RIGHT, fill=tk.BOTH, expand=<span style="color: #339933;">True</span><span class="br0">&#41;</span>
&nbsp;
<span style="color: #808080;"># Scrollbar &agrave; droite</span>
scrollbar = ttk.Scrollbar<span class="br0">&#40;</span>result_frame<span class="br0">&#41;</span>
scrollbar.pack<span class="br0">&#40;</span>side=tk.RIGHT, fill=tk.Y<span class="br0">&#41;</span>
&nbsp;
<span style="color: #808080;"># Zone de texte pour les r&eacute;sultats</span>
result_text = tk.Text<span class="br0">&#40;</span>result_frame, wrap=tk.WORD, state=tk.DISABLED, yscrollcommand=scrollbar.set<span class="br0">&#41;</span>
result_text.pack<span class="br0">&#40;</span>side=tk.LEFT, fill=tk.BOTH, expand=<span style="color: #339933;">True</span><span class="br0">&#41;</span>
&nbsp;
<span style="color: #808080;"># Configuration du scrollbar</span>
scrollbar.config<span class="br0">&#40;</span>command=result_text.yview<span class="br0">&#41;</span>
&nbsp;
root.mainloop<span class="br0">&#40;</span><span class="br0">&#41;</span></pre></td></tr></table></code><hr />
</div>Avez-vous des sugestions, améliorations à soummettre ? <br />
Augmenter la source serait un plus :salive:</div>

]]></content:encoded>
			<category domain="https://www.developpez.net/forums/f924/autres-langages/python/deploiement-installation/">Déploiement/Installation</category>
			<dc:creator>Amesamana</dc:creator>
			<guid isPermaLink="true">https://www.developpez.net/forums/d2176301/autres-langages/python/deploiement-installation/requetes-wmi-materiels/</guid>
		</item>
	</channel>
</rss>
