LabWindows/CVI

Content Type
Programming Language
Current manual

ServerDDEWrite

ServerDDEWrite

int ServerDDEWrite (unsigned int conversationHandle, char itemName[], unsigned int dataFormat, void *dataPointer, size_t dataSize, unsigned int timeOut);

Purpose

Allows your program, acting as a DDE server, to write data to a DDE client application when the client requests data.

Call this function only when your serverCallbackFunction receives a DDE_REQUESTDATA message. If you call the function at any other time, ServerDDEWrite stores the data until the client requests the data. If you call the function multiple times on the same conversation before the client requests the data, ServerDDEWrite appends each new data set to the buffer that contains the stored data.

If the client has a hot or warm link and you need to send data other than in response to a DDE_REQUESTDATA message, use AdviseDDEDataReady or BroadcastDDEDataReady.

If successful, ServerDDEWrite returns the number of bytes written. Otherwise, ServerDDEWrite returns a negative error code.

Parameters

Input
Name Type Description
conversationHandle unsigned int The conversation handle that uniquely represents the connection between the server and the client.
itemName char [] The name that uniquely identifies the object to which the data refers; for example, an Excel cell name. Each server defines its own set of valid item names.

The name must be a string of length from 1 to 255. itemName is case insensitive.
dataFormat unsigned int One of the data formats Microsoft Windows recognizes. Windows supports the following valid data formats:

CF_TEXT
CF_BITMAP
CF_METAFILEPICT
CF_SYLK
CF_DIF
CF_TIFF
CF_OEMTEXT
CF_DIB
CF_PALETTE
CF_PENDATA
CF_RIFF
CF_WAVE
CF_OWNERDISPLAY
CF_DSPTEXT
CF_DSPBITMAP
CF_DSPMETAFILEPICT


Refer to www.msdn.com for more information about DDE programming and the meaning of each data format type.
dataPointer void * The pointer to the data to be written.

NULL is not allowed unless dataSize is zero.
dataSize size_t The number of bytes to write.

An error is returned if you pass a value greater than INT_MAX.
timeOut unsigned int The number of milliseconds to wait for a DDE read or write operation to complete.

If a value of zero is passed, then a default timeout of 5000 milliseconds is used.

Return Value

Name Type Description
status int Return value indicating whether the function was successful.

A negative number represents the error code. For functions that read or write data (ClientDDERead, ClientDDEWrite, ServerDDEWrite, AdviseDDEDataReady, BroadcastDDEDataReady), if the function was successful, the return value is the number of bytes transferred. For other DDE Support Library functions, zero represents successful execution.

The enumerated type that specifies the absolute values of the error codes is declared in ddesupp.h. For instance, if an invalid parameter is passed, kDDE_InvalidParameter is returned.

Currently, a maximum of 255 concurrent conversations are allowed at any one time. If you exceed this limit, –kDDE_TooManyConversations will be returned.

Error codes from –16 to –33 are native DDEML errors, which correspond to Windows DDE error codes starting from 0x4000.

Additional Information

Library: DDE Support Library

Include file: ddesupp.h

LabWindows/CVI compatibility: LabWindows/CVI 3.0 and later

Was this information helpful?