• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            隨筆 - 60  文章 - 5  trackbacks - 0
            <2010年1月>
            272829303112
            3456789
            10111213141516
            17181920212223
            24252627282930
            31123456

            常用鏈接

            留言簿(2)

            隨筆分類(42)

            隨筆檔案(60)

            文章檔案(2)

            我收藏的博客

            搜索

            •  

            最新評論

            閱讀排行榜

            評論排行榜

            source:http://msdn.microsoft.com/en-us/library/ms524352.aspx
            For an ISAPI extension to be used by IIS, it must provide a standard interface. To provide a standard interface, each ISAPI extension DLL must implement and export two primary functions, GetExtensionVersion and HttpExtensionProc. A third function, TerminateExtension, is optional and is commonly used by extensions to perform cleanup operations.

            Initialization Using GetExtensionVersion
            Initialization is handled by the entry-point function GetExtensionVersion. This function's role is to perform all initialization, including the creation of worker threads, synchronization objects, and database connections, and to establish the version of ISAPI that was used to build the DLL.

            Adding Functionality Using HttpExtensionProc

            In general, an extension's functionality is exposed through the HttpExtensionProc entry-point function. This function receives a pointer to an EXTENSION_CONTROL_BLOCK structure, which contains data used for the required processing and is also used by the extension to communicate with IIS.
            When HttpExtensionProc in employed, it should first send a response header to the client. The header provides the client with information, such as the content type that is returned. After the header is sent, any other processing can be performed through the various callback functions provided in the EXTENSION_CONTROL_BLOCK.

            Termination Using TerminateExtension

            When an extension is no longer needed, IIS removes it from memory. If the extension provides the TerminateExtension function, IIS calls it before removing the extension. Use of TerminateExtension is recommended to close down any threads that an extension initialized during processing.

            After IIS finishes processing a request for an ISAPI extension, the connection can either be closed or kept open. A request can specify that the connection remain open by specifying the Connection: Keep-Alive header. If an ISAPI extension is designed to support Keep-Alive requests, this should be indicated to the client by calling the HSE_REQ_SEND_RESPONSE_HEADER server support function. The specified response header should contain Connection: Keep-Alive.

            posted on 2010-01-12 09:15 黃劍父 閱讀(271) 評論(0)  編輯 收藏 引用 所屬分類: C/C++
            久久强奷乱码老熟女| 久久综合给合久久狠狠狠97色| 国产精品99久久久久久宅男| 国产福利电影一区二区三区,免费久久久久久久精 | 久久人人爽人人爽人人片AV麻豆 | 久久毛片一区二区| 国产亚洲色婷婷久久99精品| 久久久久国产一区二区三区| 日产精品久久久一区二区| 精品久久久久中文字| 亚洲成色www久久网站夜月| 国产精品成人99久久久久91gav| 伊人久久无码精品中文字幕| 久久精品国产亚洲沈樵| 久久99热这里只频精品6| 国产韩国精品一区二区三区久久| 国产69精品久久久久99| 久久精品国产网红主播| 国产免费久久精品99re丫y| 中文字幕久久欲求不满| 亚洲AV无码久久精品狠狠爱浪潮| 少妇久久久久久被弄到高潮 | 亚洲欧美成人久久综合中文网| 欧美亚洲另类久久综合| 人妻无码αv中文字幕久久| 伊人久久大香线蕉精品不卡| 丁香五月综合久久激情| 青青青国产成人久久111网站| 少妇久久久久久被弄高潮| 欧美日韩精品久久免费| 伊人热热久久原色播放www| 欧美日韩精品久久久免费观看| 久久综合综合久久97色| 91精品国产91久久久久久蜜臀| 午夜不卡888久久| 品成人欧美大片久久国产欧美... 品成人欧美大片久久国产欧美 | 国产香蕉久久精品综合网| 国产精品99久久久精品无码 | 大美女久久久久久j久久| 91亚洲国产成人久久精品| 国产A级毛片久久久精品毛片|