How to: Change windows shell

If your looking for a really embedded customized device in your car then I suggest you toss out the window GUI (Graphic User Interface) and impliment a new OS shell such as your favorite front end. Poeple concerned with nLite'd systems should consider "taking this plunge" to really customize thier systems. This method of customization is going to be the next generation of CarPc's making the front end act more like a OS wrapper than a 3rd party application.

Here's what your going to acomplish with this guide:

The windows GUI or Shell for those of you who don't know is called "Explorer.exe" not to be confused with Iexplorer.exe, which is Microsoft's web browser. Explorer.exe is your taskbar,desktop and startmenu. What your going to do is make windows start your front end instead of explorer.exe, meaning you will no longer have a desktop, taskbar or startmenu. This enables your system to boot MUCH quicker (depending on how your front end is coded) and because your front end is the new shell if it crashes while your driving windows automatically re-executes it just like it does to explorer.

Now a little warning: This isn't the hardest thing to impliment but the ramifications may be detrimental to your carpc so please think ahead before going through these steps. If you don't plan ahead for this customization then you can back yourself in a corner with no way to get back to a working windows GUI.

lets begin

Alright, so lets begin messin around with your machine !!! There are two ways to change the windows front end. I highly recomend you change the shell through registry with minlogon enabled systems. If your system is not Minlogon enabled then I suggest you impliment for the best sucess in this writeup. How ever, there is a way to change the shell using another method which I will explain last. See "GPEDIT.MSC" title below.

Minlogon Enabled Systems:

Before you even think to continue make SURE your system is done. By this I mean you have a 100% working carpc OS. Screen Resolutions should be properly set and by this I mean if you have an 800 * 600 res skin then change your systems screen res to 800 * 600 to make the front end "full screen" If you have EWF enabled then make sure to turn it off also. Once your system configuration is solid let's start thinking about front ends. If your writing your own your going to need Shell capabilities so that you can still access windows applications such as CMD,Regedit and explorer. Programmers I posted quickly shell app code below its basically the framework to an easy shell app to save you guys some time. It's written in VB.net and your probably going to have to make a few changes.

For everyone else not writing thier own front end this is where your going to have to do a little homework. You need a front end that can launch external applications. Such as CMD & Regedit so that once the front end is set as the new shell if you want to make a configuration change you can do so by entering the registry from your front end. This is where you can mess up and back yourself into a corner. Frodoplayer has a great 3rd party launch application.

Now lets flip your system upsidedown !! Open up Regedit and point to this reg hive:

Before you get too excited export your old registry to the systems root directory by clicking file->export and toss the file to your root (this is gunna be your easy way out when you need to make a system change) name the file: enableExplorer.reg. Now back in the registry change the "Shell" property to point to your front ends directory location. BE CAREFUL HERE if your directory location has spaces you might want to change it to have no spaces then in registry do the same. example:

Code:

"Shell"="C:\FrodoPlayer\FrodoPlayer.exe"

I cannot stress enough to double check your entry to make sure it is EXACTLY the same as the directory location of the front end. If you mess up here you might as well toss your machine out the window cause your gunna fark your machine.
Save Changes and Export the new registry to your root drive and name this one CustomShell.reg there's your easy way back to a shell so your never gunna have to remember how you did this again... Just launch the explorer.exe shell from your front end and click enableExplorer.exe. Unless you have ewf enabled.

I use hiberation to resume FP everytime i get into my car, would this be recommended using hib. WOuld there be a difference in boot time?

thanks

Well probably, even though windows remembers the state it was previously in when it goes into hibernate what if FP crashes ? While your driving you'd still have to re-launch FP. When windows considers FP as your shell and it crashes, it would re-launch the app automatically.

Well probably, even though windows remembers the state it was previously in when it goes into hibernate what if FP crashes ? While your driving you'd still have to re-launch FP. When windows considers FP as your shell and it crashes, it would re-launch the app automatically.

ohh ****, i didnt know that, that would be perfect because FP is still a little buggy and it does lock up on me a couple of times, and then i have to shut off my car, hook up my keyboard,turn on the car, press F8 to delete the restore point, then load windows, then FP.....

But when FP only locks up, would that make FP reload as the shell automaticlly

.

no it would act as if the shell locked up windows doesnt restart it.. Only if it crashes. However you wouldn't have to whip out your KB... ALso check out what were doing about HORM that way you dont have to set a new restore point in hibernation

no it would act as if the shell locked up windows doesnt restart it.. Only if it crashes. However you wouldn't have to whip out your KB... ALso check out what were doing about HORM that way you dont have to set a new restore point in hibernation

I see now.....So with me using HORM - if it locked up I would just shut off my car, turn it back on and im good to go?

I just started to read into HORM, I understand how it works but my main concern is that i dont want to loose the song/spot i was playing when i turn off my car and it goes back into hib.

Let me get this straight....
Basically I set my HORM spot once, for example i set it to where frodo is just loaded with nothing running/playing.....now everytime i start up my car/PC it will resume from that spot listed above, correct? So lets say im listing to a 50 cent song and shut down my car/PC, when i come back to start her up It will be at Frodo just loaded with nothing running/playing, right?

I have tried this shell method using a minimum install of windows98 and winamp as the shell. It worked out awesome. I even ran ultr@vnc as a service so that I could still remotely connect to the pc and transfer files, make some adjustments. Im sure you can also use firedaemon? to setup other programs to run as a service in the background, while still using your favorite app as the shell. Im considering doing this method again with my next install attempt. I accendently burned up the usb ports on my first car-puter, now its sitting in the basement...lol.

camsgs3: yes, you have it right. since HORM is still relatively new I don't think any of the frontends are even considering to implement support for it. Resuming could be done, but since it's a bit complicated to deal with (you can commit changes to a file in the EWF protected volume as long as it does not change in size). So basically you'll restart from the same spot everytime. the advantage is that you don't need to worry about your hibernation file getting corrupted (used to happen to me on Win2000, not sure about XP though) and like you said you can just pull the plug and restart and it'll resume again no prob instead of cold booting. the best thing to do is hibernate it on the radio or your favorite song I guess...