FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC

Développement d'applications avec le langage Panoramic
 
AccueilAccueil  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  MembresMembres  Connexion  
Derniers sujets
» trop de fichiers en cours
Liste des logiciels installés Emptypar Marc Aujourd'hui à 11:42

» Bataille navale SM
Liste des logiciels installés Emptypar jjn4 Hier à 17:39

» Une calculatrice en une ligne de programme
Liste des logiciels installés Emptypar jean_debord Hier à 8:01

» Gestion d'un système client-serveur.
Liste des logiciels installés Emptypar Pedro Jeu 25 Avr 2024 - 19:31

» Les maths du crocodile
Liste des logiciels installés Emptypar jean_debord Jeu 25 Avr 2024 - 10:37

» Naissance de Crocodile Basic
Liste des logiciels installés Emptypar jean_debord Jeu 25 Avr 2024 - 8:45

» Editeur EliP 6 : Le Tiny éditeur avec 25 onglets de travail
Liste des logiciels installés Emptypar Froggy One Mer 24 Avr 2024 - 18:38

» Dessine-moi une galaxie
Liste des logiciels installés Emptypar jjn4 Lun 22 Avr 2024 - 13:47

» Erreur END_SUB
Liste des logiciels installés Emptypar jjn4 Lun 22 Avr 2024 - 13:43

» Bug sur DIM_LOCAL ?
Liste des logiciels installés Emptypar papydall Dim 21 Avr 2024 - 23:30

» Form
Liste des logiciels installés Emptypar leclode Dim 21 Avr 2024 - 18:09

» 2D_fill_color(résolu)
Liste des logiciels installés Emptypar leclode Sam 20 Avr 2024 - 8:32

» Consommation gaz électricité
Liste des logiciels installés Emptypar leclode Mer 17 Avr 2024 - 11:07

» on_key_down (résolu)
Liste des logiciels installés Emptypar leclode Mar 16 Avr 2024 - 11:01

» Sous-programme(résolu)
Liste des logiciels installés Emptypar jjn4 Jeu 4 Avr 2024 - 14:42

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Avril 2024
LunMarMerJeuVenSamDim
1234567
891011121314
15161718192021
22232425262728
2930     
CalendrierCalendrier
Le Deal du moment :
Réassort du coffret Pokémon 151 ...
Voir le deal

 

 Liste des logiciels installés

Aller en bas 
4 participants
AuteurMessage
JL35




Nombre de messages : 7095
Localisation : 77
Date d'inscription : 29/11/2007

Liste des logiciels installés Empty
MessageSujet: Liste des logiciels installés   Liste des logiciels installés EmptyDim 11 Nov 2018 - 19:53

Liste des logiciels installés sur le PC, récupérée dans le registre avec regedit.exe.
Ça peut servir en cas de réinstallation, ou autre chose.
Les chemins des fichiers temporaires de manoeuvre (ici hébergés dans Z:\) sont à adapter.
Avec un exemple d'appel de la sub:
Code:
DIM q$,s$,fr$,a$,ls%
q$ = CHR$(34)
fr$ = "Z:\Lst64.txt"

ListeProg(64,fr$)

WIDTH 0,400: HEIGHT 0,SCREEN_Y-30: LIST 10: FULL_SPACE 10
s$ = q$+"DisplayName"+q$: ls% = LEN(s$)
FILE_OPEN_READ 1,fr$
  WHILE FILE_EOF(1) = 0
    FILE_READLN 1,a$
    IF LEFT$(a$,ls%) = s$
        ITEM_ADD 10,RIGHT_POS$(a$,15)
    END_IF
  END_WHILE
FILE_CLOSE 1
SORT 10: ' tri alphabétique du résultat  
END
' ==============================================================================
SUB ListeProg(typ%,fr$)
  ' Liste des programmes installés sur le PC -> fr$ (fichier texte .txt)
  ' typ% = 32: système 32 bits, typ% = 64: système 64 bits
  DIM_LOCAL r$,q$,fm$,fs$
  fm$ = "Z:\XY.txt":       ' fichier temporaires, à ajuster
  fs$ = "Z:\Unix2dos.vbs": '     idem
  q$ = CHR$(34)
  IF typ% = 32
    r$ = "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall"
  ELSE
    r$ = "HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall"
  END_IF
  EXECUTE_WAIT "regedit.exe|/E "+fr$+" "+q$+r$+q$
  ' Conversion du résultat format Unix en format Dos
  FILE_OPEN_WRITE 1,fs$
      FILE_WRITELN 1,"Do Until WScript.StdIn.AtEndOfStream"
      FILE_WRITELN 1,"  WScript.StdOut.WriteLine WScript.StdIn.ReadLine"
      FILE_WRITELN 1,"Loop"
  FILE_CLOSE 1
  EXECUTE_WAIT "cmd.exe|/c TYPE "+q$+fr$+q$+" | cscript //NoLogo "+fs$+" >"+q$+fm$+q$
  FILE_DELETE fr$: FILE_COPY fm$,fr$: FILE_DELETE fm$
  FILE_DELETE fs$
END_SUB
' ==============================================================================

