# WinPE slow dhcp crashes LTI

Is there a good way to make a LTI installation wait for an ip address before its trying to start the installation wizard?

I currently get errors when i boot my PEimg that only says the network path to the deployment share is unavailable. ipconfig in the cmd.. I've got no IP :( ipconfig /renew gets me a valid ip-address though.

I'm using Microsoft Deployment Toolkit, WAIK 2008 sp1, server 2008 Deployment services.

-

I had the same problem using a Discovery WinPE CD with WDS.

Here's how I fixed it (same solution should work for you):

1. Use ImageX to mount the image: (imagex /mountrw {path}\boot.wim 1 {mountedDir})
2. Open winpeshl.ini with notepad (from {mountedDir}\windows\system32)
3. Edit winpeshl.ini to look like this:

[LaunchApps]

x:\windows\system32\wpeinit.exe

x:\windows\system32\ping.exe,"localhost -n 25"

x:\sources\setup.exe,"/wds /wdsdiscover"

(Change this line to whatever starts your LTI installation!!!)

Save, close, unmount and commit the image: (imagex /unmount /commit {mounterDir})

-
Basically the ping "waits" until the network is ready so you can get a valid IP address and have connectivity before proceeding. –  Tim Green Jun 9 '09 at 0:24
It seems a bit time consuming to edit the Lite Touch image each time i refresh it manually. So i use the extras option in the deployment point. Also, wpeinit is the one that starts me LTI installation. –  MrTimpi Jun 11 '09 at 9:04

Here's a script I call at the end of startnet.cmd. The goal here is to connect to \\MYSERVER\MYSHARE and run a menu script stored there. If the script can't be found I release and renew my IP address and try again.

echo OFF

set INSTALL_SERVER=MYSERVER
set INSTALL_SHARE=MYSHARE
set INSTALL_ACCOUNT_DOMAIN=MYSERVER

:NETWORK_LOGON
echo.
echo.
echo Logging on to %INSTALL_SHARE% on %INSTALL_SERVER%
echo as %INSTALL_ACCOUNT_DOMAIN%\%INSTALL_ACCOUNT%...


Here's a ping to provoke name resolution,

ping 0.0.0.1 -n 3 -w 1000 > NUL
ping %INSTALL_SERVER% > NUL


Here's the logon attempt from WinPE to the server,

net use \\%INSTALL_SERVER%\%INSTALL_SHARE% /user:%INSTALL_ACCOUNT_DOMAIN%\%INSTALL_ACCOUNT% %INSTALL_PASSWORD%
pushd \\%INSTALL_SERVER%\%INSTALL_SHARE%
if exist %START_SCRIPT% call %START_SCRIPT%


If I can't see the menu script, then I release and renew and try again,

if not exist %START_SCRIPT% (
ipconfig /release
ipconfig /renew
goto :NETWORK_LOGON
)

-
I was thinking the same as you until i found what i posted in my answer. I mostly want to take the MS tools to fix MS problems, but sometimes they are so hard to find you endup with custom scripts. –  MrTimpi Jun 11 '09 at 9:06

Thanks for all your answers! I was over at TrueSec(LabCenter) yesterday on a deployment seminar and got some nice tips. then after some more googling i found this

www.deployvista.com

This seems to me the most correct way of dealing with the issue.

startnet.cmd:

wpeutil InitializeNetwork
ping localhost
wpeinit


After 10 retrys it seems to work flawless for me. Hope this will make things easier for you to!

-
Great! I'm gonna change mine to this~ –  Tim Green Jun 11 '09 at 11:39