private int Start(string szUrl, IInternetProtocolSink protocolSink, IInternetBindInfo bindInfo, PI_FLAGS grfPI, uint dwReserved)
        {
            ClearData();

            currentProtocolSink = protocolSink;
            currentUrl          = szUrl;

            BINDINFO bindInfoData = new BINDINFO();

            bindInfoData.cbSize = (uint)Marshal.SizeOf(bindInfoData);
            bindInfo.GetBindInfo(out currentBindFlags, ref bindInfoData);

            if ((grfPI & PI_FLAGS.PI_FORCE_ASYNC) != 0)
            {
                PROTOCOLDATA protocolData = new PROTOCOLDATA();
                protocolData.grfFlags = PI_FLAGS.PI_FORCE_ASYNC;
                protocolSink.Switch(ref protocolData);
                return(NativeConstants.E_PENDING);
            }
            else
            {
                return(DoBind());
            }
        }
Esempio n. 2
0
 /// <summary>
 /// Not implemented
 /// </summary>
 public void Continue(ref PROTOCOLDATA pProtocolData)
 {
 }
 private int Continue(ref PROTOCOLDATA protocolData)
 {
     return(DoBind());
 }
 int IInternetProtocolEx.Continue(ref PROTOCOLDATA protocolData)
 {
     return(Continue(ref protocolData));
 }