Announcement

Collapse
No announcement yet.

How to: Change windows shell

Collapse
This is a sticky topic.
X
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • How to: Change windows shell

    search helpers: Windows Shell, Change Shell, new shell, explorer.exe, startup applications.

    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.




    Code:
         Dim ProcID As Integer
            Dim autofile As Boolean
    
       'Code Written by Randy B. Intellaworkscarpc.com
       ' Free for everyone     
    
    
    
            Try
    
                If KB_text.txt_TEXT.Text = "" Then
                    custom_MsgBox("Click on the textbox, to enter information.")
    
                Else
                    '*
                    '* let's see if the input was a hot command
                    '*
                    Select Case (LCase(KB_text.txt_TEXT.Text))
    
                        Case "explorer"
                            ProcID = Shell("C:\WINDOWS\explorer.exe", AppWinStyle.NormalFocus)
                            autofile = True
                        Case "cmd"
                            ProcID = Shell("C:\WINDOWS\System32\cmd.exe", AppWinStyle.NormalFocus)
                            autofile = True
                        Case "gpedit"
                            ProcID = Shell("C:\WINDOWS\System32\gpedit.msc", AppWinStyle.NormalFocus)
                            autofile = True
                        Case "gpedit.msc"
                            ProcID = Shell("C:\WINDOWS\System32\gpedit.msc", AppWinStyle.NormalFocus)
                            autofile = True
                        Case "regedit"
                            ProcID = Shell("C:\WINDOWS\regedit", AppWinStyle.NormalFocus)
                            autofile = True
    
                    End Select
    
                    '*
                    '* Ok no hot command was inputted, lets try to exec the command
                    '*
                    If autofile = False Then
                        ProcID = Shell(KB_text.txt_TEXT.Text, AppWinStyle.NormalFocus)
                    End If
    
    
    
                End If
    
    
            Catch ex As Exception
    
    
    
                Program_error(ex.Message)
            End Try
    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:
    Code:
    [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon]
    "Shell"="Explorer.exe"
    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.

    Thats it reboot, cross your fingers....
    Progress [I will seriously never be done!]
    Via EPIA MII
    512MB RAM
    OEM GPS (embedded)
    nLite WinXP pro on
    1GB Extreme III CF card
    Carnetix 1260 startup/ DC-DC regulator
    Software: Still, re-Writing my existing front end in .Net

  • #2
    Change the shell w/o minlogon

    GPEDIT.MSC hack

    Ahh so you don't have ewf but still need a way to change your shell ? here ya go:

    Start->Run->GPEDIT.MSC->user config->admin templates->system-> right hand pane look for (custom user interface) and change this over to point to your front end.
    Progress [I will seriously never be done!]
    Via EPIA MII
    512MB RAM
    OEM GPS (embedded)
    nLite WinXP pro on
    1GB Extreme III CF card
    Carnetix 1260 startup/ DC-DC regulator
    Software: Still, re-Writing my existing front end in .Net

    Comment


    • #3
      Very well written, thanks. Great point made to make make sure you have a 100% working OS.
      www.mobile-effects.com

      Free file hosting, picture gallery hosting for installs, PM me.

      Internet's first Front End Skin browser, featured installs, downloads, links, informative articles - all free to registered users.

      Comment


      • #4
        thanks intella for the guide.

        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
        [M10K][TinyXP][Roadrunner Frontend][OEM Enclosure]
        [iGmon]
        Download MP3 MixTapes

        Comment


        • #5
          Originally posted by camsgs3
          thanks intella for the guide.

          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.
          Progress [I will seriously never be done!]
          Via EPIA MII
          512MB RAM
          OEM GPS (embedded)
          nLite WinXP pro on
          1GB Extreme III CF card
          Carnetix 1260 startup/ DC-DC regulator
          Software: Still, re-Writing my existing front end in .Net

          Comment


          • #6
            Originally posted by IntellaWorks
            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
            [M10K][TinyXP][Roadrunner Frontend][OEM Enclosure]
            [iGmon]
            Download MP3 MixTapes

            Comment


            • #7
              .

              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
              Progress [I will seriously never be done!]
              Via EPIA MII
              512MB RAM
              OEM GPS (embedded)
              nLite WinXP pro on
              1GB Extreme III CF card
              Carnetix 1260 startup/ DC-DC regulator
              Software: Still, re-Writing my existing front end in .Net

              Comment


              • #8
                Originally posted by IntellaWorks
                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?

                thanks again intella for clearing things up
                [M10K][TinyXP][Roadrunner Frontend][OEM Enclosure]
                [iGmon]
                Download MP3 MixTapes

                Comment


                • #9
                  I have tried this shell method using a minimum install of windows98 and winamp as the shell. It worked out awesome. I even ran [email protected] 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.
                  Current Progress
                  Fujitsu Stylistic 3400 TabletPC
                  Win2K
                  Wireless Keyboard
                  300w Inverter
                  40gig External USB Hard Drive
                  FM Modulator
                  My Carputer

                  Comment


                  • #10
                    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...
                    EWF, HORM, MinLogon on XP.

                    Zotac ION Atom N330, 2GB low-profile RAM, M3-ATX
                    Win Embedded Std 2011 RC
                    OCZ Vertex Turbo 30GB SSD
                    Lilliput 629 Transflective, WRX Screen Mount
                    BlueSoleil BT, i-Blue GM-2 GPS, DirectedHD Radio, Andrea Mic
                    VoomPC 2

                    Comment


                    • #11
                      if i change my shell to say road runner, will all of my codec's and other programs work?
                      http://jupiter.walagata.com/w/djpm05/sig.jpg

                      Comment


                      • #12
                        Originally posted by ATXaccord05
                        if i change my shell to say road runner, will all of my codec's and other programs work?

                        Yes, the windows shell explorer.exe doesn't do much when you take it off the system. The XP OS is still fully functional, I've never used road runner but as long as it has a launch feature to enable you to launch pre-installed 3rd party applications you should be fine.


                        As far as HORM is concerned none of the current Front Ends will support it because its so new. I know that in my front end I'm supporting it and I think SForioto is designing a front end that will support it I'm probably not going to release my front end simply because I wont be able to provide support for the front end itself.

                        EDIT: this is an update, I think that RoadRunner supports HORM now. YAY!
                        Progress [I will seriously never be done!]
                        Via EPIA MII
                        512MB RAM
                        OEM GPS (embedded)
                        nLite WinXP pro on
                        1GB Extreme III CF card
                        Carnetix 1260 startup/ DC-DC regulator
                        Software: Still, re-Writing my existing front end in .Net

                        Comment


                        • #13
                          if i use centrafuse as a shell could i still use my jumpdrive to copy files to the hd?

                          i'd like more info on how to accomplish this.

                          my hibernation times suck... probably because i have nvidia mobo, any suggestions?
                          [4Runna]

                          next - wifi

                          Comment


                          • #14
                            Originally posted by nsmoller
                            if i use centrafuse as a shell could i still use my jumpdrive to copy files to the hd?

                            i'd like more info on how to accomplish this.

                            my hibernation times suck... probably because i have nvidia mobo, any suggestions?

                            I'm not familiar with centra fuse, as long as you are able to shell or open external applications from centrafuse then you'll be able to move files over by shelling (or opening) explorer.

                            WHy don't you test your system ? Open up centrafuse, and go to your shelling applications and launch (explorer.exe) under C:\Windows\system32\Explorer.exe

                            If you cannot get explorer to open, then I'd say choose another front end.
                            Progress [I will seriously never be done!]
                            Via EPIA MII
                            512MB RAM
                            OEM GPS (embedded)
                            nLite WinXP pro on
                            1GB Extreme III CF card
                            Carnetix 1260 startup/ DC-DC regulator
                            Software: Still, re-Writing my existing front end in .Net

                            Comment


                            • #15
                              I would suggest setting up the shell being booted based upon the user. I have this set up on my home machine. For the carpc I would suggest making your admin account have the standard explorer.exe and your commonly used account have the replacement shell.

                              I don't remember what the keys are off hand. When I get home from work I can look at my registry and find out what they are and what values you should have in there.
                              Just because I haven't posted alot doesn't mean I haven't searched and know what I am talking about!

                              Progress Meter [███████████] 2%

                              General layout design is done in my head. Just need the money to buy the stuff and start building.

                              Comment

                              Working...
                              X