Cómo hacer un inicio exe en el inicio de Windows [duplicar]


Posible Duplicado:
Cómo poner un archivo exe en el inicio de Windows

Supongamos que he construido una aplicación en C#, Una vez que la instale, quiero que se ejecute en segundo plano cada vez que se inicie Windows,o puede decir que un usuario inicia sesión en su cuenta de Windows. Hay alguna manera de que pueda hacer eso? Excepto escribir un servicio de Windows?

La aplicación básicamente muestra mensajes cuando se activa un determinado evento Gracias

Author: Community, 2011-03-22

9 answers

Añadir al acceso directo a la carpeta de inicio de Windows:

Environment.GetFolderPath(Environment.SpecialFolder.Startup)

O añadir al registro, algo como esto:

RegistryKey add = Registry.CurrentUser.OpenSubKey("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run", true);
add.SetValue("Your App Name", "\"" + Application.ExecutablePath.ToString() + "\"");

Puede cambiar CurrentUser a LocalMachine si desea que se ejecute con todos los usuarios. Gracias a Aidiakapi.

 55
Author: Badr Hari,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2013-06-11 08:00:00

Esto se puede hacer usando el registro de Windows. Te recomiendo que compruebes estas claves de registro.

HKLM\Software\Microsoft\Windows\CurrentVersion\Run
HKLM\Software\Microsoft\Windows\CurrentVersion\RunOnce
HKLM\Software\Microsoft\Windows\CurrentVersion\RunServices
HKLM\Software\Microsoft\Windows\CurrentVersion\RunServicesOnce
HKCU\Software\Microsoft\Windows\CurrentVersion\Run
HKCU\Software\Microsoft\Windows\CurrentVersion\RunOnce
HKCU\Software\Microsoft\Windows\CurrentVersion\RunOnceEx 
 13
Author: Jonathan,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2011-03-22 16:02:51

Puede agregar su aplicación al registro para que se ejecute al inicio en

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
o
HKEY_CURREN_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Run

O puede agregarlo a la carpeta de inicio del sistema.

Estas son probablemente las opciones más comunes/más fáciles si no desea escribir un servicio.

 2
Author: Quintin Robinson,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2011-03-22 16:03:17

Debe configurar una nueva clave en el registro que apunte a su ejecutable.

HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run

Más información en este enlace http://msdn.microsoft.com/en-us/library/aa376977 (v=vs.85). aspx

 2
Author: Javi R,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-09-08 06:58:40

La forma más fácil es ponerlo o un atajo a él en %userprofile%\Start Menu\Programs\Startupdirectory o %allusersprofile%\Start Menu\Programs\Startup

Las claves de registro HKLM\Software\Microsoft\Windows\CurrentVersion\Run (todos los usuarios) y HKCU\Software\Microsoft\Windows\CurrentVersion\Run (solo el usuario actual) también servirán.

Instalarlo como un servicio es a menudo un buen enfoque, pero no si vas a ser interactivo como dices.

 1
Author: Jon Hanna,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-09-08 07:00:01

Puede poner un acceso directo a la aplicación en C:\Users\@username@\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup.

¿ Está utilizando el proyecto de configuración de Visual Studio? Si es así, puede establecer el acceso directo directamente desde allí.

 0
Author: as-cii,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2011-03-22 16:03:46

Bueno, esto realmente suena como que debería usar un "servicio de Windows".

Hay otras opciones como incluir un acceso directo al EXE en la carpeta "Inicio" en el Menú Programas ("Todos los usuarios" si desea que se ejecute para todos los usuarios en ese sistema).

Otra opción sería utilizar el registro de Windows. Puedes añadir una entrada a "Run"que apunte al exe:

* HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run
* HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run
* HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunOnce
* HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunOnce
 0
Author: Patric,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2011-03-22 16:04:05

Ya que nadie más lo ha mencionado, señalaré que también puede lograr esto usando una Tarea Programada cuyo disparador es 'Al iniciar el sistema'. Sin embargo, no he probado esto con una aplicación que necesita interacción de interfaz de usuario - funciona para un proceso en segundo plano, pero sospecho que no funcionaría con algo que necesita un contexto de escritorio (ya que no hay uno hasta que un usuario inicia sesión).

 0
Author: Eight-Bit Guru,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2011-03-22 16:08:05

Puede escribir el Path al ejecutable en el Registry

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run

Y se ejecutará cada vez que inicie Windows.

 0
Author: fixagon,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-09-08 06:58:06