Jump to content

[App] Boot Folder creation


Recommended Posts

I've been busy trying to create my own Multi-Boot DVD using the Creating a Multi-Boot DVD tutorial.

One of the things that annoyed me with that was the given method to create a Boot Folder, because I think messing with you boot.ini doesn't really win a price for elegance. So I started looking for an alternative method.

As a result I created a small application (which requires the Microsoft .NET 1.1 Framework) of about 32 KB, which creates the Boot Folder for you.

It asks for a folder containing the Windows files for which you want to create a Boot Folder, for example: D:\AIO-DVD\SETUP\XP\Professional.

And it asks you to select a folder that you want to use as a Boot Folder, for example: D:\AIO-DVD\PRO1\.

If you then press the 'magic' button, it automatically copies the required files to that folder.

The application can also be used from a script:

start /wait BootFolder.exe /u /f SourcePath DestinationPath

/u          Unattended - Don't show the GUI and start the process directly
            (Note that the GUI does pop-up in case of errors or invalid parameters)
/f          Force - Don't verify that the ouput folder is empty
            (Note that this option isn't available through the GUI, but it will affect the GUI)
SourcePath  The folder which contains the Windows files for which you want to create a bootfolder
TargetPath  The empty folder where you want to copy the bootfolder files to

I've tested it on the following Windows versions, but it should work on others as well:

- Windows XP Professional SP2 English

- Windows XP Professional SP2 Dutch

- Windows Server 2003 English


1.3 (08-07-2005)

- Fixed a problem when the same file was referenced more than once in dosnet.inf

- Added the /f option, to skip the 'target is empty' verification

1.2 (13-06-2005)

- Reworked Copy code, because of instability with that code

1.1 (11-06-2005)

- Added 64-bit windows bootfolder support

1.0 (14-05-2005)

- Initial release


Edited by Nazgul
Link to comment
Share on other sites

I'll give it a try next time I'm working on my multi-boot dvd. This however will have to wait until after I have finished the UA cd.

Can you give an example of:

The application can also be used from a script, by passing the source and destination folders as well as an /u (unattended) option as command line arguments.



Link to comment
Share on other sites

I use the following part of my UA-DVD script to call my app:

REM -------------------------------------------------------------------------------------------------------
REM --- Create BOOT Folders -------------------------------------------------------------------------------
REM -------------------------------------------------------------------------------------------------------
 MD E:\Work\PRO1
START /wait E:\Tools\BootFolder.exe /u E:\Work\SETUP\XP\Professional\US\Attended\Base E:\Work\PRO1

Link to comment
Share on other sites


I have testing this Tool to make my Bootfolder and after this i install with this Bootfolder Windows XP.

No Problems with install.

Thanks for this very nice Tool. :thumbup:thumbup

(sorry, for my bad english)



Link to comment
Share on other sites

I haven't tried it on x64, because I don't have one available to me.

But if you could attach your dosnet.inf file, I'd be able to see if Microsoft changed anything that 'breaks' my tool.

@johny_cale: Great to hear it worked for you. :)

Link to comment
Share on other sites

Yes, i'm in the windows root, i've tried in the i386 directory as well. i've also tried to use subst to try to get it to see the windows root as a stand alone drive. Is there some other check in the program that may be tripping it.

Link to comment
Share on other sites

 private bool VerifySource()
   if(File.Exists(SourceText.Text + @"\I386\dosnet.inf"))
   return true;
   ErrorLabel.Text="The specified Source folder does not contain a DOSNET.INF file!";
   CreateButton.Enabled = false;
   ErrorLabel.Visible = true;
   return false;
 return false;

This is the only piece of code that triggers that error.

It first checks if the specified directory existst and if it does, if it contains a dosnet.inf in a subdirectory called I386.

I can't figure out what could be causing your problem.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.

  • Create New...