Re: CANNOT receive UDP data in SERVICE program



On command prompt type 'netstat -anop UDP' and check whether PORT1 is opened
by service process ID or not (also check the Local Address).

--

Farooque Khan
Project Manager
Infospectrum India Pvt. Ltd.
farooque@xxxxxxxxxxxxxxxxx
Phone: +91 712 229 3711
www.info-spectrum.com

This e-mail may contain confidential or proprietary information. If you are
not the intended recipient please notify the author by replying to this
e-mail and please note that use, disclosure, distribution, copying or
printing of this e-mail or its attachments is strictly prohibited and may be
unlawful. Whilst this e-mail has been checked for viruses, the sender takes
no responsibility and recipients are advised to undertake their own checks.


"GrepAll" <GrepAll@xxxxxxxxx> wrote in message
news:1187331810.184970.29880@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
More information:

I run the server program on the same machine with the one on which the
client service runs, and the recvfrom can get data correctly.

Any advice?

On 8 16 , 10 14 , GrepAll <Grep...@xxxxxxxxx> wrote:
Here is a strange problem, I cannot receive UDP data in the SERVICE
program while it works well in normal Win32 APP.

Problem description:

It's a service program running in the client machine and it works
following these steps:
1. Broadcast online request which brings local command socket port
number #PORT1 (the server program will later send command data to this
port);
2. Create an UDP socket #SOCK1 and bind the socket with #PORT1;
3. Call setsockopt to set a 5000ms TIMEOUT option on #SOCK1;
4. Call recvfrom on #SOCK1 to receive and process server command.

If I build this program as Win32 APP, it works well. But if I build it
as a Win32 service, server program can receive the broadcast data,
while the recvfrom always returns 10060(WSAETIMEDOUT).
In fact I can see the command data in Sniffer, the port number is
right.

Anybody knows the reason?




.