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
» Logiciel de planétarium.
deux petites subs Emptypar Pedro Sam 23 Nov 2024 - 15:50

» Un autre pense-bête...
deux petites subs Emptypar Froggy One Jeu 21 Nov 2024 - 15:54

» Récupération du contenu d'une page html.
deux petites subs Emptypar Pedro Sam 16 Nov 2024 - 14:04

» Décompilation
deux petites subs Emptypar JL35 Mar 12 Nov 2024 - 19:57

» Un album photos comme du temps des grands-mères
deux petites subs Emptypar jjn4 Mar 12 Nov 2024 - 17:23

» traitement d'une feuille excel
deux petites subs Emptypar jjn4 Jeu 7 Nov 2024 - 3:52

» Aide-mémoire mensuel
deux petites subs Emptypar jjn4 Lun 4 Nov 2024 - 18:56

» Des incomprèhension avec Timer
deux petites subs Emptypar Klaus Mer 30 Oct 2024 - 18:26

» KGF_dll - nouvelles versions
deux petites subs Emptypar Klaus Mar 29 Oct 2024 - 17:58

» instructions panoramic
deux petites subs Emptypar maelilou Lun 28 Oct 2024 - 19:51

» Figures fractales
deux petites subs Emptypar Marc Ven 25 Oct 2024 - 12:18

» Panoramic et Scanette
deux petites subs Emptypar Yannick Mer 25 Sep 2024 - 22:16

» Editeur d étiquette avec QR évolutif
deux petites subs Emptypar JL35 Lun 23 Sep 2024 - 22:40

» BUG QR Code DelphiZXingQRCode
deux petites subs Emptypar Yannick Dim 22 Sep 2024 - 11:40

» fichier.exe
deux petites subs Emptypar leclode Ven 20 Sep 2024 - 19:02

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Novembre 2024
LunMarMerJeuVenSamDim
    123
45678910
11121314151617
18192021222324
252627282930 
CalendrierCalendrier
-55%
Le deal à ne pas rater :
Friteuse sans huile – PHILIPS – Airfryer HD9200/90 Série 3000
49.99 € 109.99 €
Voir le deal

 

 deux petites subs

Aller en bas 
4 participants
AuteurMessage
JL35




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

deux petites subs Empty
MessageSujet: deux petites subs   deux petites subs EmptyDim 5 Fév 2017 - 15:28

Deux petites subs du dimanche, histoire de causer...
Peut-être pas d'un intérêt puissant, mais ce sont des fonctions dont j'ai eu besoin dans un programme.

1) Liste des programmes d'application lancés au démarrage (liste renvoyée dans le presse-papier):
Code:
SUB Demarrage()
  ' Liste des programmes lancés au démarrage -> clipboard
  DIM_LOCAL r$
  EXECUTE_WAIT "cmd.exe /c hostname | clip"
  r$ = TRIM$(CLIPBOARD_STRING_PASTE$): ' nom de l'ordinateur: PC-xxx ou xxx-PC
  IF INSTR(r$,"-PC") >0 THEN r$ = LEFT$(r$,LEN(r$)-3)
  IF INSTR(r$,"PC-") >0 THEN r$ = RIGHT_POS$(r$,4)
  r$ = "C:\Users\"+r$+"\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\"
  EXECUTE_WAIT "cmd.exe /c DIR /B "+CHR$(34)+r$+CHR$(34)+"*.* | clip"
END_SUB

2) Trouver le répertoire de téléchargement de Firefox (ça doit pouvoir se faire pour les autres navigateurs, mais je ne peux pas tester...). Pareil, donnée renvoyée dans le presse-papier.
Code:
SUB Rep_Telechar()
' Chemin de téléchargement défini dans Firefox, rendu dans le clipboard
DIM_LOCAL r$,sq$,f$,a$,rd$,k%
EXECUTE_WAIT "cmd.exe /c hostname | clip"
a$ = TRIM$(CLIPBOARD_STRING_PASTE$): ' nom de l'ordinateur: PC-xxx ou xxx-PC
IF INSTR(a$,"-PC") >0 THEN a$ = LEFT$(a$,LEN(a$)-3)
IF INSTR(a$,"PC-") >0 THEN a$ = RIGHT_POS$(a$,4)
r$ = "C:\Users\"+a$+"\AppData\Roaming\Mozilla\Firefox\Profiles\"
IF DIR_EXISTS(r$) = 0 THEN CLIPBOARD_STRING_COPY "": EXIT_SUB
sq$ = "browser.download.dir": ' séquence cherchée
EXECUTE_WAIT "cmd.exe /c DIR /B /A:D "+r$+"bu* | clip"
r$ = r$+TRIM$(CLIPBOARD_STRING_PASTE$)+"": f$ = r$+"prefs.js": rd$ = ""
FILE_OPEN_READ 1,f$
    WHILE FILE_EOF(1) = 0
        FILE_READLN 1,a$: k% = INSTR(a$,sq$)
        IF k%>0
            a$ = RIGHT_POS$(a$,k%+LEN(sq$)+4): k% = INSTR(a$,CHR$(34))
            rd$ = LEFT$(a$,k%-1)+"": k% = INSTR(rd$,"")
            IF k%>0 THEN rd$ = LEFT$(rd$,k%)+RIGHT_POS$(rd$,k%+2)
            EXIT_WHILE
        END_IF
    END_WHILE
FILE_CLOSE 1
CLIPBOARD_STRING_COPY rd$
END_SUB

Remarque: pour ces deux subs j'ai eu besoin de connaître le nom du pc, pour définir le répertoire:
C:\Users\[Nom]\AppData... etc ...
J'ai fait ça de manière un peu empirique avec la commande hostname mais est-ce que ça marche dans tous les cas ?

Et je vous rassure tout de suite: même si vous ne réagissez pas, je reste ! Very Happy

EDIT:
Suite aux fantaisies du forum qui prend des libertés avec le contenu des balises code /code en faisant sauter des antislash, je précise que les lignes ci-dessous 'r$ = ...' doivent comporter des antislash (\) après C:\Users\
et à la fin après Startup\ pour la première et après Profiles\ pour la deuxième.


Dernière édition par JL35 le Dim 5 Fév 2017 - 19:47, édité 4 fois
Revenir en haut Aller en bas
Yannick




Nombre de messages : 8635
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

deux petites subs Empty
MessageSujet: re   deux petites subs EmptyDim 5 Fév 2017 - 16:04

Je vais réagir, l' humeur étant à la désertion...on ne sait jamais...
Je vais même sur-réagir en te disant que je vais les mettre sur le site à la prochaine mise à jour.
lol!
Bon, toutes plaisanteries mises à part, c' est intéressant de savoir comment récupérer des infos de nos machines. 
Même si je l' avoue  Embarassed, mon "travail" du moment ne m' en donne pas l' utilité tout de suite.
Revenir en haut Aller en bas
Marc

Marc


Nombre de messages : 2466
Age : 63
Localisation : TOURS (37)
Date d'inscription : 17/03/2014

deux petites subs Empty
MessageSujet: Re: deux petites subs   deux petites subs EmptyDim 5 Fév 2017 - 16:05

Merci JL35 pour tes deux SUBs dominicales.  cheers

Chez moi, sous W10 64 bits, j’ai dû ajouter un antislash à la fin de de la ligne :

r$ = "C:\Users"+r$+"\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\"

Quant à la deuxième SUB, je n’ai pas testé, j’utilise Chrome.

Bonne fin de journée !
Revenir en haut Aller en bas
Klaus

Klaus


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

deux petites subs Empty
MessageSujet: Re: deux petites subs   deux petites subs EmptyDim 5 Fév 2017 - 17:43

C'est bien de faire ces choses en Panoramic pur, quoiqu'avec le concours de CMD.

Pour les utilisateurs de KGF.dll, il y a la fonction:
Code:
res%= dll_call2("GetWindowsFolderPath",code%,adr(path$))
avec code étant une des valeurs suivantes:
Citation :
0 = Dossier Virtuel représentant le Bureau
1 = Dossier Virtuel Internet
2 = Dossier Programmes du Menu Démarrer
3 = Dossier Virtuel contenant les icônes des applications du Panneau de Contrôle
4 = Dossier Virtuel contenant les Imprimantes Installées
5 = Dossier Mes Documents
6 = Dossier Favoris
7 = Dossier Démarrage dans le dossier Programmes du Menu Démarrer
8 = Dossier Récent
9 = Dossier SendTo
10 = Dossier Virtuel contenant les fichiers de la Corbeille
11 = Dossier Menu Démarrer
12 = Dossier Virtuel contenant les fichiers du dossier Mes Documents
13 = Dossier Mes Musiques
14 = Dossier Mes Vidéos
16 = Dossier physique contenant les objets du Bureau
17 = Dossier Virtuel My Computer
18 = Dossier Virtuel Voisinage réseau
19 = Dossier physique Nethood
20 = Dossier Fonts
21 = Dossier ShellNew
22 = Dossier Menu Démarrer pour All Users
23 = Dossier Programmes dans le menu Démarrer pour All Users
24 = Dossier Démarrage dans le dossier Programmes du Menu Démarrer pour All Users
25 = Dossier Physiques du Bureau pour All Users
26 = Dossier Application Data
27 = Dossier PrintHood
28 = Dossier Application Data dans Local Settings pour le Current User
29 = NT Only
30 = NT Only
31 = Dossier Favoris pour All Users
32 = Dossier Temporary Internet Files
33 = Dossier Cookies
34 = Dossier Historiques
35 = Dossier Physique Application Data pour All users
36 = Répertoire windows
37 = Répertoire System 32 de Windows
38 = Dossier Program Files
39 = Dossier physique de My Pictures pour Current Users
40 = Dossier Physique du Current Users
41 = x86 system directory on RISC systems
42 = x86 Program Files folder on RISC systems
43 = Dossier Common files de Program Files
44 = x86 Program Files Common folder on RISC systems
45 = Dossier Physique ShellNew pour AllUsers
46 = Dossier Physique Documents pour AllUsers
47 = Dossier Physique pour l'administrative tools
48 = Dossier Start MenuPrograms Administrative Tools
49 = Dossier Virtuel contenant les connections réseaux et dial-up
53 = Dossier physique My Music pour AllUsers
54 = Dossier physique My Pictures pour AllUsers
55 = Dossier physique My Video pour AllUsers
56 = Dossier physique Ressources de Windows
57 = Dossier physique Ressources Localisées de Windows
58 =
59 = Dossier CD Burning de Windows
60 = Dossier Virtuel Work Group NetWork
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
JL35




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

deux petites subs Empty
MessageSujet: Re: deux petites subs   deux petites subs EmptyDim 5 Fév 2017 - 17:45

Merci Marc pour ton retour !
En ce qui concerne l'antislash manquant, ça ne dépend pas du système d'exploitation mais d'une étourderie de ma part (ou alors c'est  le forum qui me l'a encore bouffé), donc je vais corriger ci-dessus.
C'est fait !
Et effectivement, vérification faite, l'antislash avait bien été escamoté par le forum !!!

@Klaus,
CMD est une ressource interne, présente sur toutes les machines, donc il n'y a rien à adjoindre au programme qui utilise les subs.
Revenir en haut Aller en bas
Klaus

Klaus


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

deux petites subs Empty
MessageSujet: Re: deux petites subs   deux petites subs EmptyDim 5 Fév 2017 - 17:55

Citation :
CMD est une ressource interne, présente sur toutes les machines
Certes ! Je le sais bien ! Papydall aussi publie souvent des astuces pour récupérer des informations diverses, via CMD ou ou le script de Windows. C'est parfaitement valable. Je voulais juste montrer que, pour ceux qui de toutes façons utilisent KGF.dll, il y a une multitude de dossiers utilisables...
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
JL35




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

deux petites subs Empty
MessageSujet: Re: deux petites subs   deux petites subs EmptyDim 5 Fév 2017 - 17:58

Certes Klaus, je ne conteste pas que les fonctions de KGF.dll sont très puissantes, et incontournables dans certains cas, et je les utilise volontiers... quand je ne peux pas faire autrement !
Par exemple j'utilise régulièrement les fonctions d'impression, entre autres.

Je viens de corriger là_haut, il manquait un autre antislash dans la ligne, après 'Users', escamoté également par le forum.
Agaçant ce truc...

ET EN CORRIGEANT CELUI-CI, L'AUTRE A REDISPARU !!! Twisted Evil j'y retourne
Revenir en haut Aller en bas
Klaus

Klaus


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

deux petites subs Empty
MessageSujet: Re: deux petites subs   deux petites subs EmptyDim 5 Fév 2017 - 19:25

Essaie de mettre un espace après le dernier antislash, avant de fermer la chaîne de caractères...
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
JL35




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

deux petites subs Empty
MessageSujet: Re: deux petites subs   deux petites subs EmptyDim 5 Fév 2017 - 19:33

Ça semble effectivement se produire quand un antislash est suivi d'un caractère quote.
Là tout est en ordre, après quelques avatars.

Mais si comme tu le suggères je mets un espace entre les deux, ma chaîne n'est plus correcte ! C'est un path, et si on met un nom de fichier derrière ça ne marchera pas.

De toute façon, je trouve ça incompréhensible que le contenu des balises code /code soit analysé (et éventuellement modifié comme ici) d'une façon ou d'une autre par le forum.
Je ne sais pas ce qu'on peut y faire, ça déjà été signalé un millier de fois, et... rien. Ce n'est sans doute pas du ressort de Jack, mais il doit bien y avoir moyen de remonter ça.

Et j'aurais dû y penser, dans la sub du dessous c'est pareil, il manque deux antislash !!!
J'enrage !!!
Revenir en haut Aller en bas
Yannick




Nombre de messages : 8635
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

deux petites subs Empty
MessageSujet: re   deux petites subs EmptyDim 5 Fév 2017 - 19:50

Pour moi, tout est bon à prendre. Wink
Certes, KGF le fait mais lorsque l' on a besoin que d' une fonction il est agréable de pouvoir alléger le dossier.
Revenir en haut Aller en bas
Klaus

Klaus


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

deux petites subs Empty
MessageSujet: Re: deux petites subs   deux petites subs EmptyDim 5 Fév 2017 - 20:00

Citation :

De toute façon, je trouve ça incompréhensible que le contenu des balises code /code soit analysé (et éventuellement modifié comme ici) d'une façon ou d'une autre par le forum.
Entièrement d'accord. C'est une véritable plaie. Mais il y a un autre moyen de s'en sortir: remplace l'antislash en fin de chaîne de caractères par un
Code:
...+chr$(92)
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
JL35




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

deux petites subs Empty
MessageSujet: Re: deux petites subs   deux petites subs EmptyDim 5 Fév 2017 - 20:59

Bien sûr c'est une solution efficace, et je l'ai déjà utilisée, mais ça veut dire qu'il faudrait y penser d'avance en déposant le programme.
Et si on n'y pense pas, quelqu'un va essayer, ça ne marche pas, il laisse tomber, c'est compréhensible.

Et je ne suis pas sûr que ce soit la seule configuration qui est interprétée à tort par le forum.
Revenir en haut Aller en bas
JL35




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

deux petites subs Empty
MessageSujet: Re: deux petites subs   deux petites subs EmptyLun 6 Fév 2017 - 22:21

Nouvelle version de la sub Demarrage (liste des programmes lancés au démarrage de Windows):
Code:
SUB Demarrage()
  ' Liste des programmes lancés au démarrage -> clipboard
  DIM_LOCAL r$
  r$ = "%USERPROFILE%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\"
  EXECUTE_WAIT "cmd.exe /c DIR /B "+CHR$(34)+r$+CHR$(34)+"*.* | clip"
END_SUB
C'est plus simple, avec le mot-clé %USERPROFILE% plus la peine de récupérer le nom de l'ordinateur.

Je n'ose pas aller rectifier là-haut, de peur de perturber les anti-slash...
Revenir en haut Aller en bas
Contenu sponsorisé





deux petites subs Empty
MessageSujet: Re: deux petites subs   deux petites subs Empty

Revenir en haut Aller en bas
 
deux petites subs
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Petites subs avec les dates
» Deux petites requêtes: DATA/READ/RESTORE et 2D_xx
» Domotique et électronique : deux SUBs pour Arduino NANO/UNO
» Domotique et électronique : deux SUBs pour Arduino MEGA 2560
» Des SUBs en VBS

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: