Ir al contenido


Foto

Problemas con run32dll.exe


  • Por favor identifícate para responder
14 respuestas en este tema

#1 madiazg

madiazg

    Member

  • Miembros
  • PipPip
  • 28 mensajes

Escrito 24 septiembre 2011 - 01:51

Hola a todos,
tengo un problema al ejecutar mi programa. Resulta que cuando arranco Windows 7 y miro la lista de procesos activos, aparece run32dll.exe*32 Si arranco mi programa éste funciona correctamente.
Si antes de arrancar mi programa ejecuto google chrome, en la lista de procesos aparece un nuevo run32dll.exe*32, o sea, dos procesos iguales. ambos procesos es ejecutado por el mismo fichero C:\Windows\SysWOW64\run32dll.exe
Si en ese momento intento ejecutar el programa este no se ejecuta, aparece el proceso de mi programa en la lista pero no aparece ninguna ventana del mismo. Si en ese momento cierro google chrome ó finalizo el proceso run32dll.exe*32 creado por google chrome el programa se ejecuta correctamente.
Al parecer, run32dll.exe se utiliza para ejecutar librerías (*.dll) pero no se exactamente que dll son ejecutadas por chrome que hace que el programa no se ejecute.
He estado buscando por internet la solución a este problema pero no he encontrado nada.
¿Alguien puede ayudarme? Programa en turbodelphi.


Saludos...
Miguel Angel
http://personal.tele...arket/imagen3d/


  • 0

#2 javsolis3

javsolis3

    Advanced Member

  • Moderadores
  • PipPipPip
  • 1.380 mensajes
  • LocationPanama

Escrito 24 septiembre 2011 - 02:33

Bueno amigo estuve buscando hacerca de tu problema y encontre esto leelo, debe darte resultado:

http://www.taringa.n...ndll32_exe.html
http://www.processli...run32dll/21688/


  • 0

#3 javsolis3

javsolis3

    Advanced Member

  • Moderadores
  • PipPipPip
  • 1.380 mensajes
  • LocationPanama

Escrito 24 septiembre 2011 - 02:36

:cool: oh te doy esta opción:
facil amigos usen la consola de recuperacion del sistema operativo eso reparara los erorrores
1 entra ala bios
2 cambia el boot y pon k arranke con la unidad de cd
3guara los cambios
4 introduce el cd donde viene el sistema operativo
5 entra donde dice reparar usando la consola de recuperasion
6intruduce 1 depues de k te pregunte k instalasion
7 intruduce este comando CHKDSK /P /R
8 listo el sckan disk entrara en accion encontrara falllos y remplazara lso archivos dañados

también te recomiendo que hagas esto:
inicio-ejecutar-escrives msconfig y le das enter- te aparecera una ventanita donde en la ultima pestaña pódras desavilitar el programa
(y) (y) (y) (y) (y).

  • 0

#4 escafandra

escafandra

    Advanced Member

  • Administrador
  • 4.111 mensajes
  • LocationMadrid - España

Escrito 24 septiembre 2011 - 05:51

rundll.exe sirve para ejecutar una dll como si fuera un ejecutable. Las dll tienen un punto de entrada al código. Este punto de entrada puede ser usado para iniciar el código encerrado en la dll como si de una aplicación se tratase. Las dll ocupan menos que una aplicación a igualdad de código. Algunos programas maliciosos usan esta técnica para ocultarse a los ojos del usuario que revisa el taskmanager.

mediazg, ¿tu programa tiene implementado algún sistema para que no se ejecuten mas de una copia al mismo tiempo?.


Saludos.
  • 0

#5 madiazg

madiazg

    Member

  • Miembros
  • PipPip
  • 28 mensajes

Escrito 25 septiembre 2011 - 05:33


Hola, gracias por las aportaciones...
en cuanto a la posibilidad de un virus ya lo había pensado y lo he descartado. He ejecutado antivirus y anti-malware y no detectan nada. Como ya he comentado el programa funciona correctamente hasta que ejecuto chrome. Si no hago antes de ejecutar mi programa simplemente éste no se ejecuta, tal y como comenté en mi anterior mensaje.
Con respecto a la ejecución de más de una copia del programa, efectivamente tiene implementado esa opción (no recuerdo de donde obtuve el código)


delphi
  1. var
  2.     Mutex : THandle;
  3. ...
  4. begin
  5.   Mutex := CreateMutex(nil, True, 'imagen3d.exe');
  6.   if (Mutex = 0) OR (GetLastError = ERROR_ALREADY_EXISTS) then
  7.   begin
  8.     Halt(1);
  9.   end else begin
  10. .....
  11. end;


He eliminado este código por lo que puede ejecutar mas de una vez la aplicación y  el problema persiste. ¿Se podría averiguar que dll se está ejecutando a través de run32dll.exe?


Saludos...
Miguel Angel


  • 0

#6 escafandra

escafandra

    Advanced Member

  • Administrador
  • 4.111 mensajes
  • LocationMadrid - España

Escrito 25 septiembre 2011 - 06:13

Yo tampoco pienso en un virus, sólo lo comenté para aclarar el funcionamiento de rundll32.exe

Baja el programa Process Explorer de sysinternals. Con él busca el preceso rundll32 abre sus propiedades y en la pestaña imagen tendrás la linea de comandos (Comand Line) con la que se creó el proceso.



Saludos.
  • 0

#7 madiazg

madiazg

    Member

  • Miembros
  • PipPip
  • 28 mensajes

Escrito 25 septiembre 2011 - 10:18


Hola,
he seguido el consejo de escafandra y he descargado y ejecutado la aplicación Process Explorer.
Con este programa he averiguado que rundll32.exe ejecuta gcswf32.dll.
En chorme, escribiendo about:plugins encuentro:

Nombre:
Shockwave Flash
Descripción: Shockwave Flash 10.3 r183
Versión: 10,3,183,10
Ubicación: C:\Program Files (x86)\Google\Chrome\Application\14.0.835.186\gcswf32.dll

Es el plugin de flash para chrome.
Por ahora lo he deshabilitado y ya no carga esta librería y mi programa trabaja correctamente. El problema es que cada vez que chrome carga una página con flash me indica que el componente flash está desactualizado y que lo actualice. Al parecer, ante la ausencia de gcswf32.dll intenta utilizar este otro más antiguo:

Nombre:
Shockwave Flash
Descripción: Shockwave Flash 10.0 r42
Versión: 10,0,42,34
Ubicación: C:\Windows\system32\Macromed\Flash\NPSWF32.dll

Está claro que tendré que habilitarlo nuevamente. Lo que no acabo de entender que relación tiene este plugin de flash con mi programa que lo hace incompatible. Esto no ocurría antes. Lo que no se si es por alguna modificación ó ampliación del código de mi programa o por una actualización del plugin.
¿alguna idea o consejo?


Saludos...
Miguel Angel








  • 0

#8 escafandra

escafandra

    Advanced Member

  • Administrador
  • 4.111 mensajes
  • LocationMadrid - España

Escrito 25 septiembre 2011 - 10:29

Cuando te pregunté si tu programa tenía algún sistema para evitar la ejecución de dos copias, la idea iba por el sentido de una incompatibilidad. Al comentar que desactivaste el sistema y pasaba lo mismo, esta claro que esa no es la causa por parte de tu programa pero puede ser que ese plugin tenga un sistema similar...

Prueba cambiando el nombre de tu programa...


Saludos.
  • 0

#9 madiazg

madiazg

    Member

  • Miembros
  • PipPip
  • 28 mensajes

Escrito 25 septiembre 2011 - 11:45

Hola,
el problema no es ese. He cambiado el nombre al programa y sigue sin arrancar en el caso de que ejecute chrome antes. Debe ser que utilizo en mi programa alguna unit o librería que no es compatible con el plugin de flash de chrome, porque, como he comentado anteriormente, esto no me ocurría antes aunque no se exactamente desde cuando ocurre. Supongo que alguna actualización del plugin de chrome generó este problema.

Saludos...
Miguel Angel
  • 0

#10 egostar

egostar

    missing my father, I love my mother.

  • Administrador
  • 14.469 mensajes
  • LocationMéxico

Escrito 25 septiembre 2011 - 07:19

Cuando renombrar un programa no resuelve un problema puedes optar por crear una copia y ejecutar la copia sin borrar el anterior, muchas veces Windows se queda con la información del programa original y aunque lo renombres sigue ejecutando el programa original.

SaludOS
  • 0

#11 Sergio

Sergio

    Advanced Member

  • Moderadores
  • PipPipPip
  • 1.092 mensajes
  • LocationMurcia, España

Escrito 26 septiembre 2011 - 09:16

Entiendo que usas Win7 de 64bits... yo uso el mismo con chrome instalado (aunque no lo uso mucho) y nunca me dio ese tipo de problemas en mis ejecutables de delphi7.

