Lister les softs / le contenu d'un disque dur avec arborescence

Lister les softs / le contenu d'un disque dur avec arborescence - Logiciels - Windows & Software

Marsh Posté le 18-06-2004 à 17:21:35    

Bonjour à tous
Je vais bientot formater (il me reste plus que 1 Go sur ma partition principale :ouch: ) et j'aimerai préparer mon formatage
 
Il me faudrait donc un logiciel qui puisse lister le contenu et les softwares de mon disque-dur, et si possible l'arborescence.
 
Est-ce que quelqu'un connaitrais un programme qui puisse faire ça ? (pour que je n'aie pas besoin de tout faire manuellement :sweat: )
 
Ce qu'il me faudrait surtout, c'est pour lister les softs installés...
 
 
Merci d'avance :jap:


Message édité par Superjun le 18-06-2004 à 17:34:38

---------------
J'aime la vie, et je la croque à pleine dents, cette saloppe.
Reply

Marsh Posté le 18-06-2004 à 17:21:35   

Reply

Marsh Posté le 29-07-2004 à 14:47:12    

mieux vaut faire un menu contextuel , lançable du rep voulu , et avec une sortie hiérarchique  
en fichier un peu plus esthétique en plus  
(virer l'option /F si l'on ne veut pas lister les fichiers avec ...) :  
 
Explorateur de fichiers  
Outils, Options des dossiers...  
Onglet Types de fichiers  
"Types de fichiers" , "Dossier" , cliquez sur le bouton Avancée  
Dans la fenêtre Modification du type de fichier , Nouveau  
Dans le champ Action, saisir Listing (ou autre nom : moi j'ai mis "Raffarin , t'as un gros tarin" ...).  
Enfin, dans le champs Application, saisir ceci : command.com /c tree /F /A > c:\Listing.txt  
 
(Cela crée dans la Bdr cette clé , si vous voulez virer l'option après :  
[HKEY_CLASSES_ROOT\Folder\shell\Listing\command]  
@="command.com /c tree /F /A > c:\Listing.txt %1" )

Reply

Marsh Posté le 29-07-2004 à 16:18:57    

tiens j'ai commencé à développer un truc en Python/wxPython (pour localiser les données dont j'ai perdu la trace dans mon bordel à la base)

Code :
  1. #!/bin/env python
  2. # -*- encoding: iso-8859-1 -*-
  3. __author__ = "Xavier Morel (sri_71a@hotmail.com)"
  4. __version__ = "$Version 0.0.1 $"
  5. __date__ = "$Date: 2004/07/28 23:18:29 $"
  6. __copyright__ = "Copyright (c) 2004 Xavier Morel"
  7. __license__ = "Python"
  8. """
  9.     TODO:
  10.             Use SplitTree instead of regular TreeCtrl
  11.             Use size as PyData
  12.             Add images
  13.             Add optionnal files display
  14.             Add trigger for red color
  15.             Status bar on resize (should move + resize)
  16.             Enable errors logging
  17.             Handle errors (exceptions) in parsing
  18.             Add options panel (deploy/hide + window resize)
  19.             Add frame resize on tree mod
  20.             Show/hide statusbar (not delete/create)
  21. """
  22. import os
  23. import wx
  24. from wx.lib import filebrowsebutton
  25. import thread
  26. def ParseDir(p, tree = None, item = None, status = None):
  27.     """ Get size of directory """
  28.     size = 0
  29.     for pt in os.listdir(p):
  30.         path = os.path.join(p, pt)
  31.         if os.path.isdir(path):
  32.             #print path, "is a directory"
  33.             MyItem = None
  34.             if item:
  35.                 MyItem = tree.AppendItem(item, pt+"\\" )
  36.                 status.SetStatusText("Parsing %s" % path, 0)
  37.             try:
  38.                 size += ParseDir(path, tree, MyItem, status)
  39.             except:
  40.                 pass
  41.         else:
  42.             try:
  43.                 itemsize = os.path.getsize(path)
  44.                 size += itemsize
  45.                 if item:
  46.                     tree.AppendItem(item, "%s %.2fMo" % (pt, itemsize/(1024.**2)))
  47.             except:
  48.                 pass
  49.     tree.SetItemText(item, "%s    %.2fMo" % (tree.GetItemText(item), size/(1024.**2)))
  50.    
  51.     return size
  52.    
  53. class MyFrame(wx.Frame):
  54.     def __init__(self, parent, title):
  55.         wx.Frame.__init__(self, parent, -1, title, size = (550, 300))
  56.        
  57.         self.SetBackgroundColour(wx.Colour(212, 208, 200))
  58.        
  59.         self.diritem = filebrowsebutton.DirBrowseButton(self,
  60.                                                                 -1,
  61.                                                                 (-1,-1),
  62.                                                                 (450, -1))
  63.                                                                
  64.         self.btn = wx.Button(self, -1, "Parse" )
  65.        
  66.         self.tree = wx.TreeCtrl(self, -1, style = wx.TR_HAS_BUTTONS)
  67.        
  68.         self.threadlock = thread.allocate_lock()
  69.        
  70.         self.Bind(wx.EVT_BUTTON, self.OnParseButton, id = self.btn.GetId())
  71.        
  72.         btnsizer = wx.BoxSizer(wx.HORIZONTAL)
  73.         mainsizer = wx.BoxSizer(wx.VERTICAL)
  74.        
  75.         btnsizer.Add(self.diritem, 0, wx.ALIGN_CENTRE_VERTICAL)
  76.         btnsizer.Add(self.btn, 0, wx.ALIGN_CENTRE_VERTICAL)
  77.        
  78.         mainsizer.Add(btnsizer, 0, wx.ALIGN_CENTRE_HORIZONTAL)
  79.         mainsizer.Add(self.tree, 1, wx.GROW)
  80.        
  81.         self.tree.Show(False)
  82.        
  83.         self.SetSizer(mainsizer)
  84.         self.SetAutoLayout(True)
  85.         self.Show()
  86.        
  87.     def OnParse(self):
  88.         self.tree.Hide()
  89.         status = wx.StatusBar(self, -1)
  90.         status.SetFieldsCount(1)
  91.         status.SetStatusText("Parsing directory", 0)
  92.         self.tree.DeleteAllItems()
  93.         root = self.tree.AddRoot(self.diritem.GetValue())
  94.         size = ParseDir(self.diritem.GetValue(), self.tree, root, status)
  95.         self.tree.Expand(root)
  96.         del status
  97.         self.tree.Show()
  98.         self.threadlock.release()
  99.         thread.exit()
  100.        
  101.     def OnParseButton(self, evt):
  102.         if self.diritem.GetValue() and self.threadlock.acquire(0):
  103.             thread.start_new_thread(self.OnParse, ())
  104.            
  105.        
  106. app = wx.PySimpleApp()
  107. frame = MyFrame(None, "Directory Parser" )
  108. app.MainLoop()


tu ouvres Notepad, tu colles tout ca dedans, fichier->enregistrer sous
là dans "Type" tu sélectionne "Tous les fichiers" et dans "nom de fichier" tu entres "dirsizer.py", tu sauvegardes ca la ou tu veux.
 
Ensuite si t'as pas encore Python, tu le télécharges (http://www.python.org/ftp/python/2 [...] -2.3.4.exe), tu l'installes (pense à associer python avec les fichiers .py, .pyw et .pyc quand ils te le demandent à la fin) puis télécharges wxPython (http://prdownloads.sourceforge.net [...] 5-Py23.exe), tu l'installes aussi
 
Quand t'as fini, tu lances le script dirsizer.py (dbl click)
clic sur "Browse", sélectionne le répertoire à parser (genre ton DD) puis clic sur "Parse" et attend (c'est long, surtout si t'as beaucoup de fichiers)
 
ca va afficher un tree (à expand toi même) avec tous les répertoires et tous les fichiers
par contre faudra te démerder pour sauvegarder la donnée :)
 
à titre purement indicatif:
PIII 700, DD inconnu (un vieux 5400 je pense), 512Mo RAM, partition non système
3.24Go dans 39608 fichiers et 2474 dossiers
le parse complet a pris ~55s


Message édité par masklinn le 29-07-2004 à 16:25:48

---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed