ARIA-Users
Date Index
Thread Index
[Aria-users] Using ArClientBase and ArServerBase with UDP protocol
- To: XXXXXXXX
- Subject: [Aria-users] Using ArClientBase and ArServerBase with UDP protocol
- From: Marko Budisic <XXXXXXXX>
- Date: Tue, 18 Apr 2006 19:44:12 +0200
- Content-Transfer-Encoding: 7bit
- Content-Type: text/plain; charset=ISO-8859-2; format=flowed
- Delivered-To: XXXXXXXX
- Delivered-To: XXXXXXXX
- Old-Return-Path: <XXXXXXXX>
- Resent-Date: Tue, 18 Apr 2006 13:43:09 -0400 (EDT)
- Resent-From: XXXXXXXX
- Resent-Message-ID: <XXXXXXXX>
- Resent-Reply-To: XXXXXXXX
- Resent-Sender: XXXXXXXX
- User-Agent: Mozilla Thunderbird 1.0.7 (Windows/20050923)
Hello,
I am trying to use ArClientBase and ArServerBase classes to communicate
between a robot and a workstation. I would like to retain the structure
of client/server, which include announciong commands that are recognized
by the server, callback function addition etc. However, I would prefer
to use UDP protocol instead of TCP protocol. I am using VS2005 on WinXP.
If I understood the API correctly, sending data from the client side
should be done by request and requestOnce functions. Both functions use
TCP socket for sending data. I have tried inheriting from ArClientBase
class and overriding request functions to use UDP for sending data.
Unfortunately, at run-time, my program fails as it cannot interpret
myNameIntMap, which holds information about commands registered on
server side, correctly. In the debug mode, the object itself appears to
be corrupted, although precompiled functions (as dataExists and getName)
work properly.
I have searched the Internet for the solution with little success. The
only piece of information that I managed to find is that the problem
most likely arises due to different allocation spaces used by DLL
library and my executable.
Is there another (maybe more obvious way) of solving this problem? The
only thing I need to achieve is to get command code from the name
(similar to dataExists function, just to get the code as the return
value). Everything else would be achieved by inheritance and overriding.
If there is another approach altogether, I am interested to try it.
Thank you for your help
Marko Budisic