Quizas uses en tu programa un frame de esos que dentro ejecutan iExplorer para ver un .html? Quizas, si usas estos componentes, el problema es entre chrome y iExplorer y tu aplicacion este en medio simplemente.

Otra cosa: Cuando ejecutas sin problemas tu programa, si lo miras con Proccess Explorer ¿que dll tienes abiertas desde la aplicacion? Quizas necesites investigar cada una de ellas de donde te viene e ir quitando una a una a ver que componente es el que linka con la dll que produce el problema.

Mas ideas no me quedan...
  • 0

#12 madiazg

madiazg

    Member

  • Miembros
  • PipPip
  • 28 mensajes

Escrito 26 septiembre 2011 - 12:07

Hola,
he realizado la copia y nada, sigue sin funcionar con la presencia de chrome. Lo curioso es que si priemro ejecuto el programa y luego ejecuto chrome, si cierro mi programa se queda el programa abierto hasta que no cierro chrome o mato la sesión de run32dll que ejecuta la librería de flash. Si quieren, pueden probar a ejecutar mi aplicación en http://personal.tele...ol/download.htm (versión portable, por ejemplo). Me han llegado mensajes de gente que el programa no les funciona directamente en Windows7 sin usar chrome.
Con respecto a iExplorer no lo utilizo en el programa.
Al ejecutar el programa he investigado con Process Explorer pero no he podido averiguar qué dll usas, aparte de libgfl340 que es la librería gráfica que utilizo (http://www.xnview.com/en/gfl.html) pero que también uso con otros programas y no tengo estos problemas.
He estado eliminado partes del programa, procedimientos (impedir la ejecución de más de una copia, pantalla splash al inicio, obtener el S.O. y el modelo de Tarjeta gráfica con WMI, etc...) pero por ahora el problema persiste.

Saludos...
Miguel Angel
  • 0

#13 TiammatMX

TiammatMX

    Advanced Member

  • Miembros
  • PipPipPip
  • 1.750 mensajes
  • LocationUniverso Curvo\Vía Láctea\Sistema Solar\Planeta Tierra\América\México\Ciudad de México\Xochimilco\San Gregorio Atlapulco\Home

Escrito 26 septiembre 2011 - 12:24

Hola a todos,
tengo un problema al ejecutar mi programa. Resulta que cuando arranco Windows 7 y miro la lista de procesos activos, aparece run32dll.exe*32 Si arranco mi programa éste funciona correctamente.


Primeramente, ya estuve leyendo todos los posts de éste hilo y te puedo asegurar que NO ES rund32dll.exe, ni tu programa, sino uno de los "benditos" hoyos de procesamiento que tiene ése queso suizo que utilizas como sistema operativo.

Sugerencias:
  • No uses Chrome, tiene la horrenda tendencia a ser muy exclusivista con sus tiempos de proceso y celosísimo con la memoria. Te recomiendo Mozilla Firefox, es menos "latoso".
  • Reconstruye tu aplicación, con calma y probando poco a poco. El tema es un "crash" entre Chrome y tu aplicación, no es por usar Flash. Si tuvieses dudas que fuera Flash, intenta probar con otro navegador y tu aplicación, verás que no es por ahí el asunto.
  • Si tu licencia de Winbugs es original, ejecuta las actualizaciones más recientes o busca en la Knowledge Base un problema similar o igual, o de plano, anéxales tu problema para que lo resuelvan en sus próximos parches.
  • Revisa que no esté usando las BPL's a la ejecución, me suena que es por ése lado el problema.
Suerte con éso, manténnos informados. Saludines.
  • 0

#14 madiazg

madiazg

    Member

  • Miembros
  • PipPip
  • 28 mensajes

Escrito 26 septiembre 2011 - 01:19

Hola, no he entendido el último punto. ¿A qué BPL's te refieres?
Saludos...
Miguel Angel
  • 0

#15 madiazg

madiazg

    Member

  • Miembros
  • PipPip
  • 28 mensajes

Escrito 05 diciembre 2011 - 02:14

Hola,
solo indicaros que gracias a Miguel Pedro Di Minico he solucionado el problema. El error se produce cuando cargaba una fuente externa en memoria y utilizaba SendMessage(HWND_BROADCAST, WM_FONTCHANGE, 0, 0) para indicarle a otras aplicaciones que la fuente estaba disponible. Eliminado este aviso el programa se carga perfectamente aun cuando haya arrancado previamente google chrome.

Gracias a todos y en especial a Miguel.
Saludos...
Miguel Angel

  • 0




IP.Board spam blocked by CleanTalk.