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
» Bataille navale SM
Utilitaire de suppression de fichiers Emptypar jjn4 Aujourd'hui à 17:39

» Une calculatrice en une ligne de programme
Utilitaire de suppression de fichiers Emptypar jean_debord Aujourd'hui à 8:01

» Gestion d'un système client-serveur.
Utilitaire de suppression de fichiers Emptypar Pedro Hier à 19:31

» Les maths du crocodile
Utilitaire de suppression de fichiers Emptypar jean_debord Hier à 10:37

» Naissance de Crocodile Basic
Utilitaire de suppression de fichiers Emptypar jean_debord Hier à 8:45

» Editeur EliP 6 : Le Tiny éditeur avec 25 onglets de travail
Utilitaire de suppression de fichiers Emptypar Froggy One Mer 24 Avr 2024 - 18:38

» Dessine-moi une galaxie
Utilitaire de suppression de fichiers Emptypar jjn4 Lun 22 Avr 2024 - 13:47

» Erreur END_SUB
Utilitaire de suppression de fichiers Emptypar jjn4 Lun 22 Avr 2024 - 13:43

» Bug sur DIM_LOCAL ?
Utilitaire de suppression de fichiers Emptypar papydall Dim 21 Avr 2024 - 23:30

» Form
Utilitaire de suppression de fichiers Emptypar leclode Dim 21 Avr 2024 - 18:09

» trop de fichiers en cours
Utilitaire de suppression de fichiers Emptypar Marc Dim 21 Avr 2024 - 2:41

» 2D_fill_color(résolu)
Utilitaire de suppression de fichiers Emptypar leclode Sam 20 Avr 2024 - 8:32

» Consommation gaz électricité
Utilitaire de suppression de fichiers Emptypar leclode Mer 17 Avr 2024 - 11:07

» on_key_down (résolu)
Utilitaire de suppression de fichiers Emptypar leclode Mar 16 Avr 2024 - 11:01

» Sous-programme(résolu)
Utilitaire de suppression de fichiers 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 à ne pas rater :
Cdiscount : -30€ dès 300€ d’achat sur une sélection Apple
Voir le deal

 

 Utilitaire de suppression de fichiers

Aller en bas 
3 participants
AuteurMessage
Jean Claude

Jean Claude


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

Utilitaire de suppression de fichiers Empty
MessageSujet: Utilitaire de suppression de fichiers   Utilitaire de suppression de fichiers EmptyVen 23 Juin 2017 - 13:00

Bonjour à tous,

Je vous propose un petit utilitaire que j'ai fait spécialement pour moi.
Le but initial était de supprimer tous le fichiers *.bak d'un dossier "mes prog Panoramic" (c'est un exemple) d'une manière assez rapide.
Ensuite cela m'a permis de me familiariser avec les mots-clés FILE_... , DIR_... et aussi de poster une belle boulette hier sur ce forum.  Razz
Je vous le présente dans une version volontairement limitée à 2 extensions de fichiers, *.bak et *.txt , ceci pour éviter des catastrophes.

Si l'un d'entre vous trouve une solution pour que le programme n'affiche pas les dossiers système et les fichiers cachés, je suis preneur.

Avant de copier le code ci-dessous et de le lancer lisez ceci:

AVERTISSEMENT: l'utilisation de cet utilitaire suppose que l'utilisateur sait ce qu'il fait et qu'il sache ce qu'est une extension de fichier.
Je décline toute responsabilité, sur les pertes de fichiers qui pourraient résulter d'actions inappropriées de l'utilisateur.
Un conseil: lisez l'aide contenu dans cet utilitaire.

Code:
' Utilitaire de Suppression des fichiers *.bak d'un dossier pa Jean Claude juin/2017
' SupBak.bas
dir_change dir_current$ : error_french
dim_label_general() : Objets() : menu()

 a$="AVERTISSEMENT: l'utilisation de cet utilitaire suppose que l'utilisateur sait ce qu'il fait et qu'il sache ce qu'est une extension de fichier."
 a$=a$+chr$(13)+"L'auteur de cet utilitaire décline toute responsabilité, sur les pertes de fichiers qui pourraient résulter d'actions inappropriées de l'utilisateur."
 a$=a$+chr$(13)+chr$(13)+"Un conseil: lisez l'aide de cet utilitaire."
 message a$

' à faire: choix d'une extention personnalisée

END
rem ============================================================================
Go:
 inactive MGo%
 if Extension$="" then return
 a$="Vous avez choisi l'extension ''"+Extension$+"''"
 a$=a$+chr$(13)+"ATTENTION: les actions de suppression de fichiers que vous pourriez décider,"
 a$=a$+chr$(13)+"relèvent de votre responsabilité."
 a$=a$+chr$(13)+chr$(13)+"Soyez vigilant !"
 a$=a$+chr$(13)+chr$(13)+"Si vous avez un doute ne cliquez pas sur le bouton ''OK'' de ce message, sortez par sa croix rouge."
 if message_warning_ok(a$)=1
    active list1% : Rep$="C:\":DIR_CHANGE Rep$ : afi_rep(list1%)
    NewRep$=Rep$
 else
    message "Votre sagesse est écoutée. Le programme va fermer" : terminate
 end_if  
RETURN

Aide:
 a$="RAPPEL :  l'utilisation de cet utilitaire suppose que l'utilisateur sait ce qu'il fait et qu'il sache ce qu'est une extension de fichier."
 a$=a$+chr$(13)+"L'auteur de cet utilitaire décline toute responsabilité, sur les pertes de fichiers qui pourraient résulter d'actions inappropriées de l'utilisateur."
 a$=a$+chr$(13)+chr$(13)+"Pour commencer :  vous devez choisir l'extension, des fichiers que vous souhaitez supprimer, par le menu ''Extension''."
 a$=a$+chr$(13)+"Ensuite, cliquez sur ''GO'' dans le menu, lisez et validez le message d'avertissement."
 a$=a$+chr$(13)+chr$(13)+"Dans la colonne de gauche s'affiche tous les dossiers du répertoire sélectionné précédemment  (Remarque: le logiciel commence, à la racine, par le dossier ''C:'')."
 a$=a$+chr$(13)+"Dans la colonne de droite s'affichent tous les fichiers contenus dans le dossier sélectionné, ils correspondent à l'extension que vous avez choisie. (Remarque: le bouton ''supprimer'' devient actif)."
 a$=a$+chr$(13)+"Dans le bandeau de la fenetre s'affiche le chemin complet du dernier dossier sélectionné."
 a$=a$+chr$(13)+chr$(13)+"À ce stade vous pouvez choisir de faire des suppressions dans la liste de droite OU de cliquer sur un nouveau dossier dans la liste de gauche."
 a$=a$+chr$(13)+chr$(13)+"SUPPRESSION 1) :  un premier message vous demande si vous souhaitez supprimer des fichiers de la liste (Remarque: si vous répondez non, le logiciel est réinitialisé)."
 a$=a$+chr$(13)+chr$(13)+"SUPPRESSION 2) :  vous avez la possibilité de ne supprimer qu'une partie des fichiers affichés dans la liste de droite. Il suffit de répondre OUI ou NON à la question."
 a$=a$+chr$(13)+chr$(13)+"SUPPRESSION 2) (suite) :  pour chaque fichier la question de la suppression est posée. Ils disparaissent de la liste même SI VOUS AVEZ RÉPONDU NON, ne soyez pas inquiet, le nom du fichier n'est plus dans la liste mais il est toujours dans le dossier sélectionné (il n'est pas supprimé)."
 a$=a$+chr$(13)+chr$(13)+"À la fin des suppressions le logiciel est réinitialisé et c'est également le cas quand il il n'y a plus de sous-dossiers."
 a$=a$+chr$(13)+chr$(13)+"Pour terminer :  à tout moment vous pouvez utiliser le bouton ''Recommencer'' pour réinitialiser l'utilitaire."
 message a$
RETURN

Extension:
 active MGo% : inactive Mext%
 if number_click=Mbak% then Extension$=".bak"
 if number_click=Mtxt% then Extension$=".txt"
 
Return

explore:
  active BtRec%
  NewRep$=NewRep$+item_index$(list1%)+""
  Caption 0,left$(NewRep$,len(NewRep$)-1)
  c$="" : clear list1% : clear list2% : DIR_CHANGE NewRep$ : afi_rep(list1%)
  if count(list1%)=0
     a$=left$(NewRep$,len(NewRep$)-1) : NewRep$=a$
     ' item_add list1%,NewRep$
     if c$=".."
        message "  dossier vide  " : gosub Recommencer : return
     else  
        if c$=""
           message " plus de sous-dossier " : gosub Recommencer : return
        else  
           message " plus de sous-dossier " :' gosub Recommencer : return
           if count(list2%)>0 then item_add list1%,NewRep$ : inactive list1%
        end_if
     end_if  
  end_if
RETURN

Sup:
  inactive list1% : DIR_CHANGE NewRep$
  if message_confirmation_yes_no("Voulez-vous réellement faire une (ou des) suppression(s) de fichiers dans le dossier "+chr$(13)+chr$(13)+left$(NewRep$,len(NewRep$))+" ?")=1
     for n%=1 to count(list2%)
         a$=item_read$(list2%,1)
         if message_confirmation_yes_no("Voulez-vous supprimer ce fichier: "+a$+" ?")=1
            item_delete list2%,1 : file_delete a$
         else
            item_delete list2%,1
         end_if  
     next n%
     gosub Recommencer : return
  else
     gosub Recommencer : return
  end_if
RETURN

Recommencer:
     clear list1% : clear list2% : inactive BtSup% : inactive BtRec% : active Mext% : Extension$=""
RETURN
rem ============================================================================
SUB menu()
    dim MGo%,Mext%,Mbak%,Mtxt%,Maide% : label Go,Extension,Aide
    no%=no%+1 : Main_menu no%  
    no%=no%+1 : MGo%=no% : sub_menu no% : parent no%,no%-1 : caption no%,"GO !" : on_click no%,Go
    no%=no%+1 : Mext%=no% : sub_menu no% : parent no%,no%-2 : caption no%,"Choix Extension"
       no%=no%+1 : Mbak%=no% : sub_menu no% : parent no%,no%-1 : caption no%,"*.bak" : on_click no%,Extension
       no%=no%+1 : Mtxt%=no% : sub_menu no% : parent no%,no%-2 : caption no%,"*.txt" : on_click no%,Extension
    no%=no%+1 : Maide%=no% : sub_menu no% : parent no%,no%-5 : caption no%,"Aide" : on_click no%,Aide
    inactive MGo%
END_SUB

SUB Objets()
  ' Form 0
    width 0,750 : height 0, 600: caption 0, "Suppession de fichiers" : application_title "Suppession de fichiers"
    top 0,(screen_y/2)-(height(0)/2) : left 0,(screen_x/2)-(width(0)/2)
    color 0,200,200,255 : font_bold no%
    no%=no%+1 : list1%=no% : list no% : width no%,400 : height no%,height_client(0)-30 : left no%,5 : top no%,5
                on_click no%,explore
    no%=no%+1 : list2%=no% : list no% : width no%,200 : height no%,height_client(0)-30 : left no%,width(list1%)+10 : top no%,5
    no%=no%+1 : BtSup%=no% : button no% : caption no%,"Suppression": left no%,width(list1%)+width(list2%)+20 : top no%,10
                width no%,100 : inactive BtSup% : on_click BtSup%,Sup
    no%=no%+1 : BtRec%=no% : button no% : caption no%,"Recommencer": left no%,width(list1%)+width(list2%)+20 : top no%,55
                width no%,100 : inactive BtRec% : on_click BtRec%,Recommencer
END_SUB

SUB dim_label_general()
    dim n%,no%,list1%,list2%,BtSup%,BtRec%
    dim a$,b$,c$,Rep$,NewRep$,Extension$
    label explore,Sup,Recommencer
END_SUB

rem ============================================================================
SUB afi_rep(num_list%)
    if Extension$=".dll" then message "Accès refusé pour les dll" : terminate  
    if Extension$=".exe" then message "Accès refusé pour les *.exe" : terminate
    if Extension$=".bas" then message "Accès refusé pour les *.bas" : terminate
    a$ = FILE_FIND_FIRST$
   WHILE a$ <> "_"
'       IF a$ <> "." AND a$ <> ".."
          if file_extract_extension$(a$)=""
             ' accès interdit au boot et à l'os interdit
             b$=upper$(a$)
             if left$(b$,4)="BOOT"
             else  
                if left$(b$,2)="OS"
                else
                   item_add num_list%,a$
                end_if  
             end_if
          else
             c$=file_extract_name$(a$)
             if right$(c$,4)=Extension$
                item_add list2%,c$ : active BtSup%
             end_if  
          end_if
'        END_IF
       a$ = FILE_FIND_NEXT$
   END_WHILE
   FILE_FIND_CLOSE
END_SUB


Soyez prudent !
A+

Réédition: 23/06/2017 à 16:37 suite bug signalé par Yannick.


Dernière édition par Jean Claude le Sam 24 Juin 2017 - 9:52, édité 5 fois
Revenir en haut Aller en bas
Yannick




Nombre de messages : 8610
Age : 52
Localisation : Bretagne
Date d'inscription : 15/02/2010

Utilitaire de suppression de fichiers Empty
MessageSujet: re   Utilitaire de suppression de fichiers EmptyVen 23 Juin 2017 - 14:20

@ Jean Claude,

Y a un souci.

Je sélectionne l' extension
Je clique sur Go
là j' ai les dossier du répertoire courant ( le bureau)
Je clique sur un des dossiers
Réponse = dossier vide (normal, il l' est)
mais l' affichage du premier liste me met le nom du dossier sauf que ce nom est tronqué.
Le nom est "Boite à Outils" et l' affichage "Boite à Outil" manque le "s".
Si je clique dessus  affraid bug.
Revenir en haut Aller en bas
Jean Claude

Jean Claude


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

Utilitaire de suppression de fichiers Empty
MessageSujet: Re: Utilitaire de suppression de fichiers   Utilitaire de suppression de fichiers EmptyVen 23 Juin 2017 - 16:41

OK j'ai trouvé le problème, c'est arrangé.

J'ai réédité le code corrigé en début de post.

J'ai ajouté le répertoire sélectionné dans le bandeau de la fenêtre pour plus de lisibilité.

Par contre, normalement ça devrait commencé à la racine "C:" , à moins que tu ais modifié le code ?

A+
Revenir en haut Aller en bas
Jicehel

Jicehel


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

Utilitaire de suppression de fichiers Empty
MessageSujet: Re: Utilitaire de suppression de fichiers   Utilitaire de suppression de fichiers EmptyVen 23 Juin 2017 - 17:17

Un petit truc qui serait sympa mais qui ferait encore une chose en plus dans la to do liste de Jack serait de pouvoir avoir une adresse UNC comme racine à la place d'une lettre de lecteur (adresse UNC: \\NomOuIpDuServeur\NomDuPartage\Dossier\NomDuFichier)

=> Cela permet d'accéder aux contenus des lecteurs réseaux facilement. Il y a de plus en plus d'équipements connectés avec des espaces mémoires partagés.
=> Cela devrait même permettre d'accéder au contenu de son téléphone s'il est connecté et autres usages.

Bon, c'est une remarque un peu hors sujet, mais il y a peut être déjà un moyen de le faire pour l'adapter à cet utilitaire d'où cette remarque sur ce post.
Revenir en haut Aller en bas
Jean Claude

Jean Claude


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

Utilitaire de suppression de fichiers Empty
MessageSujet: Re: Utilitaire de suppression de fichiers   Utilitaire de suppression de fichiers EmptyVen 23 Juin 2017 - 17:21

Je viens de comprendre le problème de démarrage de la recherche à la racine.
Il manquait l'antislash \ à la ligne 24 du programme sur le forum.
Code:
   active list1% : Rep$="C:\":DIR_CHANGE Rep$ : afi_rep(list1%)

Je l'ai corrigé, mais si votre recherche ne commence pas à la racine, remplacé la ligne 24 par celle ci-dessus en vérifiant que la copie du forum ne bouffe pas l'antislash \.

Ce programme n'a pas d'intérêt s'il commence par le bureau, vous ne pourrez jamais aller ailleurs.

A+

PS: on s'est croisé Jicehel, as-tu testé le code ?
Pour ta remarque: elle n'est pas tout à fait hors sujet. Mais dans un sujet comme celui-ci elle risque de passer aux oubliettes.
Very Happy
Revenir en haut Aller en bas
Yannick




Nombre de messages : 8610
Age : 52
Localisation : Bretagne
Date d'inscription : 15/02/2010

Utilitaire de suppression de fichiers Empty
MessageSujet: Re   Utilitaire de suppression de fichiers EmptyVen 23 Juin 2017 - 19:31

@ Jean Claude,

Je ne peux pas tester pour l' instant, j' ai pris un carton rouge et me voilà
expulser de ma machine par mon minecrafter de fils.
Mad
Le nom commencé bien par c:\  c'est moi qui est zappe le début de l' adresse.
Mais, le programme, lui, m' avait bien piqué le s de outils.

Des que je peux je re-teste ton programme.
Laughing

@ Jicehel,

Ta suggestion est très intéressante mais poste la dans les demandes.
Ici, elle va passer à la trappe.
Wink
Revenir en haut Aller en bas
Jean Claude

Jean Claude


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

Utilitaire de suppression de fichiers Empty
MessageSujet: Re: Utilitaire de suppression de fichiers   Utilitaire de suppression de fichiers EmptyVen 23 Juin 2017 - 20:11

T'inquiète pas Yannick, j'ai réparé les problèmes que tu as signalé.
D'ailleurs, merci de me les avoir fait découvrir en testant le programme.

Il n'y a rien qui presse, il faut bien que les Minecrafter se défoulent...  Very Happy

A+
Revenir en haut Aller en bas
Yannick




Nombre de messages : 8610
Age : 52
Localisation : Bretagne
Date d'inscription : 15/02/2010

Utilitaire de suppression de fichiers Empty
MessageSujet: Re   Utilitaire de suppression de fichiers EmptyVen 23 Juin 2017 - 22:03

D' autant au' il me donne satisfaction et me rassure sur son avenir.
Ce n 'est pas le lieu pour en parler mais cela justifie que je fasse
un effort en lui laissant l' ordi le week-end et que je mette Panoramic sur 
pause.
Laughing
Revenir en haut Aller en bas
Contenu sponsorisé





Utilitaire de suppression de fichiers Empty
MessageSujet: Re: Utilitaire de suppression de fichiers   Utilitaire de suppression de fichiers Empty

Revenir en haut Aller en bas
 
Utilitaire de suppression de fichiers
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Suppression des vieux fichiers
» Supression d'un répertoire
» Découpe dans une image
» Suppression sélective de cookies
» Suppression de la fenêtre noire

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: