Conference Types, Structures, and Constants

Windows Conferencing API

# Conference Types, Structures, and Constants

## Conference Error Codes

    typedef DWORD CONFERR;

The return value of a conferencing function can be any one of the following values:

Error Code | Description
CONFERR_ACCESS_DENIED | Access to an object (file, user, etc.) was denied.
CONFERR_ALREADY_SHARED | The application is already shared
CONFERR_BUFFER_TOO_SMALL | The buffer pointed to by a parameter is not large enough for the operation
CONFERR_ENUM_COMPLETE | Enumeration complete
CONFERR_FILE_NOT_FOUND | The file was not found
CONFERR_FILE_RECEIVE_ABORT | The receiving of the file was canceled.
CONFERR_FILE_SEND_ABORT | The file send was canceled
CONFERR_FILE_TRANSFER | There was a problem transferring the file
CONFERR_INVALID_ADDRESS | The address is invalid or not found
CONFERR_INVALID_BUFFER | The buffer pointed to by a parameter is not valid for read/write.
CONFERR_INVALID_HCONF | The hConf parameter is not valid.
CONFERR_INVALID_HWND | The value passed to ConferenceShareWindow is not a valid hwnd
CONFERR_INVALID_OPERATION | The requested operation is not valid at this time.
CONFERR_INVALID_PARAMETER | One of the calling parameters is incorrect.
CONFERR_NO_APP_SHARING | Application Sharing is not currently available
CONFERR_NOT_SHARED | The application window is not currently shared
CONFERR_NOT_SHAREABLE | The application window can not be shared
CONFERR_OUT_OF_MEMORY | A function could not allocate sufficient memory to complete the operation.
CONFERR_PATH_NOT_FOUND | The path was not found
CONFERR_RECEIVE_DIR | There was a problem with the receive directory
CONFERR_SUCCESS | The function completed the requested operation successfully

## CONFADDR

    typedef struct tagConfAddr {
    	DWORD dwSize;
    	DWORD dwAddrType;
    	union {
    		DWORD dwIp;
    		PTSTR psz;
    		};
    } CONFADDR;

A CONFADDR structure describes the address of another machine.

dwSize
  Specifies the total size of the structure in bytes.
dwAddrType
  Specifies the type of address following this member. This can be one of the following:

  CONF_ADDR_IP | dwIp holds the IP address
  CONF_ADDR_MACHINENAME | psz is the name of a machine on the local network
  CONF_ADDR_PSTN | psz is the TAPI canonical telephone number
  CONF_ADDR_UNKNOWN | neither dwIp nor psz are used

dwIp
  The IP address as a set of 4 bytes.
psz
  A pointer to the address as a null-terminated string. The definition of this depends upon the dwAddrType field.

See also ConferenceConnect

## CONFDEST

    typedef struct tagConfDest {
    	DWORD dwSize;
    	DWORD dwFlags;
    	DWORD dwUserId;
    	DWORD dwReserved;
    	GUID  guid;
    } CONFDEST;

A CONFDEST structure defines a destination node within a conference.

dwSize
  Specifies the structure size in bytes.
dwFlags
  Specifies the destination flags for the transfer. When receiving the CONFN_DATA_SENT or CONFN_DATA_RECEIVED notifications, this will be set to one or more of the following:

  CONF_DF_BROADCAST | data was broadcast to everyone in the conference
  CONF_DF_PRIVATE | data was sent from one peer to another
  CONF_DF_DATA_SEGMENT_BEGIN | this is the start of a data block
  CONF_DF_DATA_SEGMENT_END | this is the end of a data block

dwUserId
  Specifies a unique user identification code. If this is 0, it implies everyone in the conference.
guid
  Specifies a unique application identifier GUID. The fields of this structure can be set to 0, if not required.

See also ConferenceSendData, ConferenceSendFile GUID

## CONFFILEINFO

    typedef struct tagConfFileInfo {
    	DWORD dwSize;
    	DWORD dwFileId;
    	DWORD dwReserved1;
    	DWORD dwFileSize;
    	DWORD dwReserved2;
    	DWORD dwBytesTransferred;
    	DWORD dwFileAttributes;
    	FILETIME ftCreationTime;
    	FILETIME ftLastAccessTime;
    	FILETIME ftLastWriteTime;
    	TCHAR szFileNameSrc[MAX_PATH];
    	TCHAR szFileNameDest[MAX_PATH];
    } CONFFILEINFO;

A CONFFILEINFO structure describes a file in the process of being transferred.

dwSize
  Specifies the structure size in bytes.
dwFileId
  Specifies a unique identifier for the file.
dwFileSize
  Specifies the size of the file, in bytes.
dwBytesTransferred
  Specfies the number of bytes that have been transferred.
dwFileAttributes
  Specifies the DOS file attributes.
ftCreationTime
  Specifies the creation time/date of the file.
ftLastAccessTime
  Specfies the last time/date the file was accessed.
ftLastWriteTime
  Specifies the last time/date the file was modified.
szFileNameSrc
  Specifies the original file name.
szFileNameDest
  Specifies the destination file name. This is only valid for the receiving process and may be not be the same as the original file name

See also ConferenceGetInfo, ConferenceSendFile ConferenceCancelTransfer

## CONFGUID

    typedef struct tagConfGuid {
    	DWORD   dwSize;
    	GUID    guid;
    	LPCTSTR pszApplication;
    	LPCTSTR pszCommandLine;
    	LPCTSTR pszDirectory;
    } CONFGUID;

