Creo que no estás captando la idea.
win y min son dos cosas totalemente distintas aun cuando ambas se guarden en el registro.
win es un parámetro en la línea de comandos de la aplicación. Siempre que se ejecute la aplicación con ese parámetro correrá minimizada sin importar más nada. Pero ese parámetro sólo lo usaremos en
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
que es donde se indican las aplicaciones que iniciarán junto con Windows:
miaplicacion --- miaplicacion.exe win
Siempre que esté esta entrada en el registro se correrá minimizada la aplicación cuando inicie Windows y sólo entonces pues será el único lugar donde le pasemos ese parámetro en la línea de comandos.
Si la aplicación se corre posteriormente, esa entrada del registro ya no cuenta para nada. Esa entrada no la lee nuestra aplicación directamente sino el mismo Windows al iniciar.
Enfatizo:
En corridas subsecuentes, la aplicación no encontrara ese parámetro con ParamStr pues no se le especifica en la línea de comandos.
Entonces, no habiendo tal parámetro, la aplicación leera del registro el valor de
min que es una entrada en
HKCU\Software\miaplicacion
que es donde normalmente se guardan configuraciones de la aplicación:
modo_inicio -- min
y el valor dependerá de lo que haya escogido el usuario. Si el usuario decide no iniciar minimizado el valor desaparecerá o valdrá otra cosa:
modo_inicio -- normal
pero como la aplicación, cuando se incia desde otro lugar que no sea en
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
no encuentra nada de win, iniciará en modo normal.
// Saludos
|