Application Sharing Channel


The Application Sharing Channel object, which is derived from the Channel object, contains manipulation functions specific to Application Sharing Channels.

To obtain an Application Sharing Channel, use INmChannel::QueryInterface with the IID_INmChannelAppShare interface identifier.

Each Application Sharing Channel object refers to an application on the local computer that is capable of being shared or is currently being shared.

INmChannelAppShare Interface
INmChannelAppShareNotify Interface

Up ArrowBack to COM Object Reference

INmChannelAppShare Interface

This interface enables you to find the current sharing state of the local computer and get information about sharable applications.

In addition to the INmChannel Interface methods, this interface implements the following:

EnumSharableApp
GetState
SetState

Up ArrowBack to Application Sharing Channel

INmChannelAppShare::EnumSharableApp

HRESULT EnumSharableApp(
[out] IEnumNmSharableApp **ppEnum);

Retrieves an instance of the Application Sharing Channel object enumerator for applications that can be shared. The IEnumNmSharableApp Interface methods can be used to manipulate this enumerator.

ppEnum
Pointer to a pointer to the enumerator for existing Application Sharing Channel objects.

Up ArrowBack to INmChannelAppShare Interface

Up ArrowBack to Application Sharing Channel

Up ArrowBack to COM Object Listing

INmChannelAppShare::GetState

HRESULT GetState(
[out] NM_SHARE_STATE *puState);

Retrieves the state of the application being shared.

puState
NM_SHARE_STATE that identifies the state of the local user. Possible constants include:
NM_SHARE_COLLABORATING The user is not working alone and does not have control of the cursor. Other conference members can work in any applications the local user has shared.
NM_SHARE_UNKNOWN The current state is unknown. This may result if it is an audio- and video-only conference, or if application sharing is not available.
NM_SHARE_IN_CONTROL Gives the local user control of the cursor. If the user was working alone, this will also grant permission to others to take control of this shared application.
NM_SHARE_WORKING_ALONE The local user is working alone. Other conference members can see applications that the local user has shared, but they cannot work in them. The local user can see applications that others have shared, but he or she cannot work in them.

Up ArrowBack to INmChannelAppShare Interface

Up ArrowBack to Application Sharing Channel

Up ArrowBack to COM Object Listing

INmChannelAppShare::SetState

HRESULT SetState(
[in] NM_SHARE_STATE uState);

Sets the application sharing state of the local user.

uState
NM_SHARE_STATE that identifies the state of the shared application. For NetMeeting 2.1, possible constants include:
NM_SHARE_IN_CONTROL Gives the local user control of the cursor. If the user was working alone, this will also grant permission to others to take control of this shared application.
NM_SHARE_WORKING_ALONE The local user is working alone. Other conference members can see applications that the local user has shared, but they cannot work in them. The local user can see applications that others have shared, but he or she cannot work in them.

When you set the current state to NM_SHARE_IN_CONTROL, this interface does the same thing as the Collaborate button in the NetMeeting UI; the user is put in the Collaborating state and is given control of the cursor.

Calling this method and setting the NM_SHARE_IN_CONTROL constant for uState will not result in a INmChannelNotify::MemberChanged notification if the local user was already in control, or if all users are working alone.

Up ArrowBack to INmChannelAppShare Interface

Up ArrowBack to Application Sharing Channel

Up ArrowBack to COM Object Listing

INmChannelAppShareNotify Interface

This is an event notification sink interface for the . The methods in this interface are called by the Application Sharing Channel when a specific event occurs.

This event sink method should be defined and implemented by the client application to respond to notifications from an Application Sharing Channel. The INmChannelAppShareNotify::StateChanged method is notified when a change in the application sharing state has occurred. The client application implementation of this method could provide the user with a display that indicates an application has just been shared or is no longer being shared.

MemberChanged
NmUI
StateChanged

Up ArrowBack to Application Sharing Channel

INmChannelAppShareNotify::MemberChanged

HRESULT MemberChanged(
[in] NM_MEMBER_NOTIFY uNotify,
[in] INmMember *pMember);

Receives notification that a member of the Application Sharing Channel was added, removed, or updated. This method is inherited from INmChannelNotify.

uNotify
Identifier of an event constant during a conference. This can include the following values:
NM_MEMBER_ADDED A member was added to the conference.
NM_MEMBER_REMOVED A member was removed from the conference.
NM_MEMBER_UPDATED Information for a conference member was updated.
pMember
Pointer to the INmMember Interface on the Member object that changed.

Up ArrowBack to INmChannelAppShareNotify Interface

Up ArrowBack to Application Sharing Channel

Up ArrowBack to COM Object Listing

INmChannelAppShareNotify::NmUI

HRESULT NmUI(
[in] CONFN uNotify);

Receives event notification when a channel change occurs. Only the application in charge (initialized with NM_INIT_CONTROL) of the NetMeeting user interface will receive these notifications. This method is inherited from INmChannelNotify.

uNotify
Identifier of an event constant during a conference. Values include:
CONFN_CLICK_CONTROL The mouse moved while collaborating, but the local user is not in control.
CONFN_CLICK_OBSCURE The mouse clicked over an obscured area of the shared application.
CONFN_CLICK_REMOTE_NOT_COLLABORATING Remote computer is not collaborating.
CONFN_CLICK_LOCAL_NOT_COLLABORATING Local computer is not collaborating.

This method will receive notifications only if the application succeeded in initializing with puOptions set to NM_INIT_CONTROL.

Up ArrowBack to INmChannelAppShareNotify Interface

Up ArrowBack to Application Sharing Channel

Up ArrowBack to COM Object Listing

INmChannelAppShareNotify::StateChanged

HRESULT StateChanged(
[in] NM_SHAPP_STATE uState,
[in] INmSharableApp *pApp);

Provides notification when a shareable application on the local computer becomes shared or is no longer being shared.

uState
Identifier of an NM_SHAPP_STATE. Constants include:
NM_SHAPP_NOT_SHARED The application is not currently being shared.
NM_SHAPP_SHARED The application is currently being shared.
pApp
Pointer to the INmSharableApp Interface on the Application Sharing Channel object that changed.

Up ArrowBack to INmChannelAppShareNotify Interface

Up ArrowBack to Application Sharing Channel

Up ArrowBack to COM Object Listing

Last Updated: November 1, 1997
© 1997 Microsoft Corporation. All rights reserved. Terms of Use.