Un cursor de tipo adCursorForwardOnly (valor 0) solo permite moverse hacia adelante. Y RecordCount lo que hace es ir al final del recordset y volver al principio. Si no puede volver devolverá un -1.
Aqui el resto de la explicacion:
http://www.aspfacil.com/vertruco.asp?id=3