mIRC Home    About    Download    Register    News    Help

Print Thread
Joined: Oct 2004
Posts: 72
C
Babel fish
OP Offline
Babel fish
C
Joined: Oct 2004
Posts: 72
I try to start a DCC Send session from a dialog but for some reason it doesn't work (insufficient parameters). The code that should start the session is:

IF ($did == 11) { dcc send $did($dname,10) }

When I add //echo -s dcc send $did($dname,10) for debugging, I get exactly the right command format on my status screen. When I copy and paste this back in the screen, the DCC Send window is opened, so $did($dname,10) actually contained an existing nickname. So, why do I get an errormessage?

Joined: Sep 2003
Posts: 4,230
D
Hoopy frood
Offline
Hoopy frood
D
Joined: Sep 2003
Posts: 4,230
I beleieve you may have a custom dcc alias (local only using -l ) as /dcc send anything here should work ie: /dcc send @##(!*&!*(@#!@#
A custom alias on the other hand might want nick and filename etc, if it has the -l local access only flag then it wont be triggered from the command line.
Have you tried using !dcc send $did($dname,10)

IF that still doesnt work its debugging time <groan>
try...
(1) use ctrl-c to copy the line see if theres any hidden characters then like control codes
(2) To check for extra spaces use //echo -s $replace(dcc send $did($dname,10),$chr(32),_)
(3) try this I wont say it well work but it might fix the problem dcc send [ $did($dname,10) ] or dcc send [ [ $did($dname,10) ] ]

but since /dcc send should work regardless i think its the custom alias.

Joined: Oct 2004
Posts: 72
C
Babel fish
OP Offline
Babel fish
C
Joined: Oct 2004
Posts: 72
Good suggestions, but none of them works. I call DCC from an on dialog sclick event. The dialog is defined as -mdo. DCC Chat however works very well, only Send is causing problems. Maybe a bug in mIRC?

Joined: Sep 2003
Posts: 4,230
D
Hoopy frood
Offline
Hoopy frood
D
Joined: Sep 2003
Posts: 4,230
Might be I worked around it. Its seems to be to do with it being in a dialog or a dialog event code, cant tell which it is of course.

use

IF ($did == 11) { .timer 1 0 dcc send $did($dname,10) }

or better yet

IF ($did == 11) { .timer 1 0 dialog -n $dname $(|,) dcc send $did($dname,10) $(|,) dialog -o $dname }

I like the second one, just be aware the dialog event code completes before this trips, so if the dialog happened to have closed, well oops to that!


Link Copied to Clipboard