> The only hard facts that we can use are hardcoded/compiled-in 
> locations and explicit information passed via command-line 
> arguments or environment variables.  None of this seems to be 
> useful for Windows installations.  As far as I recall, the 
> Windows installation routines only ask you for one 
> installation directory but not all the individual ones.  If 
> this is true, then we could hardcode relative paths, but 
> maybe I'm mistaken.  Can someone give a couple of full 
> examples of typical Windows installation layouts?

Not sure if this is exactly what you're looking for, but here's a try.

Microsoft SQL Server 2000:
Base directory: c:\Program Files\Microsoft SQL Server
Server root:    c:\Program Files\Microsoft SQL Server\MSSQL
.EXE & .DLL:    c:\Program Files\Microsoft SQL Server\MSSQL\Binn
.sql used@inst: c:\Program Files\Microsoft SQL Server\MSSQL\Install
Internal .DLLs: c:\Program Files\Microsoft SQL Server\80\Com
Client tools:   c:\Program Files\Microsoft SQL Server\80\Tools
Default datadir:c:\Program Files\Microsoft SQL Server\MSSQL\Data


Not an example of a simple layout, certainly. For something a little
more "consistent", Exchange Server 2000:
Base directory: c:\Program Files\exchsrvr
.EXE/.DLL:	    c:\Program Files\exchsrvr\bin
Default Datadir:c:\Program Files\exchsrvr\mdbdata
Language DLLs:  c:\Program Files\exchsrvr\res
Schema @inst:   c:\Program Files\exchsrvr\Schema
Log files:      c:\Program Files\exchsrvr\<servername>.log

As you can see, this one is more clean.

You can typically change the Base directory, as well as the data
directory. The other subdirectories are normally locked relative to the
base directory. Some will let you split out client side files and server
side files into different directories, if both are installed. 

//Magnus


Mon, 3 May 2004 09:41:07 +0200
"Magnus Hagander" <mha@sollentuna.net>
Re: Fixed directory locations in installs