
13-22
Dynamic Data Exchange
This needs to be extracted from the
DDEDATA
message in order to read the
appropriate values. One way of doing this is shown below.
/
****************************************************************
FUNCTION: ClientReceiveData
PURPOSE: Called when client application receives WM_DDE_DATA message.
****************************************************************/
void
ClientReceiveData(hwndClientDDE, hwndServerDDE, lParam)
HWND hwndClientDDE;
HWND hwndServerDDE;
LONG lParam;
{
DDEDATA FAR * lpDDEData;
LPDDE_CURSINF lpDdeCursInf;
BOOL bRelease;
BOOL bAck;
if (!(lpDDEData = (DDEDATA FAR *)GlobalLock(LOWORD(lParam))) ||
(lpDDEData->cfFormat != CF_TEXT))
{
PostMessage(hwndServerDDE,
WM_DDE_ACK, hwndClientDDE,
MAKELONG(0, HIWORD(lParam))); /* Negative ACK */
}
else
{
/* Read Row/Column values in static vars */
lpDdeCursInf = (LPDDE_CURSINF)lpDDEData->Value;
CurrentCursRow = lpDdeCursInf->Row;
CurrentCursCol = lpDdeCursInf->Col;
if (lpDDEData->fAckReq)
{
/* return ACK or NACK */
PostMessage(hwndServerDDE,
WM_DDE_ACK,
hwndClientDDE,
MAKELONG( (bAck? 0x8000:0),
HIWORD(lParam)));
}
bRelease = lpDDEData->fRelease;
GlobalUnlock(LOWORD(lParam));
if (bRelease)
GlobalFree(LOWORD(lParam));
}
return;
}
Содержание -05W
Страница 1: ...TeemTalk 05W 07W 11W User s Guide...
Страница 38: ...2 24 Getting Started Notes...
Страница 58: ...3 20 Keyboard Configuration Notes...
Страница 152: ...8 20 File Transfer Notes...
Страница 162: ...9 10 ICL FTF File Transfer Notes...
Страница 324: ...13 32 Dynamic Data Exchange Text1 i 12 LinkItem 0 i 80 Text1 i 12 LinkMode 1 Next i End If End Sub...
Страница 336: ...C 6 Key Reference Numbers Notes...
Страница 360: ...E 16 Host Command Summary Notes...
Страница 370: ...Index 10 Index X XMODEM 8 1 XMODEM 1K 8 1 Y YMODEM Batch 8 2 Z ZMODEM 8 2 Zoom Button 2 17...