EdbgRegisterClient (Development Workstation)
This function registers a client with Edbg.dll for Ethernet debug service.
BOOL EdbgRegisterClient(
UCHAR *
pId
,
char *
ServiceName
,
UCHAR
Flags
,
char *
EshellServer
,
char *
DeviceName );
Parameters
pId
[out] Pointer to an identifier to pass to Edbg* functions---for example, EdbgSend or EdbgRecv.ServiceName
[in] Character that contains the service name, NULL terminated, up to a length equal in bytes to MAX_SVCNAME_LEN.Flags
[in] Unsigned character that contains a flag for configuring Ethernet debugging which can be one of the following:Value Description EDBG_CFGFL_STOP_AND_WAIT Stop after each transmission and wait for acknowledgment. EDBG_CFGFL_NOACKS Do not acknowledge data messages. EDBG_CFGFL_MULTIINST Support multiple instances of clients. EshellServer
[in] Character that contains the name of the development workstation on which the master Eshell program is running.DeviceName
[in] Character that contains the name of the device with which to communicate; for example, "Odo42" may be the device name for the Hitachi D9000 hardware development platform (ODO) sample implementation.
Return Values
TRUE indicates success. FALSE indicates failure.
Remarks
Each service is identified by a unique name. Certain service names (for example, DBGMSG) are reserved for default operating system (OS) services. Other names may be used for user-defined applications. Registration does not finish until a peer client has registered for this service. The address of the target device is determined by communicating with Eshell on the host specified. (If Eshell is not running, EdbgRegisterClient blocks, waiting for Eshell to be started). As soon as the address information for the target device is obtained, an attempt is made to connect with the peer client on the target device; in order for this to occur, the service name must have been registered on the target device.
If the EDBG_CFGFL_MULTIINST flag is specified, the call will not fail if there is another client connected to the same service. Note that this flag allows multiple pipes to be established using the same name, but it does not allow multiple desktop applications to talk to a single client on the device.
This function is implemented in the Edbg.dll that is loaded by an application on the development workstation; it is also implemented in Ethdbg.lib, which is linked into the kernel on the target device.
Requirements
Runs on | Versions | Defined in | Include | Link to |
---|---|---|---|---|
Windows CE OS | 2.10 and later | Ethdbg.h | Edbg.dll |