The NDDESHAREINFO structure gets and sets DDE share attributes maintained by the NetDDE Share Database Manager (DSDM). The security descriptor associated with each DDE share is not passed through this structure but is accessed through specific functions. The NetDDE DSDM API accepts this structure for set functions; for get functions, the DSDM returns the structure packed into the supplied buffer along with the data referenced by the members lpszShareName, lpszAppTopicList, and lpszItemList.
typedef struct _NDDESHAREINFO {
LONG lRevision;
LPTSTR lpszShareName;
LONG lShareType;
LPTSTR lpszAppTopicList;
LONG fSharedFlag;
LONG fService;
LONG fStartAppFlag;
LONG nCmdShow;
LONG qModifyId[2];
LONG cNumItems;
LPTSTR lpszItemList;
}NDDESHAREINFO;
Members
lRevision
Specifies the revision level of the NDDESHAREINFO structure. Currently, the revision level is 1.
lpszShareName
Points to a buffer containing a null-terminated string that specifies the name of the share. This string must be no more than MAX_NDDESHARENAME characters long.
lShareType
Specifies the DDE share type(s). A DDE share can assume more than one type. This member can be a combination of the following supported DDE share types:
Share type | Meaning |
SHARE_TYPE_OLD | Specifies that the share contains a DDE application/topic pair. |
SHARE_TYPE_NEW | Specifies that the share contains an OLE application/topic pair. |
SHARE_TYPE_STATIC | Specifies that the share contains a static application/topic pair. |
lpszAppTopicList
Points to a buffer containing null-terminated strings for the DDE, OLE, and static application/topic pairs. The buffer should be in the following format:
<DDE application name>|<DDE topic name>\0
<OLE application name>|<OLE topic name>\0
<static application name>|<static topic name>\0\0
fSharedFlag
Specifies whether the share is accessible to remote clients for linking. If this flag is set to FALSE, the DDE share will not allow remote users to communicate through it by using DDE. However, local users can still communicate through the DDE share. Local client links are always implied if the associated DACL grants access.
fService
If this flag is set, the DDE share will not check whether the current user has set it as trusted before before allowing DDE communication through it.
fStartAppFlag
If this flag is set and the share is trusted to start applications, NetDDE will attempt to start the application specified by lpszAppTopicList if it cannot initially start a DDE conversation with the application.
nCmdShow
When NetDDE starts an application to initiate a DDE conversation with it, this value is sent to the application by the nCmdShow parameter of the WinMain function. It defines the preferred mode for the application window to be shown in. This parameter is significant only if fStartAppFlag is active. The logged on user in whose context the application is started can also override this option when promoting the share to trusted status. The default for this member is SW_SHOWMAXIMIZED.
qModifyId
An 8-byte serial number that indicates the modification serial number of the DDE share. Every time the DDE share is modified by a NDdeShareSetInfo or NDdeSetShareSecurity call, these values are changed.
cNumItems
Specifies the number of items listed in lpszItemList. If cNumItems is zero, then lpszItemList is empty, and the share information and associated security descriptor apply to all items serviced by the associated application.
lpszItemList
Points to a buffer containing null-terminated strings that specify the items the client application in a DDE transaction can request or start advise loops on. If no items are listed, the DDE share allows any item to be used. The number of items in the list must match the cNumItems count.
See Also