FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC

Développement d'applications avec le langage Panoramic
 
AccueilAccueil  FAQFAQ  RechercherRechercher  S'enregistrerS'enregistrer  MembresMembres  GroupesGroupes  Connexion  
Derniers sujets
» I Love You
par papydall Aujourd'hui à 2:58

» MARK_ON déclenche un événement ON_CLICK à la place de ...
par Jean Claude Hier à 18:08

» mise a jour calculatrice
par joeeee2017 Hier à 15:57

» [solved] 3D_LINE How to ?
par Jicehel Hier à 11:01

» Convertisseur de base 10 de 2 à 36
par gigi75 Mar 17 Oct 2017 - 18:49

» calculatrice avec touches movibles
par joeeee2017 Dim 15 Oct 2017 - 1:11

» CORTANA
par gigi75 Sam 14 Oct 2017 - 16:32

» Calculatrice
par Jean Claude Sam 14 Oct 2017 - 12:30

» Compilateur FBPano
par jean_debord Jeu 12 Oct 2017 - 9:53

» KGF_dll - nouvelles versions
par Klaus Mar 10 Oct 2017 - 18:49

» à propos de Panoramic_Editor [Résolu]
par Klaus Mar 10 Oct 2017 - 3:19

» Un petit "coucou" à tous les Panoramiciens !
par Jack Ven 6 Oct 2017 - 10:24

» Pourquoi le compilateur stagne
par mindstorm Mer 4 Oct 2017 - 20:38

» Panoramic ?
par Marc37 Mer 4 Oct 2017 - 0:39

» Premiers pas avec Arduino
par Marc37 Mer 4 Oct 2017 - 0:29

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Octobre 2017
LunMarMerJeuVenSamDim
      1
2345678
9101112131415
16171819202122
23242526272829
3031     
CalendrierCalendrier

Partagez | 
 

  Détecter le type du PC Portable ou Fixe

Voir le sujet précédent Voir le sujet suivant Aller en bas 
AuteurMessage
papydall

avatar

Nombre de messages : 5546
Age : 67
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

MessageSujet:  Détecter le type du PC Portable ou Fixe   Ven 12 Juin 2015 - 5:28

Voici une SUB CheckTypePC()  utilisant un script VBS pour détecter le type du PC sur lequel on travaille : PC portable ou PC fixe.
Ça peut être utile pour l’installation des certaines applications sur des portables.
Sinon, ça sera un inutilitaire de plus (bon pour la poubelle!)  king

Code:

rem ============================================================================
rem          Détecter le type du PC Portable ou Fixe
rem                    Par Papydall
rem ============================================================================
CheckTypePC()
if TypePC$ = "Notebook"
   message "Ordinateur Portable"
else
   if TypePC$ = "Desktop" then message "Ordinateur Fixe"
end_if
end

rem ============================================================================
' Retourne dans la variable globale TypePC$, le résultat :
' "Notebook" pour un ordinateur portable
' "Desktop"  pour un ordinateur fixe
SUB CheckTypePC()
    dim_local f$,retour$
    if variable("TypePC$") = 0 then DIM TypePC$
    if dir_exists("c:\temp") = 0 then dir_make "c:\temp"
    f$ = "c:\temp\CheckTypePC.vbs" : ' Fichier temporaire contenant le script
    retour$ = "c:\temp\retour.txt" : ' Fichier temporaire contenant le résultat de la fonction
' Enregistrer le script dans le fichier temporaire f$
    FILE_OPEN_WRITE 9999, f$
    file_writeln 9999, "DIM fso,MyFile"  : ' debut du script
    file_writeln 9999, "Set fso = CreateObject("+chr$(34)+"Scripting.FileSystemObject"+chr$(34)+")"
    file_writeln 9999, "set MyFile = fso.CreateTextFile("+chr$(34)+retour$+chr$(34)+", True)"
