vaya que extraño, lee lo que dice el código fuente de la DLL:
// dwMilliseconds
// - Specifies the time-out interval, in milliseconds. The function
// returns if the interval elapses, even if the operation is
// incomplete. If dwMilliseconds is zero, the function tests the
// data pipe and returns immediately. If dwMilliseconds is INFINITE,
// the function's time-out interval never elapses.
Por lo que este valor es en realidad el Time-Out de la función, por lo que se puede deducir, si se pone '0' tb funcionaría y estarías eliminando ese 1ms q por otro lado supongo es el valor q tiens puesto en el campo 'SendDelay'... prueba con '0' y cuenta como ha ido la cosa.
mata ne!