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