From: Vipul Pathak Vipul on
Hi Everyone,

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.

Problem:
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.

Help:
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 ?


Thanks,

Any help of this is really appreciated. I am dealing with from past 3 days
now ...

+Vipul Pathak.

From: Ken Schaefer on
Something isn't working correctly (you could try turning on Failed Request
Tracing to see where the request is getting stuck).

I've implemented a HTTP Module that attempted to alter ActiveSync behaviour,
and it was a bit of a nightmare to get working 100% correctly. I'd consider
using managed code, rather than ISAPI extension. You should just be able to
use a HTTP Module to do this.

Also, all this information is recorded in IIS log files. You could just
parse those for the information you want...

Cheers
Ken


"Vipul Pathak" <Vipul Pathak(a)discussions.microsoft.com> wrote in message
news:13E7D9EE-1202-4B0B-99E0-BDB011D2B33C(a)microsoft.com...
> Hi Everyone,
>
> 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.
>
> Problem:
> 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.
>
> Help:
> 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 ?
>
>
> Thanks,
>
> Any help of this is really appreciated. I am dealing with from past 3 days
> now ...
>
> +Vipul Pathak.
>