共用方式為


IAgentTransportShutdownCallback

更新:2007 年 11 月

定義關閉回呼物件必須實作的方法。

IAgentTransportShutdownCallback : public IUnknown

方法

方法

說明

IAgentTransportShutdownCallback::Shutdown

提供裝置端代理程式機會,以執行清除並結束。

備註

只要裝置上正在執行 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

請參閱

其他資源

Unmanaged 裝置端智慧型裝置連接 API