ISAPI Extension on Exchange CAS (IIS) caused Mobile Devices to stop synchronizing ...
I am writing an ISAPI Extension that will be installed on the /Microsoft-Server-ActiveSync virtual directory as a wildcard script map.
What I am trying to do:
The purpose of this Extension is to record, who all users has sync'ed their exchange account using device and whats the last connect time. I am using the System time to record the time of connection and the QueryString parameter to obtain the UserId, which is what you get in the HttpExtensionProc() function of the ISAPI Extension. In a way this is similar to the Intercepting All Incoming Requests example on MSDN for ISAPI. I am not touching to any other thing and passing the control to the actual handler AirSync.dll.
When I add my wildcard handler, It works fine and record the UserId and Current system time, but then The devices stop sync'ing with CAS. On the device, when I click on the Sync button in ActiveSync application, it fails and show me the Support code: 0x85010017.
Any idea of whats happening inside, I passed the request very gracefully withour touching any header or data to the next handler (AirSync). The user id was picked from the QueryString which was made available in the EXTENSION_CONTROL_BLOCK structure in side the HttpExtensionProc function of ISAPI Extension. Finally, the control was passed using the ServerSupportFunction HSE_REQ_EXEC_URL.
Any Idea ?
Any help of this is really appreciated. I am dealing with from past 3 days now ...