Ça peut aussi donner l'idée de faire un peu de ménage...
Revenir en haut Aller en bas
JL35




Nombre de messages : 7095
Localisation : 77
Date d'inscription : 29/11/2007

Liste des logiciels installés Empty
MessageSujet: Re: Liste des logiciels installés   Liste des logiciels installés EmptyLun 12 Nov 2018 - 14:13

Une autre méthode (comme je vois que la précédente a soulevé l'enthousiasme général),
avec Powershell, pour obtenir la liste détaillée des applications avec leurs caractéristiques.
L'inconvénient, c'est que le temps de traitement est beaucoup plus long (plusieurs minutes),
mais bon, on ne le fait pas non plus toutes les 5 minutes.

Il y a avec Powershell la possibilité d'obtenir aussi la liste brute (voir dans la sub), mais c'est bien plus rapide avec regedit (ci-dessus), alors sans intérêt.

Avec un exemple d'appel, et en plus la mesure du temps écoulé...
Là aussi il faut adapter les chemins des fichiers provisoires à sa config.
Code:
DIM f$,t1$,t2$
f$ = "Z:\Liste.txt"
t1$ = TIME$
Listprog(f$)
t2$ = TIME$
Duree(t1$,t2$)
CAPTION 0, "Durée: "+CLIPBOARD_STRING_PASTE$
WIDTH 0,400: HEIGHT 0,SCREEN_Y-30: LIST 10: FULL_SPACE 10
FILE_LOAD 10,f$
END
' ==============================================================================
SUB Listprog(f$)
  ' Liste détaillée des programmes installés sur le PC
  DIM_LOCAL ll%,a$,fm$,fs$,q$
  fm$ = "Z:\XY.txt":       ' fichier temporaires, à ajuster
  fs$ = "Z:\Unix2dos.vbs": '     idem
  q$ = CHR$(34)
  ' ll% = 1: Liste détaillée
  ' ll% = 2: Liste brute  
  ll% = 1
  IF ll% = 1: ' Liste détaillée
    a$ = "Get-WmiObject -Class Win32_Product"
  ELSE: ' uniquement les noms
    a$ = "Get-WmiObject -Class Win32_Product | Select-Object -Property Name"
  END_IF
  EXECUTE_WAIT "Powershell.exe|"+a$+" >"+f$
  ' Conversion du résultat format Unicode en format Dos
  FILE_OPEN_WRITE 1,fs$
      FILE_WRITELN 1,"Do Until WScript.StdIn.AtEndOfStream"
      FILE_WRITELN 1,"  WScript.StdOut.WriteLine WScript.StdIn.ReadLine"
      FILE_WRITELN 1,"Loop"
  FILE_CLOSE 1
  EXECUTE_WAIT "cmd.exe|/c TYPE "+q$+f$+q$+" | cscript //NoLogo "+fs$+" >"+q$+fm$+q$
  FILE_DELETE f$: FILE_COPY fm$,f$: FILE_DELETE fm$
  FILE_DELETE fs$
END_SUB
' ==============================================================================
SUB Duree(t1$,t2$)
' Durée écoulée entre deux heures au format Time$ (HH:MM:SS)
' Résultat dans le clipboard au format HH:MM:SS
DIM_LOCAL d1%,d2%,d%,h%,m%,s%,a$
d1%=3600*VAL(LEFT$(t1$,2))+60*VAL(MID$(t1$,4,2))+VAL(RIGHT$(t1$,2)): ' secondes
d2%=3600*VAL(LEFT$(t2$,2))+60*VAL(MID$(t2$,4,2))+VAL(RIGHT$(t2$,2)): ' secondes
IF d2%<d1% THEN d2% = d2%+86400: ' à cheval sur minuit
d% = d2%-d1%
h% = INT(d%/3600): d% = d%-h%*3600
m% = INT(d%/60): s% = d%-m%*60
a$ = RIGHT$("0"+STR$(h%),2)+":"+RIGHT$("0"+STR$(m%),2)+":"+RIGHT$("0"+STR$(s%),2)
CLIPBOARD_STRING_COPY a$
END_SUB
' ==============================================================================

NB Un autre moyen d'obtenir la liste des logiciels, cette fois-ci avec leur numéro de version, avec la fonction wmic
Par exemple, avec résultat dans le fichier texte f$:
Code:
EXECUTE_WAIT "cmd.exe|/c wmic /output:"+f$+" product get name,version"
mais le temps de traitement est aussi long qu'avec Powershell (plusieurs minutes)
Et attention, le résultat dans le fichier est comme toujours au format unicode, c'est à dire de l'ascii avec un caractère sur deux = 0 machine, et les sauts de ligne = 'h0A' au lieu de '0D0A', il faut donc le convertir au format texte exploitable avant utilisation (voir ci-dessus).
Revenir en haut Aller en bas
Jicehel

Jicehel


Nombre de messages : 5947
Age : 51
Localisation : 77500
Date d'inscription : 18/04/2011

Liste des logiciels installés Empty
MessageSujet: Re: Liste des logiciels installés   Liste des logiciels installés EmptyMer 14 Nov 2018 - 10:02

Non, c'est très intéressant. Comme je ne programme plus, perso je ne commente plus beaucoup vos messages pour ne pas polluer inutilement mais puisque tu n'as eu aucun commentaire je te rassure avec ce petit message. C'est une fonction qui a toute son utilité. Pour toi qui fait pas mal appel à des programmes externes de retouche d'image par exemple, on peut imaginer une vérification de la présence du logiciel (je n'ai pas vu si on avait son chemin dans ce que l'on récupère mais sinon, on peut même imaginer la mise à jour automatique de la variable du chemin... et un message si l'application n'est pas installée, par exemple)
Revenir en haut Aller en bas
Minibug

Minibug


Nombre de messages : 4566
Age : 57
Localisation : Vienne (86)
Date d'inscription : 09/02/2012

Liste des logiciels installés Empty
MessageSujet: Re: Liste des logiciels installés   Liste des logiciels installés EmptyMer 14 Nov 2018 - 17:52

Salut JL35 !

La possibilité est intéressante. J'avoue ne pas avoir testé... Embarassed

Mais comme dit Jicehel pour tester l'installation de certains logiciels cela peut être un plus.
Comme par exemple ressource hacker que l'on utilise de temps à autre avec certains codes.

Il y a aussi la possibilité de tester la présence de certaine version pour les mise à jour.
Enfin bref c'est un outil que l'on utilisera pas tous les jours mais qui un jour servira sûrement ! drunken

Merci JL35 ! cheers
Revenir en haut Aller en bas
http://gpp.panoramic.free.fr
JL35




Nombre de messages : 7095
Localisation : 77
Date d'inscription : 29/11/2007

Liste des logiciels installés Empty
MessageSujet: Re: Liste des logiciels installés   Liste des logiciels installés EmptyMer 14 Nov 2018 - 19:07

C'est sûr que c'est d'une utilisation tout à fait ponctuelle ! un peu un exercice de style, mais ça peut servir occasionnellement.
Revenir en haut Aller en bas
Navigateur

Navigateur


Nombre de messages : 42
Age : 75
Localisation : Les Clayes-sous-bois 78340
Date d'inscription : 02/09/2016

Liste des logiciels installés Empty
MessageSujet: Modifications   Liste des logiciels installés EmptyJeu 15 Nov 2018 - 10:36

Bonjour JL35,

Pour que le dernier programme marche pour moi (win10), j'ai dû utiliser mon répertoire utilisateur où j'ai les droits en écriture soit :
 C:\Users\Mon_Compte\Liste.txt
 C:\Users\Mon_Compte\XY.txt
 C:\Users\Mon_Compte\Unix2dos.vbs

Comme je suis en format H:MM:SS AM (ou PM), j'ai aussi modifié le sous-programme "Duree" qui devrait fonctionner aussi pour le format HH:MM:SS (pas testé) :

Code:
SUB Duree(t1$,t2$)
' Durée écoulée entre deux heures au format Time$ (HH:MM:SS)
' Résultat dans le clipboard au format HH:MM:SS
DIM_LOCAL d1%,d2%,d%,h%,m%,s%,a$
if MID$(t1$,2,1) =":" then t1$ = "0" + t1$ : 'Test du format H:MM:SS
d1%=3600*VAL(LEFT$(t1$,2))+60*VAL(MID$(t1$,4,2))+VAL(MID$(t1$,7,2)): ' secondes
if MID$(t2$,2,1) =":" then t2$ = "0" + t2$ : 'Test du format H:MM:SS
d2%=3600*VAL(LEFT$(t2$,2))+60*VAL(MID$(t2$,4,2))+VAL(MID$(t2$,7,2)): ' secondes
IF d2%<d1% THEN d2% = d2%+86400: ' à cheval sur minuit
d% = d2%-d1%
h% = INT(d%/3600): d% = d%-h%*3600
m% = INT(d%/60): s% = d%-m%*60
a$ = RIGHT$("0"+STR$(h%),2)+":"+RIGHT$("0"+STR$(m%),2)+":"+RIGHT$("0"+STR$(s%),2)
CLIPBOARD_STRING_COPY a$
END_SUB

Navigateur
Revenir en haut Aller en bas
JL35




Nombre de messages : 7095
Localisation : 77
Date d'inscription : 29/11/2007

Liste des logiciels installés Empty
MessageSujet: Re: Liste des logiciels installés   Liste des logiciels installés EmptyJeu 15 Nov 2018 - 18:03

Merci Navigateur pour l'info, ça peut servir à certains (perso je suis toujours sous W7...)
Quant à la sub Duree, c'est un peu un gadget pour avoir une idée de la durée, mais autant que ça marche !
Revenir en haut Aller en bas
Contenu sponsorisé





Liste des logiciels installés Empty
MessageSujet: Re: Liste des logiciels installés   Liste des logiciels installés Empty

Revenir en haut Aller en bas
 
Liste des logiciels installés
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Outil de distribution protégée de logiciels
» Petite discussion sur les logiciels de création de jeux.
» liste
» Ma liste de noël
» Liste d'une discussion.

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: PANORAMIC :: Vos sources, vos utilitaires à partager-
Sauter vers: