Page 1 sur 1

[..] Création d'un Explorer (DISTANT)

Posté : jeu. 14 avr. 2011 10:25
par Yoyo86220
Bonjour à tous,

J'ai créer un explorer distant (qui à pas mal de bug) :s
Je POST la version "local" si sa peu aider... et si quelqu'un a le courage de rectifier les bugs:
- Quand on reliste un dossier les nouveaux dossier qui ont été créer entre l’ancien listage et le nouveau ne s'ajoute pas à la TreeView...
- J’avoue que je ne suis pas organisé, et que le script n'est pas ordonnée
- ATTENTION les double clics dans la listview ne marche que en 32 bits
- Quand un dossier contient beaucoup de fichier il est très long à charger (et à suppr. la ListView)

Malgré ça sa marche à peu près... ^^

Amélioration à apporter
- Trier les fichiers par nom, par taille...
- Afficher les nouveaux lecteur qui se connecte à la machine
- Suppr. les lecteurs qui se déconnecte de la machine
- ouverture de mes documents direct en sélectionnant dans la treeview l'icone "mes documents"
- ouverture du bureau direct en sélectionnant dans la treeview l'icone "bureau"
- Ajouter la fonction "rechercher"

► Afficher le texte

Re: [..] Création d'un Explorer (DISTANT)

Posté : ven. 15 avr. 2011 00:04
par TommyDDR
Bonjour,

Pour les temps lors des suppressions/création des list view item, regardez du coté de :

Code : Tout sélectionner

_GUICtrlListView_BeginUpdate($ListView)
et

Code : Tout sélectionner

_GUICtrlListView_EndUpdate($ListView)
Qui vous permettront de ne pas rafraichir votre liste tant que le traitement n'est pas terminé (gain de temps).

Re: [..] Création d'un Explorer (DISTANT)

Posté : sam. 16 avr. 2011 01:56
par Yoyo86220
Comment peut-on décharger la ram?

quand je créer mon array de 2000 éléments quand je liste mon dossier (qui comporte 2000 fichiers), le processus augmente en ram (se qui parait logique)! Mais quand je re liste un dossier je fait ceci (pour "vider la mémoire"):
$MonArray = "" mais ça ne fait rien le processus utilise tout le temps autant de mémoire et à force d'utilisation le processus plante... comment suppr une array définitivement?

Re: [..] Création d'un Explorer (DISTANT)

Posté : sam. 16 avr. 2011 07:59
par zeshrek
remplace ta ligne $MonArray="" par ceci

Code : Tout sélectionner

$m1 = MemGetStats() ; on prend la mémoire avant
Dim $MonArray[1] ; on redimensionne le tableau en le vidant
$m2 = MemGetStats() ; on prend la mémoier apres

$m3 = $m2[2] - $m1[2] ; gain = apres - avant
If $m3 > 0 Then MsgBox(0, "Gain mémoire", "le redimensionnement de $MonArray a libéré " & @CRLF & $m3 & " octets de mémoire")