Ejemplo n.º 1
0
        /// <summary>
        /// Creates an mfupdate object.
        /// </summary>
        /// <param name="provider">The name of the update provider that will service this update.</param>
        /// <param name="updateID">The unique identification number of the update.</param>
        /// <param name="version">The version of the update.</param>
        /// <param name="updateType">The update type.</param>
        /// <param name="updateSubType">The update subtype.</param>
        /// <param name="updateSize">The total update size (in bytes).</param>
        /// <param name="pktSize">The size (in bytes) of each packet.</param>
        public MFUpdate(string provider, uint updateID, Version version, MFUpdateType updateType, MFUpdateSubType updateSubType, int updateSize, int pktSize)
        {
            m_maxPkt    = (updateSize + pktSize - 1) / pktSize;
            m_pktBitChk = new uint[(m_maxPkt + 31) >> 5];

            for (int i = 0; i < m_pktBitChk.Length; i++)
            {
                m_pktBitChk[i] = 0xFFFFFFFF;
            }

            m_provider      = provider;
            m_updateID      = updateID;
            m_updateType    = updateType;
            m_updateSubType = updateSubType;
            m_updateVersion = version;
            m_updateSize    = updateSize;
            m_packetSize    = pktSize;
            m_authenticated = false;

            m_updateHandle = MFNativeUpdate.Initialize(this);

            if (m_updateHandle == -1)
            {
                throw new Exception();
            }
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Creates an mfupdate object.
        /// </summary>
        /// <param name="provider">The name of the update provider that will service this update.</param>
        /// <param name="updateID">The unique identification number of the update.</param>
        /// <param name="version">The version of the update.</param>
        /// <param name="updateType">The update type.</param>
        /// <param name="updateSubType">The update subtype.</param>
        /// <param name="updateSize">The total update size (in bytes).</param>
        /// <param name="pktSize">The size (in bytes) of each packet.</param>
        public MFUpdate(string provider, uint updateID, Version version, MFUpdateType updateType, MFUpdateSubType updateSubType, int updateSize, int pktSize)
        {
            m_maxPkt = (updateSize + pktSize - 1) / pktSize;
            m_pktBitChk = new uint[(m_maxPkt + 31) >> 5];

            for (int i = 0; i < m_pktBitChk.Length; i++)
            {
                m_pktBitChk[i] = 0xFFFFFFFF;
            }

            m_provider      = provider;
            m_updateID      = updateID;
            m_updateType    = updateType;
            m_updateSubType = updateSubType;
            m_updateVersion = version;
            m_updateSize    = updateSize;
            m_packetSize    = pktSize;
            m_authenticated = false;

            m_updateHandle = MFNativeUpdate.Initialize(this);

            if (m_updateHandle == -1) throw new Exception();
        }