Réinitialisation de l'affichage ???

Réinitialisation de l'affichage ??? - Shell/Batch - Programmation

Marsh Posté le 24-09-2002 à 10:20:43    

Désolé pour le cross posting... je me suis gouré d'endroit en fait... j'ai posté par erreur sur Soft et Rézal
 
Hello,
 
je voudrais par un batch réinitialiser l'affichage vidéo.. en fait, ce que je voudrais, c'est modifier une clé registre (pour changer un zoli fond d'écran) avec ce genre de code:

Code :
  1. Windows Registry Editor Version 5.00
  2. [HKEY_CURRENT_USER\Control Panel\Desktop]
  3. "Wallpaper"="C:\\test.bmp"
  4. "WallpaperStyle"="2"


...et ensuite qu'il s'affiche, de la meme manière que lorsqu'on va dans les propriétés d'affichage et qu'on fait Appliquer.
Ca peut aussi être un prog qui se lance, genre un exe ou une commande diverse, mais bon, à priori y'a bien une "ligne de commande windows" qui doit faire ça vu que lui le fait !
 
euh.. j'ai été clair ?...
 
pour info, je suis sous Win2k.


---------------
Tout cul tendu mérite son dû
Reply

Marsh Posté le 24-09-2002 à 10:20:43   

Reply

Marsh Posté le 24-09-2002 à 10:28:10    

BeTtASpLeNdEnS a écrit a écrit :

Désolé pour le cross posting... je me suis gouré d'endroit en fait... j'ai posté par erreur sur Soft et Rézal
 
Hello,
 
je voudrais par un batch réinitialiser l'affichage vidéo.. en fait, ce que je voudrais, c'est modifier une clé registre (pour changer un zoli fond d'écran) avec ce genre de code:

Code :
  1. Windows Registry Editor Version 5.00
  2. [HKEY_CURRENT_USER\Control Panel\Desktop]
  3. "Wallpaper"="C:\\test.bmp"
  4. "WallpaperStyle"="2"


...et ensuite qu'il s'affiche, de la meme manière que lorsqu'on va dans les propriétés d'affichage et qu'on fait Appliquer.
Ca peut aussi être un prog qui se lance, genre un exe ou une commande diverse, mais bon, à priori y'a bien une "ligne de commande windows" qui doit faire ça vu que lui le fait !
 
euh.. j'ai été clair ?...
 
pour info, je suis sous Win2k.




 
je crois qu'il vaut mieux trouver la fonction qui le fait et l'appeler directement  
 
puisque tout windows fonctionne comme ca !


dans ton batch tu appelles directement :
rundll32.exe machin.dll,fonction


par contre tu vas gallerer pour trouver la bonne fonction et surtout dans quelle dll elle est
 


---------------
[:kuroineko] Francois.P tel: (+33)617230820 http://www.ifrance.com/fpussault  fpussault@caramail.com
Reply

Marsh Posté le 24-09-2002 à 10:34:56    

BeTtASpLeNdEnS a écrit a écrit :

 
euh.. j'ai été clair ?...
 
pour info, je suis sous Win2k.




 
nan pas du tout !!
mais si tu veux simplement importer un fichier de registre depuis un batch tu peux faire un truc dans le genre
regedit /s c:\winnt\novacial.reg
 
une fois que ton fichier est importé tu cliques sur ton bureau puis F5. sinon dans les powertoys de windows je crois me rappeler qu'il y a un parametre 'raffraichir automatiquement le bureau'


---------------
All we need is a soul revolution
Reply

Marsh Posté le 24-09-2002 à 10:42:46    

ouaip.. pour le regedit /s, pas de pb.. mon pb ne se situe pas ici... mais comme l'indique le titre dans la réinitialisation de l'affichage !
Et je ne veux pas passer par les powertoys ou autre truc "à installer"... ce qu'il me faudrait c'est bien entendu la ligne

Code :
  1. rundll32.exe machin.dll,fonction


mais il me faudrait le "machin" et la fonction.. c bien là le hic !
 
Bon.. voilà... j'ai un BMP que je copie qq part sur un poste, je me débrouille pour que la base de registre pointe bien vers ce BMP comme fond d'écran... ensuite, je veux faire un "réinit"... et je rappelle que F5 ne fait pas un réinit du fond d'écran, mais simplement des icones du bureau ! et ça ne me suffit pas !
 
Merci pour le suite.....


---------------
Tout cul tendu mérite son dû
Reply

Marsh Posté le 24-09-2002 à 10:43:34    

kuroineko a écrit a écrit :

par contre tu vas gallerer pour trouver la bonne fonction et surtout dans quelle dll elle est


Oui.. c'était tout l'intéret de ma question !


---------------
Tout cul tendu mérite son dû
Reply

Marsh Posté le 24-09-2002 à 11:14:36    

spa ca ?
http://www.experts-exchange.com/Pr [...] 86459.html


---------------
All we need is a soul revolution
Reply

Marsh Posté le 24-09-2002 à 11:25:40    

kayasax a écrit a écrit :

spa ca ?
http://www.experts-exchange.com/Pr [...] 86459.html



c'est vraiment ce qu'il me faudrait... je pense jamais à aller voir sur ce très bon site...
mais le pb, c'est qu'il faudrait que je puisse l'exécuter "directement". Si j'ai bien compris là, c dans du code C. Moi j'aimerai le faire directement via le shell, un batch DOS.. une commande windows que je peux lancer dans un batch quoi.
 
Merci déjà pour ça... c super !


---------------
Tout cul tendu mérite son dû
Reply

Marsh Posté le 24-09-2002 à 11:30:19    

BeTtASpLeNdEnS a écrit a écrit :

c'est vraiment ce qu'il me faudrait... je pense jamais à aller voir sur ce très bon site...
mais le pb, c'est qu'il faudrait que je puisse l'exécuter "directement". Si j'ai bien compris là, c dans du code C. Moi j'aimerai le faire directement via le shell, un batch DOS.. une commande windows que je peux lancer dans un batch quoi.
 
Merci déjà pour ça... c super !




 :??: ben si c du C t'en fé un exe puis tu le lance par batch ca te va pas ? tu veux pas envoyer de prog c ca ?


---------------
All we need is a soul revolution
Reply

Marsh Posté le 24-09-2002 à 11:38:00    

kayasax a écrit a écrit :

 
 :??: ben si c du C t'en fé un exe puis tu le lance par batch ca te va pas ? tu veux pas envoyer de prog c ca ?



si si.. je veux bien, mais j'ai pas de compilateur sous la main à vrai dire ! mais bon, si qq'un veut me faire un petit prog qui me le fait, pas de pb ! :-)
disons que l'image se trouvera dans un répertoire genre "winnt" et que l'image s'appellera TEST.bmp ou comme vous voudrez (faut juste me le dire !)
 
lol... bon, si qq'un n'a rien à faire, je suis preneur ! :D


---------------
Tout cul tendu mérite son dû
Reply

Marsh Posté le 24-09-2002 à 11:43:14    

ok ok... c'est bon, j'ai trouvé un poste ici avec Visual C++ d'installé...
 
En fait, la simple ligne suivante suffit pour réinitialiser l'affichage par rapport à ce qu'il y a dans le registre

Code :
  1. SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, NULL, SPIF_UPDATEINIFILE | SPIF_SENDCHANGE);


et hop... roule ma poule
Si qq'un veut l'exe, je pourrais l'upper qq part ce soir... mais ici pas possible de faire du ftp
 
@+


---------------
Tout cul tendu mérite son dû
Reply

Marsh Posté le 24-09-2002 à 11:43:14   

Reply

Marsh Posté le 24-09-2002 à 13:32:40    

oups... petit pb que je comprend pas bien !
 
voici mon code donc:

Code :
  1. // Refresh.cpp : Defines the entry point for the application.
  2. //
  3. #include "stdafx.h"
  4. int APIENTRY WinMain(HINSTANCE hInstance,
  5.                      HINSTANCE hPrevInstance,
  6.                      LPSTR     lpCmdLine,
  7.                      int       nCmdShow)
  8. {
  9.  // TODO: Place code here.
  10. SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, NULL, SPIF_UPDATEINIFILE | SPIF_SENDCHANGE);
  11. return 0;
  12. }


et quand je l'exécute sur le PC qui a compilé le truc.. pas de pb, mais sur un autre pc.. il veut pas !! je capte pas là !! grr... helppppppp !!!


---------------
Tout cul tendu mérite son dû
Reply

Sujets relatifs:

Leave a Replay

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