hisoka2501
Messages postés264Date d'inscriptionlundi 19 mai 2003StatutMembreDernière intervention 7 juillet 2009
-
30 oct. 2005 à 10:07
hisoka2501
Messages postés264Date d'inscriptionlundi 19 mai 2003StatutMembreDernière intervention 7 juillet 2009
-
30 oct. 2005 à 18:09
voila g un tit soucis avec un petit bout de code:
il fait planter totalement mon mirc !!! je pensse que ca peu peut etre venir du fait que j'ai dooké une @windows dans mon dialog, mais avan ca marchais :s
(ca ne plante pas quand je ne decalre po lé setversion et markdialog sous mdx)
donc impossible de savoir d"ou vien l'erreur:
on *:dialog:WBs.cominity:*:*:{
if ($devent == init) {
if ($isalias(mdx)) && ($wdll(mdx.dll)) {
mdx SetMircVersion $version
mdx MarkDialog $dname
mdx SetControlMDX $dname 38 window > $wdll(dialog.mdx)
mdx SetControlMDX $dname 51 window > $wdll(dialog.mdx)
var %img = $readini($wcfg,comunaute,sbkg)
if ($exists(%img)) && (%img) {
mdx SetControlMDX $dname 5 ListView list single noheader > $wdll(views.mdx)
idid 5 1 setbkg url tile %img
} var %wind @wbs.comunity , %cfg $shortfn($wbsdir $+ txt\config.ini) , %font = $iif($readini(%cfg,comunaute,font),$ifmatch,Verdana)
var %top = @wbs.comunity.topic
window -hzin %top -1 -1 500 20
adid 51 grab $window(%top).hwnd %top
font %top %font
window -hzin %wind -1 -1 500 20
adid 38 grab $window(%wind).hwnd %wind
font %wind %font
font %nlist %font
odid 43 1 %font var %dll $wdll(registry.dll) , %n $dll(%dll,GetValueName, [ 0 ] HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Fonts\\)
while (%n > 0) {
var %item = $gettok($dll(%dll,GetValueName, [ %n ] HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Fonts\\),1,40)
adid 42 $gettok(%item,1-3,32)
dec %n
}
}
if ($exists($wbsdir $+ img\wbs-chat.jpg)) { did -g $dname 20 $wbsdir $+ img\wbs-chat.jpg } var %table wbs.cominity.data , %file $shortfn($wbsdir $+ txt\comunity.txt) , %sname = $sock(wbs.comunity.*) , %max = 500
if ($readini(%cfg,Comunaute,jp) == 1) { cdid 15 }
if ($readini(%cfg,Comunaute,crypt) == 1) { cdid 18 }
if ($readini(%cfg,Comunaute,strip) == 1) { cdid 19 }
if ($readini(%cfg,Comunaute,hl) == 1) { cdid 21 }
if ($readini(%cfg,Comunaute,ignore) == 1) { cdid 27 }
if ($readini(%cfg,Comunaute,confirm) == 1) { cdid 28 }
if ($readini(%cfg,Comunaute,beep) == 1) { cdid 35 }
if ($readini(%cfg,Comunaute,eval) == 1) { cdid 36 }
if ($readini(%cfg,Comunaute,show) == 1) { cdid 37 }
if ($readini(%cfg,Comunaute,etire) == 1) { cdid 39 }
if ($readini(%cfg,Comunaute,abkg) == 1) { cdid 40 }
if ($readini(%cfg,Comunaute,txtbg) == 1) { cdid 45 }
if ($readini(%cfg,Comunaute,topic)) { aline %top $ifmatch }
if ($readini(%cfg,Comunaute,identify)) {
odid 47 1 $gettok($ifmatch,1,32)
odid 48 1 $decode($gettok($ifmatch,2,32),t)
}
if ($readini(%cfg,Comunaute,bkg)) {
var %img = $ifmatch
if ($exists(%img)) {
odid 34 1 %img
if ($readini(%cfg,Comunaute,abkg) == 1) {
background - [ $+ [ $iif($did(39).state == 1,f,c) ] ] %wind %img
background - [ $+ [ c ] ] %nlist %img
}
}
}
if ($readini(%cfg,Comunaute,me)) { odid 30 1 $mid($ifmatch,6-) }
var %n = $ini(%cfg,Comunaute_ignore,0)
while (%n > 0) {
adid 23 $ini(%cfg,Comunaute_ignore,%n)
dec %n
}
if (%sname) {
if ($exists(%file)) { var %i 1 , %n $lines(%file) , %motd_file $shortfn($wbsdir $+ txt\motd_comunaute.txt) , %timestamp = $iif($readini(%cfg,comunaute,timestamp),$ifmatch,[HH:nn])
if ($fopen(%file)) { .fclose %file }
.fopen %file %file
while (!$feof) && (!$ferr) {
tokenize 1 $fread(%file)
if ($2) { aline -p %wind $+($chr(3),01,$time($1,%timestamp)) $2 }
}
.fclose %file
var %n = $lines(%motd_file) , %i 1
if ($fopen(%motd_file)) { .fclose %motd_file }
.fopen %motd_file %motd_file
while (!$feof) && (!$ferr) {
if ($fread(%motd_file)) { adid 11 $ifmatch }
}
.fclose %motd_file
}
}
}
( l'allias $wdll() retourne le chemin de la dll ou dun fichier )
quelqun a une idée ?
car la moi je pedale dans le boeur de cacahuete !
la mémoire ne peut etre définie mais elle definie l"humanitée (G.I.T.S)
hisoka2501
Messages postés264Date d'inscriptionlundi 19 mai 2003StatutMembreDernière intervention 7 juillet 2009 30 oct. 2005 à 11:02
impossible:
si je met un echo entre chaque commande ok c cool mais: mirc plante avan queje ne vois quoi que ce soit
je vais peu etre éssayer avec un write dans ce cas , genre
write test.txt 1
commande
write test.txt 2
mais bon jaurais aimé une autre solution car la je sais ke je suis pas rendu :(
la mémoire ne peut etre définie mais elle definie l"humanitée (G.I.T.S)
S333
Messages postés266Date d'inscriptionvendredi 8 juillet 2005StatutMembreDernière intervention26 juin 2008 30 oct. 2005 à 12:37
Le problème n'existe pas lorsque tu ne fais pas de makdialog ou de setversion... c'est à dire quand tu n'utilises pas mdx...
Ca vient donc surement d'une mauvaise commande mdx, qui entraine un bug.
C'est impossible pour nous de te dire d'où vient exactement l'erreur...
sauf si quelqu'un voit une faute réelle dans le code, mais bon... ça
peut très bien venir d un alias que tu utilises et que nous ne voyons
pas etc...
Si ça te gène pas, mets un liens avec tout ton code, pour que l'on
puisse nous aussi ouvrir le dialog et faire nos propres tests :)
--------------------------------
Signature des parents :
hisoka2501
Messages postés264Date d'inscriptionlundi 19 mai 2003StatutMembreDernière intervention 7 juillet 2009 30 oct. 2005 à 13:00
dac, ca me gene pas mais je previen: le fichier fait + de 700 lignes de code et pour fonctioner il utilise mon addon (normal car il en forme une section)
l'addon fait 8700 lignes ( le principal )
quand aux aliases (que j'ai séparé de l'addon principal (je savais ke javais bien fait !)) elle fon a peu pres 500 lignes
pour le moment je me suis tournée vers une solution alternative: (dcx.dll)
http://dcx.scriptsdb.org/
j'ai aussis trouvé le probleme je crois ( mais j'en suis pas sur )
l"erreur vien du fait que OK je doock corectement la @window mais lorsque je la ferme: mdx ou meme dcx la croi encor dooké et fait planter le tout comme un malpropre: ce qu'il faut ke je fasse donc je pensse c'est de trouver une fonction pour dire a la dll de undooker la @windows PUIS ensuite je pourais fermer cette denriere
pour les courageux qui voudrais tester tout de meme: www.wbsscript.free.fr
la version actuele est la 1.27c
le fichier daliases se trouve dans le dossier aliases et celui ou le probmeme se trouve est dans /aliases/comunity.mrc
voila pour que le tout fonctione il faut tout de meme lancer wbs.mrc (et ce en premier)
sinon ca marchera pas car il y a tout de meme quelques aliases dans ce dernier que je n'ai pas déplacé dans aliases.mrc
la mémoire ne peut etre définie mais elle definie l"humanitée (G.I.T.S)