Chargeur de thème pour un script : problème

Résolu
cs_Lodan51 Messages postés 57 Date d'inscription lundi 4 juillet 2005 Statut Membre Dernière intervention 19 janvier 2006 - 3 janv. 2006 à 18:27
cs_Lodan51 Messages postés 57 Date d'inscription lundi 4 juillet 2005 Statut Membre Dernière intervention 19 janvier 2006 - 4 janv. 2006 à 12:45
Bonjour à tous !
Voilà mon problème est le suivant : je creé actuelement un script et tout fonctionne sauf une chose, un chargeur de thèmes qui permet donc de changer les fonds de salon, privé, status etc....
Je reçois sans cesse un méssage d'erreur dans mon status lorsque je veux charger un thème qui est le suivant :

* /background: no such file 'C:\Program' (line 55, theme.ini)

En théorie cela signifie si je ne me trompe pas que le chemin d'access vers les images est éronné mais en fait aprés avoir vérifié au moins dix fois, tout est bon en ce qui concerne le chemin d'accéss. D'autant plus que dans mes variables, les chemins d'access sont bien associés à leurs variables réspéctives.

Exemple : %salon C:\Program Files"nom de mon script"\themes\principal\channel.jpg est le chemin d'access qui apparait lorsque je veux charger le thème principal pour l'image salon, ce chemin d'access est bien correct ainsi que pour tout les thèmes et toutes les images. Mais le méssage d'erreur reste lui aussi.

Pour finir, voici la remote complete de mon chargeur de thème, si vous y voyez le soucis merci de me dire de quoi il s'agit svp :

dialog theme {
size -1 -1 150 95
icon $mircdiricons\icone\theme.ico, 0
title "Chargeur de thèmes"
option dbu
button "", 2, 400 400 1 1, ok
icon 3, -25 -50 200 200, $mircdirthemes\theme.jpg
combo 4, 100 52 45 50, size drop
}


on *:dialog:theme:init:*: {
did -r theme 4
set %nombre.theme $lines($mircdirthemes\theme.txt)
set %theme.numero 1
while (%theme.numero <= %nombre.theme) {
did -a theme 4 $read($mircdirthemes\theme.txt,%theme.numero)
inc %theme.numero
}
if (!%theme.choisi.index) { set %theme.choisi.index 1 }
did -c theme 4 %theme.choisi.numero
; set %po $window(-1).w $+ x $+ $window(-1).h
}


on *:dialog:theme:mouse:*: {
; ----- souris sur bouton appliquer -----
if ($mouse.x > 5) && ($mouse.x < 160) && ($mouse.y > 160) && ($mouse.y < 185) { set %theme.appliquer on }
else { set %theme.appliquer off }
; ----- souris sur bouton fermer -----
if ($mouse.x > 180) && ($mouse.x < 250) && ($mouse.y > 160) && ($mouse.y < 185) { set %theme.fermer on }
else { set %theme.fermer off }
}


on *:dialog:theme:sclick:*:{
if (%theme.appliquer == on) {
set %theme.choisi.numero $did(4).sel
set %theme.choisi $did(4).text
appliquer.theme
}
if (%theme.fermer == on) { dialog -x theme theme }
}


alias appliquer.theme {


; ----- chargement des images du thème choisi -----


if (%po == 800x600) { set %tool $mircdirthemes\ $+ %theme.choisi $+ \tool600.jpg | set %switch $mircdirthemes\ $+ %theme.choisi $+ \switch600.jpg }
if (%po == 1024x768) { set %tool $mircdirthemes\ $+ %theme.choisi $+ \tool.jpg | set %switch $mircdirthemes\ $+ %theme.choisi $+ \switch.jpg }
if (%po == 1280x1024) { set %tool $mircdirthemes\ $+ %theme.choisi $+ \tool.jpg | set %switch $mircdirthemes\ $+ %theme.choisi $+ \switch.jpg }
set %statut $mircdirthemes\ $+ %theme.choisi $+ \status.jpg
set %salon $mircdirthemes\ $+ %theme.choisi $+ \channel.jpg
set %main $mircdirthemes\ $+ %theme.choisi $+ \main.jpg
set %prive $mircdirthemes\ $+ %theme.choisi $+ \prive.jpg


; --- status windows et @windows en fill screen ---
background -sf %statut
background -f @HLs %main
background -f @Notices %main
background -f @Invite %main
; --- barre de channel ---
background -h %switch
; --- toolbar ---
background -l %tool
; --- fond du script général (main) ---
background -mf %main
; --- fond des salons ---
var %channel = 1
while ( %channel <= $chan(0) ) {
background -ef $chan(%channel) %salon
inc %channel
}
; --- fond des privés ---
var %private = 1
while ( %private <= $query(0) ) {
background -ef $query(%private) %prive
inc %private
}

Voilà donc ma remote. En éspérant avoir été le plus clair possible et avoir de l'aide.
Merci d'avance !

Lodan51

15 réponses

cs_Lodan51 Messages postés 57 Date d'inscription lundi 4 juillet 2005 Statut Membre Dernière intervention 19 janvier 2006
3 janv. 2006 à 21:10
UN GRAND MERCI A TOUS !
Voilà cela fonctionne trés trés bien. Je peux donc clore ce sujet en vous disant encore merci
Efficace ù 100%

Lodan51
3
fjxokt Messages postés 840 Date d'inscription vendredi 28 janvier 2005 Statut Membre Dernière intervention 25 février 2009 1
3 janv. 2006 à 18:32
tu dois quoter ton chemin s'il contient des espaces
$+(",c:\ton path a espace\etc,")
0
cs_tofu Messages postés 1726 Date d'inscription vendredi 12 septembre 2003 Statut Membre Dernière intervention 13 juin 2009 1
3 janv. 2006 à 18:47
le plus simple pour pas se galérer c'est de se faire une aliase qui retourne le path du script avec comme l'a dit fjxokt des guillemets pour permettre de gérer les espaces du path et après d'utiliser cet alias pour aller chercher les fichiers.


-1337 connexion-
0
Mc_AbBeR Messages postés 301 Date d'inscription mercredi 15 juin 2005 Statut Membre Dernière intervention 19 février 2007
3 janv. 2006 à 19:10
c'est l'espace entre Program et files.. met tout sa dans c:\ et sa ira mieux.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
fjxokt Messages postés 840 Date d'inscription vendredi 28 janvier 2005 Statut Membre Dernière intervention 25 février 2009 1
3 janv. 2006 à 19:16
oui, et les personnes qui utiliseront son script (s'il sort un jour) , elles devront aussi le mettre obligatoirement a la racine ?
Sympa comme contrainte
0
cs_Lodan51 Messages postés 57 Date d'inscription lundi 4 juillet 2005 Statut Membre Dernière intervention 19 janvier 2006
3 janv. 2006 à 19:27
Donc si je comprend bien ce que vous dites, le chemin d'accés devrait être dans C:\ tout simplement sans passer par Program Files/"nom de mon script"/thémes pour chaques chemin d'accéss à ch aque thémes et images ?
Si ce n'est pas cela pourriez-vous me donner un exemple ou même encore me dire comment creé cet alis qui retournerai le chemin d'access car à la base je modifie ce chargeur de thème (avec l'accord de son auteur), et, je ne suis pas on va dire "calé" assez en scripting.

Re merci d'avance !

Lodan51
0
Mc_AbBeR Messages postés 301 Date d'inscription mercredi 15 juin 2005 Statut Membre Dernière intervention 19 février 2007
3 janv. 2006 à 19:28
ben nan
0
cs_Lodan51 Messages postés 57 Date d'inscription lundi 4 juillet 2005 Statut Membre Dernière intervention 19 janvier 2006
3 janv. 2006 à 19:39
j'ai placé mon dossier de script dans C: donc cela me donne C:"nom de mon script"\themes\principal\main.jpg pour le chemin d'access à mes images.
Mais voilà que j'ai un autre méssage d'erreur qui apparait : * /background: insufficient parameters (line 60, theme.ini).
En vérifiant à cette ligne, j'ai trouvé cela : background -h %switch

Quoi qui se passe encore looool ??

Lodan51
0
fjxokt Messages postés 840 Date d'inscription vendredi 28 janvier 2005 Statut Membre Dernière intervention 25 février 2009 1
3 janv. 2006 à 19:45
bon alors deja tu peux replacer ton script là ou il etait
on t'as dit que pour éviter les pbs dûs aux chemins avec espaces, il fallait que tu encadre ton chemin avec des guillements
tu peut creer un alias par exemple
alias quote return $+(",$1-,")
et pour t'en servir $quote(blabla)
exemple
$quote(c:\program files) te retournera "c:\program files" et là, plus de problème d'espace

sinon ton erreur "/background: insufficient parameters" vient surement du fait que ta variable %switch doit être vide
0
cs_tofu Messages postés 1726 Date d'inscription vendredi 12 septembre 2003 Statut Membre Dernière intervention 13 juin 2009 1
3 janv. 2006 à 19:47
la variable %switch ne doit pas être remplie ou un truc du genre.


-1337 connexion-
0
cs_Lodan51 Messages postés 57 Date d'inscription lundi 4 juillet 2005 Statut Membre Dernière intervention 19 janvier 2006
3 janv. 2006 à 19:59
Oui tout à fait dans mes variables, %switch et %tool sont vides mais je ne comprend pas pourquoi ?
Y a t'il quelque chose de faux dans ma grande remote du dessus pour que cela se produise ?
Sinon mes images de salon, privé, et de status par %statut, %prive, et, %main et %salon sont bien remplies avec le chemin d'access

Lodan51
0
cs_lebaronrouge Messages postés 288 Date d'inscription lundi 8 mars 2004 Statut Membre Dernière intervention 14 février 2009
3 janv. 2006 à 20:37
Pourquoi ne pas utiliser le bon vieux $mircdir ?
J'avais aussi un probleme de chemin de fichier avec mo nscritp selon l'endroit ou il s'installait les chemins d'icones de dialogues ne corepsondaient plus , avec par exemple icon $mirdirscript/icones tout est ok ou que soit instalé le script
0
cs_tofu Messages postés 1726 Date d'inscription vendredi 12 septembre 2003 Statut Membre Dernière intervention 13 juin 2009 1
3 janv. 2006 à 20:54
perso j'avais eu des soucis même avec $mircdir. le mieux est de mettre le chemin entre quotes on est sur que ça marche à tous les coups. et le mieux (enfin je pense) c'est de mettre $mircdir entre quotes :q


-1337 connexion-
0
cs_lebaronrouge Messages postés 288 Date d'inscription lundi 8 mars 2004 Statut Membre Dernière intervention 14 février 2009
4 janv. 2006 à 10:54
A propos Lodand51 si ton loadeur changeur de themes fonctionne bien maintenant , ca serait peut-être une bonne idée de nous le proposer fini
0
cs_Lodan51 Messages postés 57 Date d'inscription lundi 4 juillet 2005 Statut Membre Dernière intervention 19 janvier 2006
4 janv. 2006 à 12:45
Le proposer fini oui pourquoi pas. J'attends juste de rencontrer l'auteur original de cette remote qui l'a creé et qui m'a donner l'accord pour la modifier sur mon script. Car certe cela fonctionne sur mon script mais j'aimerai par la suite mettre celui-ci en téléchargement sur mon site, mais pas sans un nouvel accord, et je pense que vous trouverez cela normal

Donc dés que j'en sais un peu plus, je suis ok pour le proposer !

Encore merci.

PS : Il fonctionne parceque j'ai mis le dossier du script dans C:// en le retirant donc de Program Files, mais ce n'est pas un soucis ça si je met une notice d'installation au cas où il serait en dl.

Lodan51
0
Rejoignez-nous