Salut, Je cherche un code listant la totalité des périphériques du poste en cours sous Windows. En effet, le wlanguage propose plusieurs fonctions pour lister certains périphériques comme les imprimantes ou les CD mais pas tous les périphériques. Donc un code en .net , wmi ou API Windows est le bienvenue. Merci d'avance de votre aide.
Salut Après une recherche sur google voici c'est ce que j'ai trouvé Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!
Voici quelques classes utilises Classe Win32_BaseBoard Propriétés Product SerialNumber Manufacturer Model PartNumber Caption Name Version Classe Win32_ComputerSystem Propriétés Description Manufacturer Model NumberOfLogicalProcessors NumberOfProcessors TotalPhysicalMemory UserName Classe Win32_Keyboard Propriétés Caption Description DeviceID NumberOfFunctionKeys Classe Win32_VideoController Propriétés AdapterCompatibility AdapterDACType AdapterRAM Caption VideoModeDescription VideoProcessor Description DriverDate DriverVersion MaxRefreshRate MinRefreshRate Classe Win32_BIOS Propriétés name version BiosVersion Manufacturer SMBIOSBIOSVersion SMBIOSMajorVersion SMBIOSMinorVersion Classe Win32_DesktopMonitor Propriétés DeviceID ScreenHeight ScreenWidth Availability
Salut, Un petit exemple d’utilisation des classes WMI, ici avec Win32_PnPEntity : Code (Text): autLocator est un objet Automation "WbemScripting.SWbemLocator" pautService est un objet Automation dynamique pautResult est un objet Automation dynamique nPosListe est un entier sValeur1, sValeur2, sValeur3, sValeur4 sont des chaînes QUAND EXCEPTION DANS pautService = autLocator>>ConnectServer(".", "\root\cimv2") pautService>>Security_>>ImpersonationLevel = 3 //pautResult = pautService>>ExecQuery("SELECT * FROM Win32_PnPEntity") pautResult = pautService>>ExecQuery("SELECT Name,Manufacturer,Service,DeviceID FROM Win32_PnPEntity") POUR nPosListe = 0 _À_ pautResult>>Count -1 sValeur1 = ""; sValeur2 = ""; sValeur3 = ""; sValeur4 = "" sValeur1 = pautResult>>ItemIndex(nPosListe)>>Properties_>>Item("Name")>>Value sValeur2 = pautResult>>ItemIndex(nPosListe)>>Properties_>>Item("Manufacturer")>>Value sValeur3 = pautResult>>ItemIndex(nPosListe)>>Properties_>>Item("Service")>>Value sValeur4 = pautResult>>ItemIndex(nPosListe)>>Properties_>>Item("DeviceID")>>Value TableAjouteLigne(TABLE_SansNom1, sValeur1, sValeur2, sValeur3, sValeur4) FIN FAIRE Erreur("Erreur WMI : " + ExceptionInfo()) FIN mais vous pouvez l’utiliser avec l’une des classes et propriétés du post précédant. Les autres propriétés de Win32_PnPEntity : Code (Text): // uint16 Availability; // string Caption; // string ClassGuid; // string CompatibleID[]; // uint32 ConfigManagerErrorCode; // boolean ConfigManagerUserConfig; // string CreationClassName; // string Description; // string DeviceID; // boolean ErrorCleared; // string ErrorDescription; // string HardwareID[]; // datetime InstallDate; // uint32 LastErrorCode; // string Manufacturer; // string Name; // string PNPClass; // string PNPDeviceID; // uint16 PowerManagementCapabilities[]; // boolean PowerManagementSupported; // boolean Present; // string Service; // string Status; // uint16 StatusInfo; // string SystemCreationClassName; // string SystemName; A+.
Bonjour tu peut chercher d'utiliser la fonction Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens! Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens! exemple: Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!
Merci a tous pour les réponses. Je n'arrivait pas a trouver Win32_PnPEntity. Parfois le site msdn n'est pas clair. Je vais aussi voir les API proposé par Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens! . A mettre en résolu.
Avec la commande powershell Get-PnpDevice je reçois la même résultats du code proposé par Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens! avec WMI reste a tester sur d'autre OS (je suis sur W10)
Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens! Hors-sujet : Ce sont là de bonne idées de recherche qui peuvent motiver plusieurs personnes ici présentes. Toutefois, je vois que cela vire vers la résolution d'un problème technique personnel. Tu va me dire que OUI. Je suis d'accord mais te sachant altruiste, pas moyen de me convaincre que tu es du genre selfish. Cette discussion reste ouverte quoique tu en est l'initiateur pour faire profiter tout le monde. Si tu n'a pas le temps ou l'envie de fournir du concret pour la communauté. (Présenter un exemple comme tu as déjà fait superbement) je me charge de compiler un exemple qui pourra regrouper l'ensemble des exemples donnés par les membres ici présent. On est une communauté tant soit peu. Un exemple, une synthèse ou autre qui pourra faire office de point de départ pour les autres est toujours fort apprécié. Bon Dev à tous.
Salut Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens! , Je suis d’accord avec toi , le problème c'est que souvent cela est considéré comme du hors sujet et supprimé . Car personnellement, j’étais entrain de travailler sur l'exemple WD WMI et je me suis aperçu qu'il était incomplet. Du Coup , j’essaie de étoffé. Mais vu que les exemples fournis répondent a mon titre , il faudrait soit changer le titre a tout WMI soit le mettre en résolu. Pour éviter le hors sujet , j'ai proposer Résolu.