Título: Como aplicar cambios al registro y refrescar el sistema sin tener que reiniciar? Publicado por: Eleкtro en 21 Noviembre 2012, 19:17 pm Hola,
Como sabreis.. hay muchisimos programas que hacen cambios en el registro (TuneUp por ejemplo) y los cambios tienen efecto enseguida sin necesidad de reiniciar el PC, Si algunos de esos cambios se hicieran manualmente (batch, o añadiendo la clave desde el regedit) habría que reiniciar la sesión del usuario o el pc para que los cambios surgieran efecto... Pues yo necesito añadir esta clave al registro: Código
Y lo que me gustaría es hacer un "system refresh" para que los cambios de esa clave tengan efecto sin tener que reiniciar... Encontré este ejemplo en C# pero no tengo ni idea de lo que hace, ni tampoco sé si esto sirve para mi propósito. Código
Título: Re: Como aplicar cambios al registro y refrescar el sistema sin tener que reiniciar? Publicado por: seba123neo en 21 Noviembre 2012, 19:53 pm fijate este ejemplo, lo pasas facil desde C#
Registry settings immediate effect using C# (http://stackoverflow.com/questions/1052218/registry-settings-immediate-effect-using-c-sharp) lo que hace es con la api SendMessage justamente envia un mensaje de windows, en este caso la constante WM_SETTINGCHANGE y las aplicaciones son notificadas del cambio, en teoria deberia funcionar, probalo. Título: Re: Como aplicar cambios al registro y refrescar el sistema sin tener que reiniciar? Publicado por: Eleкtro en 21 Noviembre 2012, 20:03 pm Cita de: stackoverflow Código
Gracias pero no me deja convertirlo (http://img842.imageshack.us/img842/4581/prtscrcapture4s.jpg) en los convertidores online me da el mismo error :-\ (No se hacer la conversión manual, sinceramente) Título: Re: Como aplicar cambios al registro y refrescar el sistema sin tener que reiniciar? Publicado por: seba123neo en 21 Noviembre 2012, 20:18 pm proba asi:
Código
Título: Re: Como aplicar cambios al registro y refrescar el sistema sin tener que reiniciar? Publicado por: Eleкtro en 25 Noviembre 2012, 17:54 pm No me ha funcionado Seba
Título: Re: Como aplicar cambios al registro y refrescar el sistema sin tener que reiniciar? Publicado por: Eleкtro en 11 Diciembre 2012, 18:05 pm ¿Alguien puede echarme una mano?
Me gustaría ir paso por paso con esta APP y el problema es que no sé mandar el post adecuado en la API para poder refescar el sistema, intento refrescar los iconos de "Mi PC", debería salir un nuevo dispositivo conectado/ocultado al refrescar, me niego a continuar desarrollando esta APP sin poder resolver ese detalle (Quiero hacer las cosas bien xD). He probado distintas combinaciones, tanto con "PostMessage" como "SendMessage": Código
Código
Gracias por leer. Título: Re: Como aplicar cambios al registro y refrescar el sistema sin tener que reiniciar? Publicado por: Eleкtro en 12 Enero 2013, 18:44 pm Sigo sin saber nada xD.
Título: Re: Como aplicar cambios al registro y refrescar el sistema sin tener que reiniciar? Publicado por: apuromafo CLS en 23 Enero 2013, 08:40 am en caso x que necesites otro conversor
http://www.elguille.info/NET/WebServices/deCSaVB_web.aspx respecto a tu codigo en c, en conversor es asi Código: Class SafeNativeMethods a primera vista es similar a codigo planteado en http://helpnet.flexerasoftware.com/installshield17helplib/GetresEnv_variable_example.htm no se que tipo de refrescar se puede complementar http://techtastico.com/post/como-refrescar-la-memoria-ram-del-pc-con-el-bloc-de-notas/ o si bien es asi http://foro.elhacker.net/windows/ayudacomando_para_refrescar_como_apretar_f5-t251089.0.html o lo mas simple confirmar el valor con lectura en regedit http://www.ayudadigital.com/windows/como_actualizar_iconos_escritorio.htm Título: Re: Como aplicar cambios al registro y refrescar el sistema sin tener que reiniciar? Publicado por: Eleкtro en 23 Enero 2013, 09:37 am Estoy casi seguro que se requiere usar la api con sendmessage o postmessage,
gracias por la info, pero he intentado convertir los dos códigos de aquí a VB, y en ningún convertidor funciona: http://helpnet.flexerasoftware.com/installshield17helplib/GetresEnv_variable_example.htm (¿Alguien que domine C# puede ayudarme a convertirlos?) He intentado los demás ejemplos pero sólo refrescan el escritorio. Esto es lo que intento reproducir en mi aplicación, que es una aplicación para monitorizar USBs: * En Windows 7 > Opciones de carpeta > "Ocultar unidades vacías en la carpeta Equipo" Al activar la opción, Windows hace un refrescado de sistema ocultando los pendrives vacíos, es un refrescado..."especial" que no es lo mismo que apretar "F5" para refrescar el escritorio. Título: Re: Como aplicar cambios al registro y refrescar el sistema sin tener que reiniciar? Publicado por: apuromafo CLS en 23 Enero 2013, 14:48 pm ok, esta dificil encontrar referencia
pillo a lo mas esta informacion sobre las unidades http://msmvps.com/blogs/dmartin/archive/2010/01/25/la-opci-243-n-quot-ocultar-unidades-vac-237-as-en-la-carpeta-equipo-quot-no-hace-lo-que-mucha-gente-cree.aspx Título: Re: Como aplicar cambios al registro y refrescar el sistema sin tener que reiniciar? Publicado por: 3mp3z@ndo en 23 Enero 2013, 15:11 pm He estado probando y algo que parece dar resultado para aplicar los cambios sin reiniciar es matar el proceso del explorer, después lo vuelves a iniciar inmediatamente y listo.
No es muy "elegante" pero en mi caso ha funcionado perfectamente Un saludo Título: Re: Como aplicar cambios al registro y refrescar el sistema sin tener que reiniciar? Publicado por: Crazy.sx en 2 Febrero 2013, 02:25 am Matar y reiniciar el proceso explorer.exe es la opción que me quedaba cuando era el rey del batch. :xD :xD
Probá con esto y contás qué onda, suerte. |