A CONFGUID structure specifies the parameters passed to CreateProcess when an active conference receives a notification to invoke the application associated with the guid.

dwSize
  Specifies the structure size in bytes.
guid
  Specifies the unique application identifier GUID.
pszApplication
  Pointer to a null-terminated string that specifies the module to execute. The string should specify the full path and filename of the module to execute. If pszApplication is NULL, the module name must be the first white space-delimited token in the pszCommandLine string.
pszCommandLine
  Pointer to a null-terminated string that specifies the command line to execute. The pszCommandLine field can be NULL. In that case, the function uses the string pointed to by pszApplication as the command line.
pszDirectory
  Points to a null-terminated string that specifies the current drive and directory for the process. The string must be a full path and filename that includes a drive letter. This field may be NULL.

See also ConferenceSetInfo, ConferenceLaunchRemote,

## CONFINFO

    typedef struct tagConfInfo {
    	DWORD dwSize;
    	HCONF hConf;
    	DWORD dwMediaType;
    	DWORD dwState;
    	DWORD cUsers;
    	DWORD dwGCCID;
    	TCHAR szConferenceName[CONF_MAX_CONFERENCENAME];
    } CONFINFO;

A CONFINFO structure defines the current conference settings.

dwSize
  Specifies the structure size in bytes.
hConf
  The handle for the conference.
dwMediaType
  Specifies the media type. This may be a combination of one or more of the following:

  CONF_MT_DATA | Data conference
  CONF_MT_AUDIO | Audio is available
  CONF_MT_VIDEO | Video is available

  Use CONF_MT_ALL to specify all supported types.

dwState
  Specifies the current conference state. This may be one of the following:

  CONF_CS_INVALID | This is not a valid state
  CONF_CS_INITIALIZING | The conference is being initialized
  CONF_CS_ACTIVE | The conference is active
  CONF_CS_STOPPING | The conference is being terminated

cUsers
  The number of users in the conference.
dwGCCID
  The GCC conference identifier.
szConferenceName
  Specifies the null terminated name of the conference.

See also ConferenceGetInfo ConferenceConnect

## CONFNOTIFY

    typedef struct tagConfNotify {
    	DWORD dwSize;
    	DWORD dwUser;
    	DWORD dwFlags;
    	CONFNOTIFYPROC pfnNotifyProc;
    	GUID guid;
    } CONFNOTIFY;

A CONFNOTIFY structure specifies the notification callback routine for a process in a conference.

dwSize
  Specifies the structure size in bytes.
dwUser
  Available for use by the application. This is passed back to the notification callback as the dwUser parameter.
dwFlags
  Reserved for future use
pfnNotifyProc
  Specifies the address of the notification callback routine.
guid
  Specifies the unique application identifier GUID. A null guid (all zeros) should be used unless the application intends to send or receive data using ConferenceSendData. If a non-zero guid is specified, then the callback will receive notifications of incoming data.

An application must fill out the dwSize and pfnNotifyProc fields of this structure.

See also ConferenceGetInfo, ConferenceConnect, ConferenceSendData, ConfNotifyProc

## CONFRECDIR

    typedef struct tagConfRecDir {
    	DWORD dwSize;
    	TCHAR  szRecDir[MAX_PATH];
    } CONFRECDIR;

A CONFRECDIR structure describes the default directory for received files.

dwSize
  Specifies the structure size in bytes.
szRecDir
  Specifies the full path of the default directory for received files.

Note there is only one current receive directory for the local machine and it is saved across sessions.

See also ConferenceGetInfo, ConferenceSendFile

## CONFUSERINFO

    typedef struct tagConfUserInfo {
    	DWORD dwSize;
    	DWORD dwUserId;
    	DWORD dwFlags;
    	DWORD dwReserved;
    	TCHAR  szUserName[CONF_MAX_USERNAME];
    } CONFUSERINFO;

A CONFUSERINFO structure describes a single user in a conference.

dwSize
  Specifies the structure size in bytes.
dwUserId
  Specifies a unique value to identify a user within a conference.
dwFlags
  This may be a combination of any of the following:

  CONF_UF_DATA | The user is in the data conference
  CONF_UF_AUDIO | The user is participating in the audio conference
  CONF_UF_VIDEO | The user is displaying a video image
  CONF_UF_LOCAL | This indicates the local user

dwReserved
  Reserved for future use. This must be 0.
szUserName
  The null terminated string representing the user's name.

See also ConferenceGetInfo

## GUID

     typedef struct _GUID {
    	unsigned long   Data1;
    	unsigned short  Data2;
    	unsigned short  Data3;
    	unsigned char   Data4[8];
    } GUID;

The GUID structure holds a globally unique identifier (GUID), which identifies a particular object class and interface. This identifier is a 128-bit value. For more information about GUIDs, see the Remote Procedure Call (RPC) documentation or the OLE Programmer's Reference

Use the guidgen.exe utility to generate new values.

See also CONFDEST CONFGUID CONFNOTIFY

## HCONF

    typedef HANDLE HCONF;

This identifies a conference.

A NULL hConf implies the default conference, if one is available.

## HCONFNOTIFY

    typedef HANDLE HCONFNOTIFY;

This identifies a conferencing notification callback.

This is returned by ConferenceSetNotify to identify a specific callback and must be passed to ConferenceRemoveNotify.

[Previous] [Up One Level]