次の方法で共有


IDeviceAgentTransport::AcknowledgeLaunch

更新 : 2007 年 11 月

サービス ID の配列を登録します。デバイス エージェントは、この配列に含まれるサービス ID を持つ開発用コンピュータからの接続要求を受け入れることができます。

HRESULT AcknowledgeLaunch([in] DWORD in_ArraySize, [size_is][in] LPCOLESTR in_szServiceIds[])

パラメータ

  • in_ArraySize
    サービス ID 配列のサイズ。

  • in_szServiceIds
    エージェントが接続を受け入れるサービス ID。

戻り値

メソッド呼び出しの結果を示す HRESULT 値。

解説

サービス ID は、受け入れることができる接続要求を識別するために、デバイス エージェントによって使用されます。デバイス エージェントは、このメソッドを使用して登録されたサービス ID を持つ接続のみを受け入れることができます。

サービス ID に空白を使用したり、""、"Host"、"Transport"、"Shutdown"、"Accept" などの予約されたサービス ID を指定したりすることはできません。一意性を保証するために、多くの場合、コンピュータによって生成された GUID がサービス ID として使用されます。GUID を生成するには、[ツール] メニューの [GUID の作成] をクリックします。

使用例

AcknowledgeLaunch を呼び出して、デバイス上でデバイス エージェントが実行されていることをデスクトップ上の RemoteAgent オブジェクトに通知する例を次に示します。コード例全体については、「IDeviceAgentTransport」を参照してください。

// Let the desktop application know that this remote agent was deployed successfully 
// and that this remote agent will handle the supplied list of services.
LPCOLESTR szServiceIds[] = {L"F85E57BA-5AE9-4FF7-8433-6AB7D991D033"};
pTransport->AcknowledgeLaunch(1, szServiceIds);

// Open a communcation stream with desktop application on the service.
IDevicePacketStream *pStream = NULL;
pTransport->AcceptConnectionEx(szServiceIds[0], &pStream);

// Get an instance of IPacket
GetNewPacketFunc f2 = (GetNewPacketFunc) ::  GetProcAddress(hmod, L"GetNewPacket");
IPacket *pPacket = NULL;
f2(&pPacket);

// Write a message and sent the packet.
pPacket->WriteBool(true);
pPacket->WriteByte(0xff);
pPacket->WriteChar('c');
pPacket->WriteInt32(1024);
pPacket->WriteString(L"Hello Desktop Computer");
pStream->Write(pPacket);

相当するマネージ機能

IDeviceAgentTransport.AcknowledgeLaunch

必要条件

DeviceAgentTransport.h

参照

参照

IDeviceAgentTransport