' la fonction de détection du type de l'ordinateur
    file_writeln 9999, "Function CheckTypePC ()"
    file_writeln 9999, "    On Error Resume Next"
    file_writeln 9999, "    Dim objWMIService,colItems,objItem"
    file_writeln 9999, "    Set objWMIService = GetObject("+CHR$(34)+"winmgmts:\\.\root\cimv2"+CHR$(34)+")"
    file_writeln 9999, "    Set colItems = objWMIService.ExecQuery("+CHR$(34)+"Select DeviceID from Win32_PCMCIAController"+CHR$(34)+",,48)"
    file_writeln 9999, "    For Each objItem in colItems"
    file_writeln 9999, "        If Not (objItem.DeviceID = "+CHR$(34)+""+CHR$(34)+") Then"
    file_writeln 9999, "           CheckTypePC = "+CHR$(34)+"Notebook"+CHR$(34)+""
    file_writeln 9999, "           Exit For"
    file_writeln 9999, "        End If "
    file_writeln 9999, "    Next"
    file_writeln 9999, "    Set colItems = objWMIService.ExecQuery("+CHR$(34)+"Select DeviceID from Win32_PortableBattery"+CHR$(34)+",,48)"
    file_writeln 9999, "    For Each objItem in colItems"
    file_writeln 9999, "        If Not (objItem.DeviceID = "+CHR$(34)+""+CHR$(34)+") Then"
    file_writeln 9999, "           CheckTypePC = "+CHR$(34)+"Notebook"+CHR$(34)+""
    file_writeln 9999, "           Exit For"
    file_writeln 9999, "        End If "
    file_writeln 9999, "    Next"
    file_writeln 9999, "    Set colItems = objWMIService.ExecQuery("+CHR$(34)+"Select DeviceID from Win32_Battery"+CHR$(34)+",,48)"
    file_writeln 9999, "    For Each objItem in colItems"
    file_writeln 9999, "        If Not (objItem.DeviceID = "+CHR$(34)+""+CHR$(34)+") Then"
    file_writeln 9999, "           CheckTypePC = "+CHR$(34)+"Notebook"+CHR$(34)+""
    file_writeln 9999, "           Exit For"
    file_writeln 9999, "        End If "
    file_writeln 9999, "    Next"
    file_writeln 9999, "    If CheckTypePC = "+CHR$(34)+chr$(34)+" Then CheckTypePC = "+CHR$(34)+"Desktop" +chr$(34)
    file_writeln 9999, "    Set objWMIService = Nothing"
    file_writeln 9999, "End Function"
' Enregistrer le retour de la fonction
    file_writeln 9999, "MyFile.WriteLine(CheckTypePC)"
    file_writeln 9999, "MyFile.Close" : ' Fin du script
    
    FILE_CLOSE 9999
    EXECUTE_WAIT f$ : ' Exécution du script
    FILE_DELETE f$  : ' supprimer le fichier du script
    file_open_read 9999,retour$ : ' ouvrir le fichier contenant la sortie du script
    file_readln 9999,TypePC$    : ' Récuperer la valeur de la fonction
    file_close 9999 : file_delete retour$ : ' Supprimer le fichier temporaire
END_SUB
rem ============================================================================
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://papydall-panoramic.forumarabia.com/
Klaus

avatar

Nombre de messages : 10074
Age : 68
Localisation : Ile de France
Date d'inscription : 29/12/2009

MessageSujet: Re:  Détecter le type du PC Portable ou Fixe   Ven 12 Juin 2015 - 9:17

Intéressant, Papydall !
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Jicehel

avatar

Nombre de messages : 5858
Age : 45
Localisation : 77500
Date d'inscription : 19/04/2011

MessageSujet: Re:  Détecter le type du PC Portable ou Fixe   Ven 12 Juin 2015 - 9:24

Encore un outil bien pratique, je vais partir, pas le temsp de tester, mais j'ai regardé le code et ça a l'air très bien.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Jean Claude

avatar

Nombre de messages : 5040
Age : 63
Localisation : 83 Var
Date d'inscription : 07/05/2009

MessageSujet: Re:  Détecter le type du PC Portable ou Fixe   Ven 12 Juin 2015 - 9:42

Effectivement, c'est utile pour un programme d'installation.
Cela ne va pas servir tous les jours, mais c'est à conserver.

A+
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
papydall

avatar

Nombre de messages : 5546
Age : 67
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

MessageSujet: Re:  Détecter le type du PC Portable ou Fixe   Ven 12 Juin 2015 - 15:43

Merci à Klaus, Jicehel, Jean Claude  et à tous ceux qui ont pris la peine de jeter un œil sur le code.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://papydall-panoramic.forumarabia.com/
Contenu sponsorisé




MessageSujet: Re:  Détecter le type du PC Portable ou Fixe   

Revenir en haut Aller en bas
 
 Détecter le type du PC Portable ou Fixe
Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
»  Détecter le type du PC Portable ou Fixe
» cafe renverser sur clavier ordi portable
» Mon PC portable perd de la mémoire
» ordinateur portable qui se bloque
» Transfert Cariboost V2 --> Dreamweaver?

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: PANORAMIC :: Les inutilitaires-
Sauter vers: