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
» PANORAMIC V 1
Volumes montés (suite) Emptypar Marc Aujourd'hui à 19:51

» Gestion d'un système client-serveur.
Volumes montés (suite) Emptypar Klaus Aujourd'hui à 16:52

» Editeur EliP 6 : Le Tiny éditeur avec 25 onglets de travail
Volumes montés (suite) Emptypar Froggy One Aujourd'hui à 11:16

» @Jack
Volumes montés (suite) Emptypar Jack Mar 30 Avr 2024 - 20:40

» trop de fichiers en cours
Volumes montés (suite) Emptypar papydall Lun 29 Avr 2024 - 23:39

» Une calculatrice en une ligne de programme
Volumes montés (suite) Emptypar jean_debord Dim 28 Avr 2024 - 8:47

» Form(résolu)
Volumes montés (suite) Emptypar leclode Sam 27 Avr 2024 - 17:59

» Bataille navale SM
Volumes montés (suite) Emptypar jjn4 Ven 26 Avr 2024 - 17:39

» Les maths du crocodile
Volumes montés (suite) Emptypar jean_debord Jeu 25 Avr 2024 - 10:37

» Naissance de Crocodile Basic
Volumes montés (suite) Emptypar jean_debord Jeu 25 Avr 2024 - 8:45

» Dessine-moi une galaxie
Volumes montés (suite) Emptypar jjn4 Lun 22 Avr 2024 - 13:47

» Erreur END_SUB
Volumes montés (suite) Emptypar jjn4 Lun 22 Avr 2024 - 13:43

» Bug sur DIM_LOCAL ?
Volumes montés (suite) Emptypar papydall Dim 21 Avr 2024 - 23:30

» 2D_fill_color(résolu)
Volumes montés (suite) Emptypar leclode Sam 20 Avr 2024 - 8:32

» Consommation gaz électricité
Volumes montés (suite) Emptypar leclode Mer 17 Avr 2024 - 11:07

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Mai 2024
LunMarMerJeuVenSamDim
  12345
6789101112
13141516171819
20212223242526
2728293031  
CalendrierCalendrier
-29%
Le deal à ne pas rater :
PC portable – MEDION 15,6″ FHD Intel i7 – 16 Go / 512Go (CDAV : ...
499.99 € 699.99 €
Voir le deal

 

 Volumes montés (suite)

Aller en bas 
5 participants
AuteurMessage
JL35




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

Volumes montés (suite) Empty
MessageSujet: Volumes montés (suite)   Volumes montés (suite) EmptyVen 8 Mar 2019 - 10:44

Un tout petit gadget, mais plus simple que ce qui avait été proposé précédemment, pour connaître la liste des volumes montés, avec lettre, nom, taille totale, taille libre.
Le résultat est dans le presse-papier, une ligne par volume, éléments séparés par des ';'
Code:
DriveList()
message clipboard_string_paste$
end

SUB Drivelist()
  ' Liste des volumes montés -> clipboard
  ' 1 ligne par volume: Lettre;Nom;Taille totale;Taille dispo
  DIM_LOCAL mm%,i%,k%,a$,b$,c$,ltr$,typ$,lib$,tot$,nom$
  mm% = 1900
  MEMO mm%: HIDE mm%: WIDTH mm%,600
  EXECUTE_WAIT "cmd.exe|/c wmic logicaldisk list brief | clip"
  CLIPBOARD_PASTE mm%: c$ = ""
  FOR i% = 2 TO COUNT(mm%)
      a$ = RTRIM$(ITEM_READ$(mm%,i%))
      IF LEN(a$) > 12
          ltr$ = LEFT$(a$,2): typ$ = MID$(a$,11,1): b$ = RIGHT_POS$(a$,22)
          k% = INSTR(b$," "): lib$ = LEFT$(b$,k%-1): b$ = RIGHT_POS$(a$,50)
          k% = INSTR(b$," "): tot$ = LEFT$(b$,k%-1): nom$ = RIGHT_POS$(a$,64)
          c$ = c$+ltr$+";"+nom$+";"+tot$+";"+lib$+CHR$(13)+CHR$(10)
      END_IF
  NEXT i%
  CLIPBOARD_STRING_COPY LEFT$(c$,LEN(c$)-2)
  DELETE mm%
END_SUB
Revenir en haut Aller en bas
Marc

Marc


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

Volumes montés (suite) Empty
MessageSujet: Re: Volumes montés (suite)   Volumes montés (suite) EmptyVen 8 Mar 2019 - 11:03

Salut JL35 !

Merci de ton partage.

Il y a un bug chez moi :
Volumes montés (suite) 144

PC utilisé : HP portable avec W10 64bits + SSD

Je pars chercher les enfants au lycée, je ferai plus d'investigations plus tard.

Bonne continuation !
Revenir en haut Aller en bas
silverman

silverman


Nombre de messages : 968
Age : 51
Localisation : Picardie
Date d'inscription : 18/03/2015

Volumes montés (suite) Empty
MessageSujet: Re: Volumes montés (suite)   Volumes montés (suite) EmptyVen 8 Mar 2019 - 12:38

Moi, il me manque des lecteurs No
Appelle cette sub à la fin de la ligne 14 pour le voir:
Code:
sub read_parameters(a$)
 DIM_LOCAL k%,c$,ltr$,typ$,lib$,tot$,nom$
 if a$<>""
    a$=trim$(a$)+" "
    k%=instr(a$," ")
    ltr$ = trim$(LEFT$(a$,k%)) : a$ = ltrim$(right_pos$(a$,k%)) : k% = instr(a$," ")
    typ$ = trim$(LEFT$(a$,k%)) : a$ = ltrim$(right_pos$(a$,k%)) : k% = instr(a$," ")
    lib$ = trim$(LEFT$(a$,k%)) : a$ = ltrim$(right_pos$(a$,k%)) : k% = instr(a$," ")
    tot$ = trim$(LEFT$(a$,k%)) : a$ = ltrim$(right_pos$(a$,k%)) : k% = instr(a$," ")
    nom$ = trim$(LEFT$(a$,k%)) : a$ = ltrim$(right_pos$(a$,k%)) : k% = instr(a$," ")
    c$ = c$+ltr$+";"+nom$+";"+tot$+";"+lib$+CHR$(13)+CHR$(10)
    print c$
 end_if
end_sub
Revenir en haut Aller en bas
papydall

papydall


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

Volumes montés (suite) Empty
MessageSujet: Re: Volumes montés (suite)   Volumes montés (suite) EmptyVen 8 Mar 2019 - 12:52

Chez moi aussi même erreur que Marc.
Modifier la ligne 18 (k%-1) par k%
Code:

k% = INSTR(b$," ") : tot$ = LEFT$(b$,k%-1) : nom$ = RIGHT_POS$(a$,64)
 

Par
Code:

k% = INSTR(b$," ") : tot$ = LEFT$(b$,k%) : nom$ = RIGHT_POS$(a$,64)

L’affichage n’est pas fameux !

Volumes montés (suite) Sans_t10
Revenir en haut Aller en bas
http://papydall-panoramic.forumarabia.com/
papydall

papydall


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

Volumes montés (suite) Empty
MessageSujet: Re: Volumes montés (suite)   Volumes montés (suite) EmptyVen 8 Mar 2019 - 13:00

J’ai posté un code qui donne des informations sur les disques montés sur cette page

Je rappelle le code ici

Code:

rem ============================================================================
rem               Info_Disc
rem ============================================================================
dim i,n

picture 10 : full_space 10 : 2d_target_is 10 : print_target_is 10
font_bold 10 : font_size 10,12 : font_name 10,"arial"
caption 0,"Info_Disc"
for i = asc("A") to asc("Z")
    if disk_exists(chr$(i)) > 0 then n = n + 1 : Info_Disc(chr$(i),n)
next i
end
rem ============================================================================
SUB Info_Disc(d$,i)
    dim_local taille,libre,rapport,g
    g = 1000/power(1024,3)
    taille = int(disk_kilo_size(d$) * g * 1000) : taille = taille/1000
    libre  = int(disk_kilo_free(d$) * g * 1000) : libre  = libre /1000
    rapport = 1-libre/taille
    
    2d_fill_color 255,255,255 : print_locate 20,50+60*(i-1) : print d$ + ":"
    2d_fill_color 200,150,050 : 2d_rectangle 50,50+60*(i-1),450,70+60*(i-1)
    2d_fill_color 050,150,200 : 2d_rectangle 50,50+60*(i-1),450*rapport,70+60*(i-1)
    2d_fill_color 255,255,255 : print_locate 45,80+60*(i-1)
    
    print str$(libre) + " Go libres sur " + str$(taille) + " Go"    
    print_locate 20,20 : print "Informations sur les " + str$(i) + " disques durs montés sur votre système"    
END_SUB
rem ============================================================================


Resultat:
Revenir en haut Aller en bas
http://papydall-panoramic.forumarabia.com/
Marc

Marc


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

Volumes montés (suite) Empty
MessageSujet: Re: Volumes montés (suite)   Volumes montés (suite) EmptyVen 8 Mar 2019 - 14:42

Suite de mes essais :

Sous Windows 7, pas de plantage.

Voici une copie d'écran du résultat :

Volumes montés (suite) 145

Revenir en haut Aller en bas
JL35




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

Volumes montés (suite) Empty
MessageSujet: Re: Volumes montés (suite)   Volumes montés (suite) EmptyVen 8 Mar 2019 - 16:45

Perso je n'ai pas d'erreurs (sous Windows 7), mais au vu de ce que vous montrez, effectivement ça doit beaucoup dépendre de la configuration.
Et je suggère fortement de laisser tomber cette solution et d'adopter celle proposée par le toujours génial papydall qui utilise des instructions Panoramic auxquelles je n'avais même pas pensé ! Embarassed

Donc voir le sujet adjacent de notre ami:
Informations sur les disques durs montés sur votre système
Revenir en haut Aller en bas
silverman

silverman


Nombre de messages : 968
Age : 51
Localisation : Picardie
Date d'inscription : 18/03/2015

Volumes montés (suite) Empty
MessageSujet: Re: Volumes montés (suite)   Volumes montés (suite) EmptyVen 8 Mar 2019 - 17:20

Elle est très bien cette sub, contrairement à 'dir_exists()' elle détecte tous les lecteurs présent!
Et le bug provient d'une valeur négative passé à  'left$()'
Voici une version corrigée:
Code:
DriveList()
message clipboard_string_paste$
end

SUB Drivelist()
  ' Liste des volumes montés -> clipboard
  ' 1 ligne par volume: Lettre;Nom;Taille totale;Taille dispo
  DIM_LOCAL mm%,i%,k%,a$,b$,c$,ltr$,typ$,lib$,tot$,nom$
  mm% = 1900
  MEMO mm%: hide mm%: WIDTH mm%,600
  EXECUTE_WAIT "cmd.exe|/c wmic logicaldisk list brief | clip"
  CLIPBOARD_PASTE mm%: c$ = ""
  FOR i% = 2 TO COUNT(mm%)
      a$ = TRIM$(ITEM_READ$(mm%,i%))
      if a$<>""
         a$=a$+" "
         k%=instr(a$," ")
         ltr$ = trim$(LEFT$(a$,k%)) : a$ = ltrim$(right_pos$(a$,k%)) : k% = instr(a$," ")
         typ$ = trim$(LEFT$(a$,k%)) : a$ = ltrim$(right_pos$(a$,k%)) : k% = instr(a$," ")
         lib$ = trim$(LEFT$(a$,k%)) : a$ = ltrim$(right_pos$(a$,k%)) : k% = instr(a$," ")
         tot$ = trim$(LEFT$(a$,k%)) : a$ = ltrim$(right_pos$(a$,k%)) : k% = instr(a$," ")
         nom$ = trim$(LEFT$(a$,k%)) : a$ = ltrim$(right_pos$(a$,k%)) : k% = instr(a$," ")
'         if nom$<>"" then c$ = c$+ltr$+";"+nom$+";"+tot$+";"+lib$+CHR$(13)+CHR$(10) :' n'afficher que les lecteurs ayant un nom de volume
         c$ = c$+ltr$+";"+nom$+";"+tot$+";"+lib$+CHR$(13)+CHR$(10) :' afficher tous les lecteurs
      end_if
  NEXT i%
  CLIPBOARD_STRING_COPY LEFT$(c$,LEN(c$)-2)
  DELETE mm%
END_SUB
Revenir en haut Aller en bas
jjn4

jjn4


Nombre de messages : 2692
Date d'inscription : 13/09/2009

Volumes montés (suite) Empty
MessageSujet: +++   Volumes montés (suite) EmptyVen 8 Mar 2019 - 18:03

Voilà une bonne astuce pour explorer ses disques !
Bravo !
cheers
Revenir en haut Aller en bas
http://jjn4.e-monsite.com
JL35




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

Volumes montés (suite) Empty
MessageSujet: Re: Volumes montés (suite)   Volumes montés (suite) EmptyVen 8 Mar 2019 - 18:13

Merci silverman, c'est toi le meilleur, je n'avais pas approfondi au vu de la solution de papydall,
mais finalement je préfère ma sub (améliorée par tes soins !).
Revenir en haut Aller en bas
Contenu sponsorisé





Volumes montés (suite) Empty
MessageSujet: Re: Volumes montés (suite)   Volumes montés (suite) Empty

Revenir en haut Aller en bas
 
Volumes montés (suite)
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Numerotation ligne de programme
» Liste des volumes montés et actifs
» Informations sur les disques durs montés sur votre système
» Access violation
» Barre de titre sans les 3 boutons

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: