Si queremos hacer sleep en Visual Basic y que se produzca una pausa antes de realizar cualquier acción en Visual Basic, simplemente declaramos en nuestro formulario la siguiente API de la siguiente forma:

'Función Api Sleep Para generar una espera o retardo de tiempo
Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)

Y la utilizamos donde queramos de la siguiente forma:

'Hacemos una pausa de 1,5 seg
Sleep 1500

por Victor

Me llamo Víctor López y nací en Zaragoza el 16 de Diciembre de 1984. Esta web la monté exactamente el 23 de Mayo del 2005 con la idea de publicar mis experiencias personales, cosas curiosas que veía a mi alrededor (tanto en Internet como en mi vida) y el poder tener mi propio espacio web en la red. Si quieres puedes ver las estadísticas del año 2010. Ingeniero Superior en informática (terminé la carrera en 2006), desde pequeño ya estaba totalmente convencido a lo que me iba a dedicar en mi vida, la informática. Quizás porque mi padre tenía un Spectrum y me pegaba horas trasteándolo o quizás porque desde pequeño siempre me han gustado “los chismes”. El caso es que empezó a gustarme este mundo de la informática. Profesionalmente soy Analista-Programador Senior en PHP y me dedico al análisis, desarrollo y programación de páginas web y al desarrollo de aplicaciones (principalmente web en PHP, empecé a programar en el año 2002 en PHP), creación, alojamiento, optimización (diseño, SEO, publicidad), puesta en marcha de webs y potenciándolas. Actualmente soy Lead Integration Engineer en EnGrande.com – BudGetPlaces.com, además de formar parte de Homein.com (anteriormente he trabajado en Atrapalo.com, Camyna.com y Sync.es). Socio fundador de Coompy.es Alquilar habitación – Compartir piso. Partidario del software libre y usuario asiduo de Ubuntu y CentOS. Fui usuario de Mac pero ahora ya he vuelto al buen camino con Linux (Ubuntu distro). Sobre mi filosofía de vida, te invito a que leas este artículo: “Tu eres el resultado de ti mismo“. Si lo lees, entenderás mi punto de vista de la vida. Intento estar lo más lejos posible de la monotonía y considero mi trabajo como un hobby, me gusta aprender cosas nuevas cada día y afrontar nuevas metas y proyectos. En mi tiempo libre me gusta practicar cualquier deporte (el fútbol especialmente), me gusta competir (sea el ámbito que sea), los coches, las buenas películas/series y viajar. Personalmente considero que lo primero en esta vida es la salud y las personas, dejando atrás otras cosas, como puede ser el dinero, la fama y todas esas chorradas, que cuanto más las tienen las personas, más las quieren y menos les importan los demás. Y creo que el respeto y educación es fundamental. Pues eso es todo, un breve resumen de mi persona. Si te quieres anunciar en mi blog, contactar conmigo ya sea para la contratación de mis servicios, ofertas, agradecimientos, quejas, insultos, amenazas y/o similares, puedes mandarme un correo cuando quieras. Mi correo personal de contacto es: http://helektron.com/contacto-personal/ Puedes seguir este blog por Google Plus, Facebook, Twitter, RSS y por mail.

20 comentario en “Sleep en Visual Basic”
  1. el mismo error anterior creo que es la vercion.. utilizo el 2010

    Una llamada a la función PInvoke ‘XO.Form1::Sleep’ impidió la correspondencia de la pila. Es posible que la razón sea que la firma PInvoke administrada no coincida con la firma de destino no administrada. Compruebe que la convención y los parámetros de llamada de la firma PInvoke coinciden con la firma no administrada de destino

  2. Hola, a mi me aparece este error…
    PInvokeStackImbalance was detected
    Message: A call to PInvoke function ‘Papeleta!Papeleta.Cargando::Sleep’ has unbalanced the stack. This is likely because the managed PInvoke signature does not match the unmanaged target signature. Check that the calling convention and parameters of the PInvoke signature match the target unmanaged signature.

  3. A Camilo Torres:

    ¿Está probando su proyecto directamente desde visual basic o lo esta probando con el exe?

    En caso de que sea el exe podría ser debido a la falta de un dll en el otro pc. De ser así yo le aconsejaría que cree un instalador para su aplicación con el Package & Deployment Wizard que viene incluido con Microsoft Visual Studio y una vez que le haya creado el instalador haga un instalador alterno con algún programa como el Inno Setup ya que los instaladores de visual studio (al menos en mi experiencia) llegan a fallar y no corren bien en todos los computadores. Aconsejo que se haga primero con el Package & Deployment Wizard porque al hacerlo puede ver que archivos adicionales son los que usa su proyecto y estos son almacenados en un folder de nombre support dentro del directorio donde desee salvar su instalador, y con esto puede usar este folder como raiz para que Inno setup tome los archivos necesarios y usted solo le indiqe en donde deben ir instalados (esto se ve en el Package & Deployment Wizard durante la creación del instalador).

    En caso contrario de que lo este probando directo desde visual basic, entonces me temo que por ahora no se me ocurre alguna posible solución.

    Espero sea de ayuda.

  4. Muy buena solución; estaba necesitando algo así y justo «San Google» me trajo a donde era.

    Felicitaciones por compartir sus conocimientos con quienes los necesitan.

  5. Buenas tardes estoy haciendo un sleep en mi pc me funciona bien pero llevo el proyecto a otro pc tb con windows xp ambos y no funciona me aparece un error de IMPROVE o algo asi alguien me puede ayudar?

  6. ESTIMADOS SEÑORES:

    SINCERAMENTE LOS FELICITO……..

    SON EXCELENTES ESOS EJEMPLOS………..DE TODO……………

    RAUL BLANCO………… VENEZUELA……….BARQUISIMETO

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *