IAgentTransportShutdownCallback
更新:2007 年 11 月
定義關閉回呼物件必須實作的方法。
IAgentTransportShutdownCallback : public IUnknown
方法
方法 |
說明 |
---|---|
提供裝置端代理程式機會,以執行清除並結束。 |
備註
只要裝置上正在執行 conmanclient2.exe,裝置代理程式就會相當實用。關閉 conmanclient2.exe 時,所有裝置代理程式也會關閉。裝置代理程式可以要求接收關閉通知,以順利執行清除並離開。為了接收關閉通知,裝置代理程式必須定義實作此介面的類別,然後再使用 IDeviceAgentTransport::RegisterShutdownCallback 將其註冊。
範例
下列範例會定義此介面的自訂實作。如需完整的範例,請參閱IDeviceAgentTransport。
// Custom implementation of IAgentTransportShutdownCallback
class MyShutdownCallback: public IAgentTransportShutdownCallback
{
private:
long ref;
public:
HRESULT STDMETHODCALLTYPE Shutdown(IUnknown *in_pUnknown)
{
// Add your cleanup code here
MessageBox(NULL,_T("conmanclient2 exited"),_T("conmanclient exited"),0);
return 0;
}
// Must implement members from IUnknown
HRESULT STDMETHODCALLTYPE QueryInterface( REFIID riid, void __RPC_FAR *__RPC_FAR *ppvObject)
{
return 0;
}
ULONG STDMETHODCALLTYPE AddRef( void)
{
return InterlockedIncrement(&ref);
}
ULONG STDMETHODCALLTYPE Release( void)
{
if(InterlockedDecrement(&ref) == 0)
{
delete this;
return 0;
}
return ref;
}
};
Managed 對應項
Microsoft.SmartDevice.DeviceAgentTransport.IAgentTransportShutdownCallback
需求
DeviceAgentTransport.h