Hello everybody,
I have a quick but probably involved question: How can I replace the shell?

I'm under the naive impression that you can replace the "shell=explorer.exe" in system.ini with your application and be done with it. Is that true?

Also, does anyone know what I'd have to be responsible for? For example, I'm sure I'd have to watch for Ctrl+Alt+Delete and also Logoff and Shutdown messages. What about running programs at startup (like ICQ or whatever)? Or does the OS do this for me? Or the shell's namespace?

Any input is appreciated :)

Thanks in advance,

--Chorus
Posted on 2002-11-28 07:37:07 by chorus
I'm under the naive impression that you can replace the "shell=explorer.exe" in system.ini with your application and be done with it. Is that true?


I think it is true. I have read some magazine regarding the changing of shell. In order to set back to the default shell (explorer), you need to change the system.ini back to "shell=explorer.exe".

You need to be responsible to lanuch shortcuts in the popup Startup of the Start Menu and to read the following resgistery keys:

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Runonce
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx

and run all program there.

There are more resgistry keys to look into but that 4 keys I am sure is a must to run the programs in it.
Posted on 2002-11-28 08:13:50 by roticv
I spended some time with setting up a Zero Administration Kit for Win98, this changes also the shell.
It is even used in the windows start mode "secure mode". WIth Win95 you can choose during setup
if you will use the new shell, or the good old win3.11 file manager :)
Posted on 2002-11-28 08:34:21 by beaster
I'm under the naive impression that you can replace the "shell=explorer.exe" in system.ini with your application and be done with it. Is that true?
True! and log-off/on to see the new shell.
Also, does anyone know what I'd have to be responsible for? For example, I'm sure I'd have to watch for Ctrl+Alt+Delete and also Logoff and Shutdown messages. What about running programs at startup (like ICQ or whatever)? Or does the OS do this for me? Or the shell's namespace?
IIRC The system will load/run all programs specified in the system.ini AND some in the system registry.
The software in the 'StartMenu>Programs>Startup' folder is executed by the shell.

IIRC, These are the registry keys you need to look for:
HKEY_LOCAL_MACHINE\
\Software\Microsoft\Windows\CurrentVersion\
\Run\, \RunOnce\, \RunOnceEx\, \RunServices\, \RunServicesOnce\

HKEY_CURRENT_USER\
Software\Microsoft\Windows\CurrentVersion\
\Run\, \RunOnce\, \RunOnceEx\, \RunServices\, \RunServicesOnce\


Phew, now that I got that out of the way. There are alot of open source shells already created.
In many diffrent programming languages. So I would suggest to hit the net and get googleized!

Have phun! :alright:
Posted on 2002-11-28 08:38:57 by natas
I began to look that loooong ago too, but all I did was gather some info and some codes... never implemented or tested. But if you do anything fun, share with the board! ;)

Greetz!
Posted on 2002-11-28 15:40:01 by wicr0s0ft