• <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
            <2009年6月>
            31123456
            78910111213
            14151617181920
            21222324252627
            2829301234
            567891011

            常用鏈接

            留言簿(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 黃劍父 閱讀(278) 評論(0)  編輯 收藏 引用 所屬分類: C/C++
            中文国产成人精品久久亚洲精品AⅤ无码精品 | 91精品国产高清久久久久久io| 久久久精品一区二区三区| 亚洲AV日韩精品久久久久| 久久久久99精品成人片试看| 久久精品aⅴ无码中文字字幕重口 久久精品a亚洲国产v高清不卡 | 亚洲欧洲精品成人久久曰影片 | 久久精品国产乱子伦| 亚洲国产精品久久久天堂| 久久久91精品国产一区二区三区| 久久九九亚洲精品| 无码AV波多野结衣久久| 精品99久久aaa一级毛片| 性做久久久久久久| 无码乱码观看精品久久| 好属妞这里只有精品久久| 久久这里有精品| 亚洲精品乱码久久久久久蜜桃| 老司机国内精品久久久久| 久久偷看各类wc女厕嘘嘘| 无码八A片人妻少妇久久| 人妻无码久久精品| 久久久久国产一区二区三区| 伊人丁香狠狠色综合久久| 日韩精品久久久久久| 国产精品久久久天天影视香蕉| 国产成人久久激情91| 亚洲乱亚洲乱淫久久| 久久精品国产99久久久香蕉| 欧洲国产伦久久久久久久| 久久久久青草线蕉综合超碰| 99re久久精品国产首页2020| 亚洲AV日韩精品久久久久久久| 国产精品无码久久综合| 国产精品热久久无码av| 2020国产成人久久精品| 欧美综合天天夜夜久久| 久久久久亚洲av成人无码电影 | 国产精品女同久久久久电影院| aaa级精品久久久国产片| 久久久国产精品|