yes - the system has an explorer ....
|
I know that a lot of Windows-users don't feel well if they don't
have an explorer - so I added the option to run explorer as the
shell.
As this explorer-shell is much smaller than for example Sherpyas
XPE don't expect the same functionality like you get with XPE.
I designed the shell with speed and small footprint in mind.
|
Prepare Windows-sources
by editing hivecls.inf:
You will need 2k3-sp1 Windows-sources - if you don't have a CD with Servicepack
1 integrated you can use BartPE-builder or nlite to slipstream the servicepack
into the 2k3 built 3790.
I use PEbuilder 3.1.3 and as this version has problems with one of the
source-infs you need to copy all files to some writeable area as you have
to edit the file hivecls.inf.
Go to the end of the file and look for a [Strings]-section. If you find
two [Strings]-sections you need to merge this two sections into one -
simply delete the second [Strings]-line. PEbuilder can't handle two [Strings]-sections
and the result would be some strange directory names starting with %...
(Thanks to Sherpya for finding this)
Download all files mentioned in this block ...
Sysinternals
junction.exe - this is required as it is needed by the startup-batch
to link from RAMdrive to where-ever ...
Sysinternals
sync.exe - this is not required though I am sure I will use it as
soon as we start to play with virtual disks ...
Paragliders setpagefile.exe
- this is required - this is a small GUI that will help you to select
a local disk for paging
Paragliders hwpnp.exe
- this is required - it is used to detect plug'n'play hardware
Korales Services
PE - this is not required - but if you know it you will surely want
to add it - also hosted by Paraglider
Sherpyas
infcachebuilder.exe - this is required. You need to run this after
Pebuilder has created the output-directory. It is needed to speed up booting
and to enable plug'n'play. The link points to Sherpyas buildscripts.
Ken Katos
vdk.exe - this is required. In fact it is one of the most important
ingredients. Thanks Ken Kato for sharing this great tool.
Ken Katos
virtual floppy drive - this is not required - but you surely want
to add it ...
Quicksofts RAMdisk - extended version
or better is required - the RAMdisk is not freely available - it's just
6 Euros that you will not regret having spend for a reliable RAMdisk ...
PEbuilder 3.1.3 - this is obviously
required. I have no idea when Bart Lagerwij will release a new version
- you might have heard about 3.1.5 or 3.1.7 - I have tested with 3.1.3
only so make sure you download the same version.
VMware-sources
This build starts with Workstation 5 - so you need to have an active Workstation
5 installation as we need to export your licence. If you already have
upgraded to Workstation 5.5 - no problem. Simply create a new 2k3-sp1
VM and install Workstation 5 inside of that VM. You will not be able to
start VMs with this VM in a VM but it will do for this purpose.
Have I forgotten anything? - I guess no - all files that are not listed
here are either part of the moaplugin or come with the PEbuilder.
Prepare PEbuilder ...
Extract a fresh copy of PEbuilder 3.1.3
Rename pebuilder\plugin to plugin-org
Prepare MOA
Extract a fresh copy of moaplugin and copy the subdirectory "plugin"
to "pebuilder\plugin"
Populate the directory pebuilder\plugin\zzz-sanbarrowshell\
Check this directory - it should contain all files that are listed here
- the first group is contained in the moaplugin but there are some more
files that you need to copy from your working 2k3-sp1/VMware system.
I have listed some files as optional - feel free to add or skip them.
;;; included in moa-plugin ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
cmds required
i386\system32\shell\loadbase.cmd
i386\system32\shell\loadvmware0.cmd
i386\system32\shell\loadvmware1.cmd
;;; included in moa-plugin ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
penetcfg required
i386\system32\shell\penetcfg-dhcp-moon-hamburger.ini
i386\system32\shell\penetcfg-dhcp.ini
i386\system32\shell\penetcfg-static.ini
i386\system32\shell\penetcfg-vmware-only.ini
i386\system32\shell\penetcfg-vm-default.ini
i386\system32\shell\penetcfg.ini
;;; included in moa-plugin ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
peshell required
i386\system32\shell\peshell.exe
i386\system32\shell\peshell.ini
;;; included in moa-plugin ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
wallpapers ...
i386\system32\shell\nu2go.bmp
;;; included in moa-plugin ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
cmds optional
i386\system32\shell\hwpnp1.cmd
i386\system32\shell\hwpnp2.cmd
i386\system32\shell\hwpnp3.cmd
i386\system32\sam.reg,,4
;;; included in moa-plugin ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
bluebox required
i386\system32\shell\blackbox.rc
i386\system32\shell\bluebox.exe
i386\system32\shell\bsetroot.exe
i386\system32\shell\blueboxhk.dll
i386\system32\shell\menu.rc
i386\system32\shell\sanbarrow
i386\system32\shell\sanbarrowgreen
;;; files ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
ocx into system32
;;; files ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
copy from your working system
i386\system32\comdlg32.ocx
i386\system32\mscomct2.ocx
i386\system32\tabctl32.ocx
;;; files ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
redistributable files (VMware)
;;; files ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
copy from your working system
i386\system32\atl.dll
i386\system32\mfc71.dll
i386\system32\mfc71u.dll
i386\system32\mscomct2.ocx
i386\system32\msvcp71.dll
i386\system32\msvcr71.dll
i386\system32\msxml3.dll
i386\system32\msxml3r.dll
i386\system32\richtx32.ocx
;;; files ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
copy from your working system
i386\system32\msvbvm50.dll
i386\system32\emptyregdb.dat
i386\system32\msjava.dll
;;; files ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
penetcfg required
;;; files ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
copy from pebuilder\plugin-org
i386\system32\shell\penetcfg.exe
i386\system32\shell\penetcfg.lic
;;; files ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
nu2menu is optional
;;; files ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
copy from pebuilder\plugin-org
i386\system32\shell\nu2menu.exe
i386\system32\shell\nu2menu.xml
i386\system32\shell\nu2menumsg.exe
i386\system32\shell\setres.exe
i386\system32\shell\peloader.exe
i386\system32\shell\peshutdown.exe
;;; files ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
misc programfiles required
;;; files ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
download from http://www.paraglidernc.com/
i386\system32\shell\setpagefile.exe
i386\system32\shell\hwpnp.exe
i386\system32\shell\hwpnpdll.dll
;;; files ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
download from http://sysinternals.com
i386\system32\shell\junction.exe
i386\system32\shell\sync.exe
;;; files ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
misc programfiles optional
;;; files ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
nice to have but optional
i386\system32\shell\screenhunter.exe
i386\system32\shell\servicespe.exe
i386\system32\shell\thegun.exe
i386\system32\shell\regexpander.exe
i386\system32\shell\sleep.exe
i386\system32\shell\EXECUTEENCRYPTED.EXE
i386\system32\shell\ob1.exe
;;; files ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
ken kato required
;;; files ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
download from http://chitchat.at.infoseek.co.jp/
i386\system32\shell\vdk.exe
i386\system32\shell\vdk.sys
;;; files ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
ken kato optional
;;; files ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
download from http://chitchat.at.infoseek.co.jp/
i386\system32\shell\vfd.dll
i386\system32\shell\vfd.exe
i386\system32\shell\vfd.sys
i386\system32\shell\vfdwin.exe
Prepare RAMDISK
Populate the directory the directory pebuilder\plugin\ramdiskpro with
the files from your copy of the extended RAMdisk
and make sure that you don't overwrite the inf that is already there.
In case you want to use another RAMdisk - feel free to try it - remember
to check if your RAMdisk can be resized by the commands used in loadbase.cmd
If you need to change the inf-file as well - comment any entries in this
inf that deal with %temp% or %profilesdir%
FAQ
Why do you use ramdrive R:\ ?
Simply because I like to build my plugins on systems with the same layout
as BartPE.
I simply don't know how to assign a harddisk to a floppy-driveletter.
If you still insist on useing letter B: - I would miss the options I have
by useing R:\ ....
Why don't you use "Default User"
I want to run things like OpenShell SSH-server and be ready for RDesktop
- I need a username that is possible, that can be established in the SAM-database
so that I can create registry-entries by useing a full install.
That's why my default user uses a ONE-WORD username - simply Moon.
As I don't like names with spaces "all users" are "anybody"
I admit, this is unusual. If you don't like it, you can stop reading here
as all the VMware-related stuff needs exactly this environment.
Why do you allways use the RAMdisk ?
I allways start with a small RAMdisk and create blank directories:
R:\home
R:\temp
R:\programfiles
R:\redos
R:\vm
Then I take a look around
- if I find a traveldisk (USB or FireWire) that I used before it will
contain the directory "moahome".
If this directory "moahome" contains the file "useme.tag"
I accept this invitation and I use junctions to link the 5 directories
from the RAMdisk to the same structure inside "moahome".
- if I don't find "moahome" on a traveldisk or localdisk I offer
the choice to use a RAMfile. If this is wanted a virtual disk is extracted
to the selected local-directory. It contains the same directory structure
like the "moahome" directory.
Again I use junctions to link from R:\... to the RAMfile
- if none of the options above is possible I extract the "moahome"-tree
from a 7zip-self-extracting archive into the RAMdisk.
No matter where I built my home - it allways looks the same.
I agree - this maybe unusual - ... so what ... it is better than anything
that I've seen before and I am sure you will like it too.
Why is the R:\vm\vmware directory blank ?
If I decide to run Workstation 5 I look around and see where I can find
the necessary files. If I find them on a local disk - fine!
I create a junction from R:\vm\vmware to the local copy and can run the
rest of the vmware-launch commands as usual - pointing to the directory
specified in the registry: R:\vm\vmware
In short terms: R:\vm\vmware is blank as it simply points to anywhere.
Don't try things like ...
... add a RAMdisk-resizers - if you add RAMdisk-resizers in spite of
our recommendations you will immediately loose all support by sanbarrow.com
... play with profiles - if you thing you need to change the layout of
the home-directory you will immediately loose all support by sanbarrow.com
... start to play with bootvid.dll or other kernel-related files you will
immediately loose all support by sanbarrow.com