PETIT PROG QUI SERT À CHANGER AUTOMATIQUEMENT LE PAPIER-PEINT DU BUREAU À CHAQUE

Horfee Messages postés 188 Date d'inscription mercredi 9 avril 2003 Statut Membre Dernière intervention 10 août 2009 - 26 avril 2005 à 10:23
cs_et1 Messages postés 250 Date d'inscription vendredi 14 janvier 2005 Statut Membre Dernière intervention 27 janvier 2011 - 30 avril 2005 à 12:21
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/30386-petit-prog-qui-sert-a-changer-automatiquement-le-papier-peint-du-bureau-a-chaque-demarrage-de-l-ordi

cs_et1 Messages postés 250 Date d'inscription vendredi 14 janvier 2005 Statut Membre Dernière intervention 27 janvier 2011 10
30 avril 2005 à 12:21
J'ai refais la source avec un seul exécutable.
Merci pour tes commentaires.
cs_et1 Messages postés 250 Date d'inscription vendredi 14 janvier 2005 Statut Membre Dernière intervention 27 janvier 2011 10
27 avril 2005 à 18:37
Bon, je vais essayer de regarder ça et de refaire la source.
Merci
Horfee Messages postés 188 Date d'inscription mercredi 9 avril 2003 Statut Membre Dernière intervention 10 août 2009
26 avril 2005 à 23:32
bon je viens de regarder les sources...hum hum!! lol le prend pas mal mais c pas tip top
pour ce genre de programme tu vois, je pense qu'il faut prendre du recul et s'imaginer une situation plus...grande. Je m'explique : image que dans 5 mois tu veuille reprendre ton source, et faire en sorte qu'il prenne un dossier avec 100 images, tu vas faire 125 fois un copier-coller?
non, le truc vraiment ideal serait de configurer un ou plusieurs repertoires qui contiennent les fichiers images. Ensuite au demarrage on prend une image au hasard dans la liste des images des repertoires. Tu vois ce que je veu dire?
donc en clair, si tu veu faire ca, il te faudrait utiliser les directoryEntry pour lister les entrées ( fichiers images) des repertoires, des fonctions random ( cf exemple en fin), et des accès au registre ( ce que tu fais dejà)
si tu veu plus de details fais moi signe ;)
Ensuite, si tu veu programmer plus "propre", utilise les classe du framework pour l'accès au registre ( registry )plutot que le WScript : ca c'était utilisé sous VB6, mnt on est des grands et on utilise VB.NET.
Enfin, evite de déclarer les objets sans typage ( cf "Dim NI") car celà ralentit les traitements : ici ca ne pose de pb mais dans d'autre cas ca pourrait te jouer de mauvais tour !!!

voilà bonne prog ++

Dim ran As New Random(Now.Millisecond)
Dim i As Integer
Randomize()
Dim j As Integer
For j = 0 To 10
i = ran.Next Mod 10
MsgBox(i)
Next
Horfee Messages postés 188 Date d'inscription mercredi 9 avril 2003 Statut Membre Dernière intervention 10 août 2009
26 avril 2005 à 23:20
lol donc :
service windows : ca permet a l'exec de se lancer au démarrage de windows et de tourner en arriere plan ( click droit sur le poste de travail->services)

ensuite g windows xp et il prend le format jpeg

ensuite si tu ne touche qu'au registre, pkoi copier les images???

pour lees arguments de la ligne de commande :
Dim commands As String = Microsoft.VisualBasic.Command()

select case commands.indexof("-")
case is <> -1
...
case is = -1
...
end select
...


allé je v regarder les sources ;)
cs_et1 Messages postés 250 Date d'inscription vendredi 14 janvier 2005 Statut Membre Dernière intervention 27 janvier 2011 10
26 avril 2005 à 17:50
Bonjour


> Tu as raison, seulement je ne sais pas faire un seul exécutable avec 2 partie, avec - qqchose (si tu sais comment on fait, peut-tu-me le dire ...)


> Mais justement, c'est ça que fais le prog !

<en plus en bmp, le format le plus lourd)>
> T'as raison, mais Windows accèpte que les image bitmap pour le fond d'écran (dumoins, sur mon pc)

<restrictions du nombres d'images ( max 8 min 2 )>
> C'est logique qu'il faut min 2 image (si ya qu'une image, comment va-elle changer ?!)
max 8 : Je trouve que 8, c'est déja pas mal. (Pour en mettre plus, ta qu'a faire des copier/coller de certains code et de changer le n°)

<faire ton exec en style service windows>
> ça veut dire quoi ???
Horfee Messages postés 188 Date d'inscription mercredi 9 avril 2003 Statut Membre Dernière intervention 10 août 2009
26 avril 2005 à 10:25
j'ai oublié aussi un petit gadget : vu que tu prog en vb.net, tu pourrais faire ton exec en style service windows, ce qui evite encore d'ajouter l'exec dans le registre catégorie "run"
Horfee Messages postés 188 Date d'inscription mercredi 9 avril 2003 Statut Membre Dernière intervention 10 août 2009
26 avril 2005 à 10:23
je n'est pas regarder le code mais les descriptions que tu en fait ne me donne pas envie de le regarder : sans vouloir etre mechant :
1) ta solution des deux executables n'est pas bonne : mieux vaut un seul exec
2) la copie des images génère bcp trop de données ( copie des images, en plus en bmp, le format le plus lourd)
3) restrictions du nombres d'images ( max 8 min 2 )
Pour moi ce que j'aurais fait :
un seul exec avec deux parties : une partie (partie operationnel ) qui s'execute si l'app est executé sans param ( style "app.exe")
et une partie (partie conf) qui s'execute avec parametres ( ex : "app.exe -config")
ensuite ne pas duppliquer toutes les images : windows s'en charge il me semble ( a verifier ) sinon effectuer une seule copie dans c:\windows ou un truc dans le style au format identique et lors du changement la supprimer ou l'ecraser ( donc lui donner un nom unique a chaque fois, ce qui permet de ne pas a chaque fois aller toucher le registre)
une autre solution serait de ne toucher que le registre ("HKEY_CURRENT_USER\Control Panel\Desktop\Wallpaper") et d'y affecter le nom de l'image, ce qui evite la copie de l'image
Voilà, sinon peut etre que ton code est bon, donc je ne dirai rien là dessus
Bonne prog ( j'espere que mes remarques te feront avancer)