home *** CD-ROM | disk | FTP | other *** search
- /**********************************************************************
-
- RMXDDE Library Functions Prototypes
-
- ***********************************************************************/
-
- #ifndef RMXDDE_H
- #define RMXDDE_H
-
- #ifndef WORD
- #define WORD unsigned short
- #endif
-
- typedef void (*LINKFUNCPTR)
- (WORD conversation_id, char *topic_name_p,
- char *data_item_p,
- char *data_value_p);
-
- typedef WORD (*CONVFUNCPTR)
- (char *client_name_p, char *service_name_p,
- char *topic_name_p, WORD conversation_id,
- WORD function_code);
-
- typedef WORD (*DATAFUNCPTR)
- (char *client_name_p, char *service_name_p,
- char *topic_name_p, WORD conversation_id,
- char *data_item_p, char *data_buf_p,
- WORD data_buf_size,WORD function_code);
-
-
- typedef struct tCONFIGBUF
- {
- WORD dummy;
- } CONFIGBUF;
-
- /**********************************************************************
-
- Mandatory Operations
-
- ***********************************************************************/
-
- void dde_library_init ( CONFIGBUF *config_buf_p,
- WORD *status_p
- );
-
- /**********************************************************************
-
- Simple Client Operations
-
- ***********************************************************************/
-
- WORD client_dde_initiate( char *server_machine_name_p,
- char *service_name_p,
- char *topic_name_p,
- LINKFUNCPTR link_callback_p,
- WORD *status_p
- );
-
- void client_dde_terminate ( WORD conversation_id,
- WORD *status_p
- );
-
- void client_dde_poke ( WORD conversation_id,
- char *data_item_name_p,
- char *data_value_p,
- WORD *status_p
- );
-
- void client_dde_request ( WORD conversation_id,
- char *data_item_name_p,
- char *data_buf_p,
- WORD data_buf_size,
- WORD *status_p
- );
-
- void client_dde_execute ( WORD conversation_id,
- char *command_p,
- WORD *status_p
- );
-
- /**********************************************************************
-
- Client Link Operations
-
- ***********************************************************************/
-
- void client_dde_open_hot_link ( WORD conversation_id,
- char *data_item_name_p,
- WORD *status_p
- );
-
-
- void client_dde_open_warm_link ( WORD conversation_id,
- char *data_item_name_p,
- WORD *status_p
- );
-
- void client_dde_close_link ( WORD conversation_id,
- char *data_item_name_p,
- WORD *status_p
- );
-
- void client_dde_run_application ( char *machine_name_p,
- char *command_p,
- WORD flags,
- WORD *status_p
- );
-
- /**********************************************************************
-
- Server Operations
-
- ***********************************************************************/
-
- void server_dde_register ( char *local_machine_p,
- char *service_name_p,
- CONVFUNCPTR conv_callback_p,
- DATAFUNCPTR data_callback_p,
- WORD *status_p
- );
-
-
- void server_dde_update_link ( WORD conversation_id,
- char *data_item_name_p,
- char *data_value_p,
- WORD *status_p
- );
-
- void server_dde_terminate ( WORD conversation_id,
- WORD *status_p
- );
-
-
- /* DDE command identifiers used by RMXDDE Library */
- /* Note: These identifiers are same as the Windows DDE Message Identifiers */
-
- #define DDE_FIRST 0x03E0
-
- /* Conversation Callback Function Codes */
-
- #define DDE_INITIATE (DDE_FIRST)
- #define DDE_TERMINATE (DDE_FIRST+1)
-
- /* Data Callback Function Codes */
-
- #define DDE_ADVISE (DDE_FIRST+2)
- #define DDE_HOT_LINK DDE_ADVISE
- #define DDE_UNADVISE (DDE_FIRST+3)
- #define DDE_CLOSE_LINK DDE_UNADVISE
- #define DDE_REQUEST (DDE_FIRST+6)
- #define DDE_POKE (DDE_FIRST+7)
- #define DDE_EXECUTE (DDE_FIRST+8)
- #define DDE_WARM_LINK (DDE_FIRST+9) /* Not Used by Protocol */
-
- /* Protocol Messages not seen by application */
-
- #define DDE_ACK (DDE_FIRST+4)
- #define DDE_DATA (DDE_FIRST+5)
- #define DDE_RUN_APPLICATION (DDE_FIRST+10)
-
- /* Flags for dde_client_run_application() */
-
- #define DDE_NORMAL 0
- #define DDE_MAXIMIZED 1
- #define DDE_MINIMIZED 2
-
- #define DDE_OK (0)
- #define DDE_NOT_OK (-1)
-
- #endif
-