Re: WinSock SendData -> unknown Exception
I also explained that you cannot send anything to a CAsyncSocket from a MM=
timer callback.
You CANNOT TOUCH the socket (assuming it is CAsyncSocket) from a MM callba=
ck. End of
story. Not possible. Never. Won't work. Cannot be made to work=
.. Don't do it.
...ok I understood this... it's clear to me.
You have not explained why you have to use a multimedia timer for this purp=
ose; had you
used WM_TIMER messages, you would not have this problem.
[....]
I also explained that you cannot send anything to a CAsyncSocket from a MM =
timer callback.
So it doesn't matter whether you are using ActiveX COM or CAsyncSocket. *yo=
u cannot do any
of this from a MM timer callback*.
...
That's what would be required. But then why use a MMTimer? Why not use WM=
_TIMER? (There
is one right answer to this question; if that isn't your answer, then just =
use WM_TIMER)
Well, I repeat... maybe my english is not as good as I want, but I
think I've explained already... maybe you'll find more detailed info
here ->http://groups.google.com/group/microsoft.public.vc.mfc/
browse_thread/thread/494a33c3a204c859#
If you don't have the time to read that post, I try to resume it
again: The MAIN reason to use the MMTimer is TO SEND SERIAL FRAMES in
a short interval. That's why I'm using MMTimer.
The specific condition that occours inside this MMTimer that requires
me to send a socket was just an extra. Yes I need to send that socket
anyway, but is not a requisite send it from inside
MMTIMER!!!!!!!!!!!!!!!!!!!!!
I don't use MMTimer to manage socket communication, but serial comm.
Every X ms I'm sending a frame through serial
See?
That's the only reason I need
to send a socket from that MMtimer.
Look:
This is the code I tried to run inside the famous MMTimer. Is just a
maximum retry counter, when that's exceeded I want to send a notice to
client:
if( ui_retry_counter<MAX_RETRY_COUNT )
{
Send_Comm( buffer_out );
++ui_retry_counter; //That counter is reset in another
place, and thats another issue, Don't worry about that.
}
else
{
//Here I tried to send a message to client informing that a
timeout occourred
//Send_socket();!!!
}
If youare not using a multimedia timer to manage your communication, why d=
id you say
I'm having another trouble and is happening when I call the same
function from a multimedia timer.
why do you choose to continue trying to do it this way?
Well, with the code posted above maybe you'll finally understand that
the MAIN reason for me to use a MMtimer is to send frames through
serial port.
I'm not asking how can I send a socket from a MMTimer!!!
I understood why it can't be done, but SINCE I CAN ONLY (or I think
so) detect this condition inside MMTimer that's why I've tried to send
a socket inside that MMTimer. I'm asking an alternative of how to
send a socket when this condition occours. Now I understood that it
can't be done, and I'm not trying again.
I DON'T MIND if I need to send that socket outside MMTimer, that's NOT
A REQUISITE. I'm was only asking what alternative could I do.
Please don't get angry by my words, I'm sure that you didn't
understood my problem due my bad english, I need more practice ;).