Jump to content

! WINNT.EXE can't copy drivers integrated with nLite


Recommended Posts

Hi! I'm installing my nLited XP Pro SP3. Works perfect from CD (has been installed many many times)...

BUT Now I'm installing it from HDD from DOS command prompt using WINNT.EXE.

As I want to install it unattended (as I always did before from CD) I use the same WINNT.SIF file.

While in textmode, copying files (at 98%) installation says it can't copy some files. And that would be all the integrated internally by nLite drivers.

Well, I skip them all. Then it finishes it's job, reboots and installs as usual (NOTE - WINNT.SIF is working OK).

XP installs as usual, but, obviously, non of the integrated drivers are installed. That is one issue I hope you will help with.

The other one is that I install some additional stuff using RunOnceEx. I'm starting it from CMD file which in turn is started from cmdlines.txt.

The CMD file and that additional stuff are located in the "Unattended" dir which is at CD's root (and is at the same level on HDD as I386 is). Now since the "Unattended" dir isn't copied anywhere by WINNT.EXE nothing is installed from there earthier. So the question is where to place it for WINNT.EXE to find and copy it. And what about the $OEM$ folder (the one that is at CD's root and on the same level as I386) - is it processed/copied by WINNT.EXE?

NOTE that this method involves source files copying TWICE:

First, files from source folder are copied somewhere to TEMP destination immediately after starting WINNT.EXE. That seems to be the point where my additional folders and NLDRV dir are not copied.

Then, after reboot, in the OS Selection screen there is a new item called smth like Upgrade/Installation. That's our XP installation in fact. So I hit it, and the usual installation starts, as if started from CD. Now files are copied again to the destination drive. That's where it says it can't find integrated drivers. Then install goes as usual.

Also, system tries to log me in as "Administrator" and fails, as there is no such user account. Any ideas about why it doesn't log me in to my created account?

Please don't bother with questions like: "Why not install from CD?" I have my reasons and want to install from HDD.

Link to comment
Share on other sites

Well I won't ask "why not install from CD?" then ! :angel

Still the usual stuff applies:

-what cd are you starting from (original ?)

-did you integrate the SP with nLite?

-did you use nLite more times on that same cd (unattended part and users creation is quite sensitive when using already modded cd)

-to let us know what you added/removed, please attach (... not paste) both last session.ini files (remove key and sensitive data).

-have you manualy edited files before/after nLite ?

Link to comment
Share on other sites

It's an nLited En_XP_Pro_SP3, MSDN... It was nLited once, no SP integration or file editing was done.

I've been doing some testing and researching and had figured it out. It works now.

What was done:

I have rebuilt my image without removing Manual install and upgrade (I only had WINNT.EXE before).

Also I realized that I haven't moved the $OEM$ dir to I386\. So I did that.

Although during the first copying of files there was one error: couldn't copy some .mui file, the rest of the setup process went flawlessly. Well that error is meaningless as you have to stay near PC until the textmode file copying starts anyway, so for now I ignore that one as long as OS is working fine.

The only issue that remains is that my folders containing additional files to install are renamed, that Long File Names issue. So the batch wasn't started and so on... How does one restore the original names or prevent them from being changed? Is that a DOS distro issue (do I need some advanced DOS) or a WINNT.EXE issue (so it will be that way anyway)?

That's probably the last issue to resolve here, and I'm ready to start working on x64 edition. I heard there are some major differences. What can you say on the subject? Is the above way gonna work? Will appreciate any info. Thanx in advance.

Thanx for reply, pointed me into right direction. Uploaded my session anyway...

WOW) That's some nasty file size. :lol:


Link to comment
Share on other sites

I myself also install Windows from HDD(via a unattended BartPE bootCD, which formats my C partition in advance before starting winnt32.exe from hdd).

Yes, DOS don't permit long filenames, but besides winnt.exe, there's also winnt32.exe which is the 32bit Windows version of the DOS based winnt.exe...

The file-copy error you get is a nLite error, and you can fix it by deleting or commenting-out 'lhmstsc.mui' from dosnet.inf; as a workaround for the future, then add that file-name to nLite's "delete-files" section(under 'Advanced' in 'Components'), then nLite will correctly remove that entry from dosnet.inf.

Link to comment
Share on other sites

Thanks Martin H, will use that!

Another issue - been starting unattended (nLited) XPx64SP2 install via WINNT32.EXE from XPx64 environment and I wasn't able to select where to install to (while in textmode). It installed on first volume of sufficient size. I checked those 2: filesystem=* and Autopartition=0. Any ideas?

Attaching some files to look at...

And how about that $OEM$ issue? How do you add something to be started at T13 with nLite's RunOnce?


Link to comment
Share on other sites

When installing through winnt(32).exe, then the parameter: '/tempdrive:DriveLetter', specifies on which partition the temp files are placed AND where the OS is installed to...

Yes, $OEM$ folders are supported through winnt(32).exe also, but must be placed under \I386.

In your example in your first post, where you have a root folder named 'Unattended' with apps and a NT command script which installs them, then you e.g. add this line to ' \I386\$OEM$\cmdlines.txt':


And then in RunOnceEx.cmd, then the path to all the apps to install is '%~dp0'. (=the Unattended folder...)

If you want to have the 'Unattended' folder copied to '%systemdrive%', then it should be placed into '\I386\$OEM$\$1', and then cmdlines.txt + RunOnceEx.cmd needs changing to...

You cannot use nLite's 'RunOnce' function to install something at T-13. For that you need to make an addon, or edit '\I386\SVCPACK.INF' directly, to run a CMD/INF. Or for T-12, run a CMD/INF from cmdlines.txt...

I just use nLite's 'RunOnce' funtion, and adds this line to it:

@rundll32 advpack.dll,LaunchINFSection D:\Unattended\install.inf,,1

And then the INF installs my apps from my 2'nd partition directly at first logon, without any pre-filecopying...

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...