Hola:
Yo tengo el siguiente problema
Yo he construído el siguiente código con vb6 sp5 an sql 7 sobre 
windows 2000  prof SP2 en el cliente y el SQL en un Windows 2000 
server SP2 
Mi aplicación necesita obtener información actualizada de la base 
de datos cada .5 segundos. y cada vez se envía una consulta que es 
distinta a la anterior
El código que escribí es algo así:
...
Private m_rs as recordset
...
...
Form_Load
   Set m_Rs = New Recordset
   m_Rs.CursorLocation = adUseClient
   m_Rs.LockType = adLockPessimistic
   m_Rs.CursorType = adOpenKeyset
   m_Rs.ActiveConnection=m_cnn 'Some connection opened
End sub   
...
Sub Timer1_Timer
   m_Rs.Source = SQL 'some query variable ever distinct
   m_Rs.Open
   'some activity
   ...
   m_Rs.Close   
End Sub
Luego de algún tiempo que depende de los tipos de consultas 
enviados
el código en el cliente comienza a consumir recursos de memoria, a 
veces muy lentamente, hasta que para una aplicación que debe estar 
funcionando durante varios días, esta deja de funcionar  por falta 
de memoria
Yo creo que mi código no tiene errores. 
Quizás ustedes tengan este bug, pero no lo noten ya que si la 
aplicación funciona solo durante 8 hs diarias, al finalizar el día 
se vuelven a recuperar los recursos de memoria, y el proceso 
vuelve a comenzar al encenderla el día siguiente.
Recueden que esta aplicación debería estar funcionando las 24 Hs 
del día todos los días.
La única manera, luego de cientos de pruebas, en la que tuve éxito 
para evitar el consumo de recursos, es utilizando procedimientos 
almacenados. 
Pero por ahora quisiera intentar evitar esto ya que me obligaría a 
realizar un gran trabajo sobre el sistema
Cualquier sugerencia es bienvenida
                            Muchas gracias
                            Gustavo                            
http://www.thesoftplaters.com.ar