Tech Off Thread

7 posts

Replacing the windows shell

Back to Forum: Tech Off
  • User profile image
    Dr Herbie

    Hi folks,
        I the good/bad old days (delete as appropriate) you could replace the Windows 3.1 shell with your own software so that when a user logged in your software started and when you exited your software, you were logged out of Windows again.

    Is there any way to do this with current versions of Windows?  Our software is often used in factory environments where a single workstation is shared by many people.  We would like to be able to set up a PC that runs our software instead of the explorer shell. 
    We don't really want to get into embedded OS setup, we were more hoping for a set of instructions that our customer's IT guys could follow on a standard WIndows PC.

    Any clues/hints out there?

    Cheers
    Dr Herbie

  • User profile image
    W3bbo

    There's a group-policy setting to run a different shell executable. There's also a setting in the registry. Just replace "Explorer.exe" with your own shell. Such as BBLean or Blackbox and so on.

    Note that actually developing different shells is a whole different ballgame and a LOT harder.

  • User profile image
    Dr Herbie

    W3bbo wrote:

    Note that actually developing different shells is a whole different ballgame and a LOT harder.


    Thanks for that, W3bbo.  We don't want a complete shell replacement, as the PC will be dedicated to running our software (A DB front end).  All we'll have to handle is logging the user back out when the application is closed.

  • User profile image
    Maurits

    Could you call shutdown.exe (from the NT resource kit) in your main form's Unload event?  Don't know if there's a way to programatically log someone out...

  • User profile image
    Sven Groot
  • User profile image
    jmiller76

    I think you want to set it like this:
    [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon]
    "Shell"="C:\\myshell.exe"

  • User profile image
    ddevader

    We did a very similar project at a place of former employment.

    Replacing the shell is very difficult because the first instance of Explorer.exe does a bunch of initialization (at least circa W2K).

    We ended up having a program start up that ran full screen covering the windows desktop and providing a custom login/menu.

    Some gotchas...

    You have to have an app run before Explorer.exe to hook some keys (Windows key...)

    Your startup program has to hook some other keys.

    And so on...

    I may still have some source code lying around.

Comments closed

Comments have been closed since this content was published more than 30 days ago, but if you'd like to continue the conversation, please create a new thread in our Forums, or Contact Us and let us know.