MONHSZSTRUCTA 结构体在 Dynamic Data Exchange Management Library(DDEML)中用于描述 DDEML 监视事件中字符串句柄的信息。这个结构体通常在监视事件回调函数中使用,提供有关字符串句柄的详细信息。以下是 MONHSZSTRUCTA 结构体的定义:typedef struct tagMONHSZSTRUCTA { UINT cb; // 结构体的大小,用于版本控制 DWORD dwTime; // 事件发生的时间 HANDLE hTask; // 任务的句柄 DWORD dwRet; // 事件处理的返回值 UINT wType; // 事件类型 UINT wFmt; // 数据格式 HSZ hsz; // 字符串句柄 ULONG_PTR dwData1; // 用户定义的数据1 ULONG_PTR dwData2; // 用户定义的数据2 CONVCONTEXT cc; // 与事件...
MONERRSTRUCT 结构体用于在 Dynamic Data Exchange Management Library(DDEML)中描述 DDEML 监视事件中的错误信息。以下是 MONERRSTRUCT 结构体的定义:typedef struct tagMONERRSTRUCT { UINT cb; // 结构体的大小,用于版本控制 DWORD dwTime; // 事件发生的时间 HANDLE hTask; // 任务的句柄 DWORD dwRet; // 事件处理的返回值 UINT wType; // 事件类型 UINT wFmt; // 数据格式 HCONV hConv; // 与事件相关的 DDE 会话的句柄 HSZ hsz1; // 字符串句柄1 HSZ hsz2; // 字符串句柄2 HDDEDATA hData; // 与事件相关的 DDE 数据的句柄 ULONG_PTR dwData1; ...
在 Windows API 的 Dynamic Data Exchange Management Library(DDEML)中,MONCONVSTRUCT 结构体用于描述 DDEML 的监视事件中与 DDE 会话相关的信息。以下是 MONCONVSTRUCT 结构体的定义:typedef struct tagMONCONVSTRUCT { UINT cb; // 结构体的大小,用于版本控制 DWORD dwTime; // 事件发生的时间 HANDLE hTask; // 任务的句柄 DWORD dwRet; // 事件处理的返回值 UINT wType; // 事件类型 UINT wFmt; // 数据格式 HCONV hConvClient; // 客户端 DDE 会话的句柄 HCONV hConvServer; // 服务器端 DDE 会话的句柄 HSZ hszSvc; // 服务名字符串句柄 HSZ hszTopic; ...
MONCBSTRUCT 是在 Dynamic Data Exchange Management Library(DDEML)中定义的一个结构,用于描述 DDEML 的监视事件(monitoring events)。此结构提供有关 DDE 事务的信息。以下是 MONCBSTRUCT 结构的定义:typedef struct tagMONCBSTRUCT { UINT cb; // 结构体的大小,用于版本控制 DWORD dwTime; // 事件发生的时间 HANDLE hTask; // 任务的句柄 DWORD dwRet; // 事件处理的返回值 UINT wType; // 事件类型 UINT wFmt; // 数据格式 HCONV hConv; // 与事件相关的 DDE 会话的句柄 HSZ hsz1; // 字符串句柄1 HSZ hsz2; /...
HSZPAIR 结构是在 Dynamic Data Exchange Management Library(DDEML)中用于表示字符串句柄对的结构。这个结构通常在 DDEML 编程中用于指定 DDE 事务的参与方。以下是 HSZPAIR 结构的定义:typedef struct tagHSZPAIR { HSZ hszSvc; // 服务名字符串句柄 HSZ hszTopic; // 话题字符串句柄} HSZPAIR, *PHSZPAIR; hszSvc: 服务名字符串句柄,表示 DDE 事务的服务名。 hszTopic: 话题字符串句柄,表示 DDE 事务的话题。这个结构体通常在诸如 DdeConnect 或 DdeClientTransaction 等函数的参数中使用,用于指定 DDE 事务的参与方。以下是一个简单的示例,演示了如何使用 HSZPAIR 结构:#include <Ddeml.h>// ...HSZPAIR hszPair;HCONV hConv;// 获取服务名和话题的字符串句柄HSZ hszService = DdeCreateStringH...
CONVINFO 结构是 Dynamic Data Exchange Management Library(DDEML)中的一个结构体,用于保存关于 DDE 会话的信息。以下是 CONVINFO 结构的定义:typedef struct tagCONVINFO { DWORD cb; // 结构体的大小,用于版本控制 DWORD wFlags; // 会话的标志 DWORD wFmt; // 格式标识符 DWORD wConvst; // 会话的状态 DWORD wLastError; // 最后的错误码 HCONV hConvPartner; // 伙伴会话的句柄 HSZ hszSvcPartner; // 服务名字符串句柄 HSZ hszServiceReq; // 服务请求字符串句柄 HSZ hszTopic; // 话题字符串句柄 HSZ hszItem; // 项字符串句柄 DWORD wFmtPartner; // ...
CONVCONTEXT 是一个结构体,用于描述 DDE(Dynamic Data Exchange)会话的上下文信息。这个结构体通常在 DDEML 编程中使用,用于设置和检索与 DDE 会话相关的属性。以下是 CONVCONTEXT 结构体的定义:typedef struct tagCONVCONTEXT { UINT cb; // 结构体的大小,用于版本控制 UINT wFlags; // 会话的标志 UINT wCountryID; // 国家/地区标识符 int iCodePage; // 代码页 DWORD dwLangID; // 语言标识符 DWORD dwSecurity; // 安全标识符 DWORD qos; // 服务质量标识符 SECURITY_QUALITY_OF_SERVICE qosw; // 服务质量信息} CONVCONTEXT, *PCONVCONTEXT;各个字段的含义如...
在 DDEML(Dynamic Data Exchange Management Library)中,PFNCALLBACK 是一个回调函数类型的定义。回调函数用于处理 DDE 事件,它会在发生特定事件时由 DDEML 调用。以下是 PFNCALLBACK 的定义:typedef HDDEDATA (CALLBACK* PFNCALLBACK)( UINT wType, UINT wFmt, HCONV hConv, HSZ hsz1, HSZ hsz2, HDDEDATA hData, ULONG_PTR dwData1, ULONG_PTR dwData2);PFNCALLBACK 的参数含义如下: wType: 指定 DDEML 事件类型,例如 XTYP_CONNECT、XTYP_ADVREQ 等。 wFmt: 指定数据格式。 hConv: 与事件相关的 DDE 会话的句柄。 hsz1 和 hsz2: 字符串句柄,用于传递与事件相关的字符串。 hData: 与事件相关的数据句柄。 dwData1 和 dwData2: 用户定义的数据,可以用于...
DdeUninitialize 函数用于释放 Dynamic Data Exchange Management Library(DDEML)的资源并终止 DDEML 库的使用。以下是 DdeUninitialize 函数的基本声明:BOOL DdeUninitialize( DWORD idInst); idInst: DDEML 实例的标识符,标识了调用这个函数的应用程序的实例。应用程序在使用 DDEML 功能后,当不再需要使用 DDEML 时,可以调用 DdeUninitialize 来释放相应的资源。这个函数应该与 DdeInitialize 函数成对调用。下面是一个简单的示例:#include <Ddeml.h>// ...DWORD idInst; // 从 DdeInitialize 获得的 DDEML 实例标识符// 使用 DDEML 功能// 在程序结束或不再需要 DDEML 功能时调用BOOL result = DdeUninitialize(idInst);if (result) { // DDEML 资源成功释放} else { // 处...
DdeUnaccessData 函数是 Dynamic Data Exchange Management Library(DDEML)中的函数之一,用于标识由 DdeAccessData 函数获取的内存区域不再使用。以下是 DdeUnaccessData 函数的基本声明:BOOL DdeUnaccessData( HCONV hConv, HDDEDATA hData); hConv: 一个标识 DDE 会话的句柄。 hData: 由 DdeAccessData 返回的数据句柄。这个函数用于通知 DDEML 库,应用程序已经完成对 DdeAccessData 获取的数据的访问,不再需要访问该数据。当应用程序调用 DdeAccessData 获取数据后,使用 DdeUnaccessData 来标识完成对该数据的访问。这是一个简单的示例:#include <Ddeml.h>// ...HCONV hConv; // DDE 会话句柄HDDEDATA hData; // 数据句柄LPBYTE pData; // 数据缓冲区hDat...
DdeQueryStringW 函数是在 Dynamic Data Exchange Management Library(DDEML) 中的 Unicode 版本函数,用于检索字符串句柄对应的字符串。这个函数的声明通常在 Ddeml.h 头文件中。以下是该函数的基本声明:DWORD DdeQueryStringW( DWORD idInst, HSZ hsz, LPWSTR psz, DWORD cchMax, int iCodePage); idInst: DDEML 实例的标识符,标识了调用这个函数的应用程序的实例。 hsz: 字符串的句柄。 psz: 用于接收字符串的缓冲区,是 LPWSTR 类型。 cchMax: 缓冲区的大小,以字符为单位。 iCodePage: 代码页标识,指定了返回字符串的代码页。这个函数的功能与 ANSI 版本的 DdeQueryStringA 类似,不同之处在于它使用 Unicode 字符串。这是一个简单的示例:#include <Ddeml.h>// ...DWORD idInst; // 从 DdeIniti...
DdeQueryStringA 函数是在 Dynamic Data Exchange Management Library(DDEML) 中的一个函数,用于检索字符串句柄对应的字符串。这个函数的声明通常在 Ddeml.h 头文件中,用于 ANSI 字符集。以下是该函数的基本声明:DWORD DdeQueryStringA( DWORD idInst, HSZ hsz, LPSTR psz, DWORD cchMax, int iCodePage); idInst: DDEML 实例的标识符,标识了调用这个函数的应用程序的实例。 hsz: 字符串的句柄。 psz: 用于接收字符串的缓冲区。 cchMax: 缓冲区的大小,以字符为单位。 iCodePage: 代码页标识,指定了返回字符串的代码页。这个函数的目的是从 DDEML 字符串句柄中检索字符串。它会将字符串复制到指定的缓冲区中,并返回实际复制的字符数(不包括终止符)。如果缓冲区大小不足以容纳整个字符串,函数将截断字符串以适应缓冲区,并返回实际复制的字符数。请注意,在这个函数的名称中,后缀 "A"...
DdeQueryConvInfo 函数是 Windows 操作系统中的一个函数,用于检索关于 DDE(动态数据交换)会话的信息。该函数的声明位于 Ddeml.h 头文件中。以下是 DdeQueryConvInfo 函数的基本声明:BOOL DdeQueryConvInfo( HCONV hConv, DWORD idTransaction, PCONVINFO pConvInfo); hConv: 一个标识 DDE 会话的句柄。 idTransaction: 指定事务标识符,用于标识与 DDE 会话相关的交易。 pConvInfo: 一个指向 CONVINFO 结构的指针,该结构用于接收 DDE 会话的信息。CONVINFO 结构包含有关 DDE 会话的信息,如连接状态、事务数等。结构定义可能类似于以下形式:typedef struct tagCONVINFO { DWORD cb; DWORD wFlags; DWORD wFmt; DWORD wConvst; DWORD wLastError; HCONV hConv...
DdePostAdvise 函数是 Dynamic Data Exchange(DDE)管理库中的一个函数,用于向 DDE 客户端发送通知,以通知其关注的数据已经改变。以下是该函数的基本信息:BOOL DdePostAdvise( _In_ DWORD idInst, _In_ HSZ hszTopic, _In_ HSZ hszItem);参数说明: idInst:DDE 实例的标识符,用于标识 DDE 管理库的实例。 hszTopic:通知关注的主题的字符串句柄。 hszItem:通知关注的数据项的字符串句柄。函数返回一个 BOOL 类型的值,表示操作是否成功。如果成功,返回值为 TRUE,否则为 FALSE。DdePostAdvise 函数通知 DDE 客户端,关注的数据已经发生了变化。这个函数用于通知 DDE 客户端,使其能够采取相应的操作来获取新的数据。请注意,DDE 是一个相对较旧的技术,随着时间的推移,更现代的通信机制如 COM 和 RPC 变得更为常见。如果可能的话,推荐使用更新的技术。
DdeNameService 函数是 Dynamic Data Exchange(DDE)管理库中的函数之一,用于向 DDE 系统注册或注销服务名称。以下是该函数的基本信息:HDDEDATA DdeNameService( _In_ DWORD idInst, _In_ HSZ hsz1, _In_ HSZ hsz2, _In_ UINT afCmd);参数说明: idInst:DDE 实例的标识符,用于标识 DDE 管理库的实例。 hsz1:要注册或注销的服务名称的字符串句柄。 hsz2:要注册或注销的服务的类别名称的字符串句柄。 afCmd:指定注册或注销的命令。可以是 DNS_REGISTER(注册)或 DNS_UNREGISTER(注销)。函数返回一个 HDDEDATA 类型的句柄,表示操作是否成功。如果失败,返回值为 NULL。DdeNameService 函数用于向 DDE 系统注册或注销服务名称。服务名称是 DDE 中标识一个应用程序的唯一名称。类别名称用于将服务分组在一起。通过注册服务名称,应用程序可以通知 DDE 系统它提供了哪些服务,其他应用程序可...
DdeInitializeA 函数是 Dynamic Data Exchange(DDE)管理库中的函数之一,用于初始化 DDE 管理库。以下是该函数的基本信息:UINT DdeInitializeA( _Inout_ LPDWORD pidInst, _In_ PFNCALLBACK pfnCallback, _In_ DWORD afCmd, _In_ DWORD ulRes);参数说明: pidInst:指向一个 DWORD 变量的指针,用于接收 DDE 实例的标识符。在成功初始化时,此标识符将被填充。 pfnCallback:指向 DDE 回调函数的指针,用于处理 DDE 事件和通知。 afCmd:DDE 初始化的选项标志,控制 DDE 库的行为。 ulRes:DDE 库的初始资源。函数返回一个 UINT 类型的值,表示初始化是否成功。如果成功,返回值为 DDE 实例的标识符,如果失败,返回值为 DMLERR_NO_ERROR 之外的错误代码。DdeInitializeA 用于初始化 DDE 管理库,创建 DDE...
在 Win32 API 中,DdeGetLastError 函数不是一个直接存在的函数。然而,DDE 库(Ddeml.h)中提供了 DdeGetLastError 宏。以下是该宏的基本信息:#define DdeGetLastError(idInst) (*((UINT *)(idInst)))这个宏用于获取 DDE 操作的错误代码。它的参数是 DDE 实例的标识符 idInst,该标识符在你的应用程序初始化 DDE 服务时获得。此宏会返回一个 UINT 类型的错误代码。在使用这个宏时,请确保你已经正确初始化了 DDE 服务并检查返回值,以确保你的 DDE 操作没有出错。如果有错误发生,可以使用这个宏获取错误代码,以便进行调试或错误处理。请注意,DDE 是一个相对较旧的技术,随着时间的推移,更现代的通信机制如 COM 和 RPC 变得更为常见。如果可能的话,推荐使用更新的技术。
DdeFreeStringHandle 函数是 Dynamic Data Exchange(DDE)管理库中的一个函数,用于释放由 DdeCreateStringHandle 或 DdeCreateStringHandleA 创建的字符串句柄。以下是该函数的基本信息:BOOL DdeFreeStringHandle( _In_ DWORD idInst, _In_ HSZ hsz);参数说明: idInst:DDE 实例的标识符,用于标识 DDE 管理库的实例。 hsz:要释放的字符串句柄的句柄。函数返回一个 BOOL 类型的值,表示操作是否成功。如果成功,返回值为 TRUE,否则为 FALSE。在 DDE 中,字符串句柄用于标识字符串,而不是直接使用字符串内容,以提高效率和减少资源占用。DdeFreeStringHandle 用于释放由 DdeCreateStringHandle 或 DdeCreateStringHandleA 创建的字符串句柄,以便在不再需要时释放相关资源。请注意,DDE 是一个相对较旧的技术,随着时间的推移,更现代的通信机制如 COM 和 RPC 变得更...
DdeFreeDataHandle 函数是 Dynamic Data Exchange(DDE)管理库中的一个函数,用于释放由 DdeCreateDataHandle 创建的 DDE 数据句柄。以下是该函数的基本信息:BOOL DdeFreeDataHandle( _In_ DWORD idInst, _In_ HDDEDATA hData);参数说明: idInst:DDE 实例的标识符,用于标识 DDE 管理库的实例。 hData:要释放的 DDE 数据句柄的句柄。函数返回一个 BOOL 类型的值,表示操作是否成功。如果成功,返回值为 TRUE,否则为 FALSE。在 DDE 中,数据句柄表示一个包含数据的对象。DdeFreeDataHandle 用于释放由 DdeCreateDataHandle 创建的数据句柄,以便在不再需要时释放相关资源。请注意,DDE 是一个相对较旧的技术,随着时间的推移,更现代的通信机制如 COM 和 RPC 变得更为常见。如果可能的话,推荐使用更新的技术。
DdeEnableCallback 函数是 Dynamic Data Exchange(DDE)管理库中的一个函数,用于启用或禁用与指定 DDE 通道相关联的回调函数。以下是该函数的基本信息:BOOL DdeEnableCallback( _In_ DWORD idInst, _In_ HCONV hConv, _In_ UINT wCmd, _In_ BOOL fEnable);参数说明: idInst:DDE 实例的标识符,用于标识 DDE 管理库的实例。 hConv:要启用或禁用回调的 DDE 通道的句柄。 wCmd:指定要启用或禁用的回调类型。 fEnable:如果为 TRUE,则启用回调;如果为 FALSE,则禁用回调。函数返回一个 BOOL 类型的值,表示操作是否成功。如果成功,返回值为 TRUE,否则为 FALSE。在 DDE 中,回调函数用于在通信过程中通知应用程序发生的事件,例如数据到达、连接建立或连接断开等。DdeEnableCallback 可以用于启用或禁用这些回调。请注意,DDE 是一个相对较旧的技术,随着时间的推移,更现代的通信机制如 COM 和 R...
最新文章