Jump to content

oldo

Member
  • Posts

    25
  • Joined

  • Last visited

  • Donations

    0.00 USD 
  • Country

    United Kingdom

Posts posted by oldo

  1. Hi,

    I created an unattended XP setup, via batch\vbs scripts which i've been using for a long time. Recently I decided to change some things (cut out less components from windows), so i started with the original gold image, cut it down as necessary, and configured the scripts. Simple, right? Wrong. Drive mapping now fails at T-12, and i have no idea why!

    Basically the premise is:

    - cmdlines.txt: Load RunOnceEx.cmd (this works fine)

    [Commands]
    "rundll32 advpack.dll,LaunchINFSection nLite.inf,U"
    "RunOnceEx.cmd"

    - RunOnceEx.cmd: Map Z: to network location using a script that is stored on the image, and run 01PhaseOne.cmd (this doesn't work, because the drive is never mapped)

    ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
    :: START OF SCRIPT :: Written by Chris Joseph, 2007. ::
    ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
    :: This script maps a network drive to deployment server, initializes local ::
    :: logfile, and finally calls the 01PhaseOne.cmd script located on build server.::
    :: ::
    :: It is called from cmdlines.txt which is called at T-12 during windows setup. ::
    ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::


    :: Minimize script
    cmdow @ /min
    @echo off

    :: Set script constants

    SET cid_path=Z:\OS\
    SET phase1_log_file=%systemdrive%\maint\logs\01PhaseOne.log

    :: Map network drives
    cscript %systemdrive%\maint\scripts\mapdrives.vbs //NOLOGO >> %phase1_log_file%

    :: Initializing log files
    ECHO **************************************************************** >> %phase1_log_file%
    ECHO ** Phase One Log File ****************************************** >> %phase1_log_file%
    ECHO **************************************************************** >> %phase1_log_file%
    ECHO ******************** Logging Started: %Date%, %Time% ** >> %phase1_log_file%
    ECHO.>> %phase1_log_file%

    :: Begin Phase 1
    Echo %DATE% %Time% ^> Begin Phase 1^. >> %phase1_log_file%
    Echo.>> %phase1_log_file%
    Echo %DATE% %Time% ^> Calling Installation routines^. >> %phase1_log_file%

    :: Calling installation routines.
    %cid_path%01PhaseOne.cmd
    EXIT

    ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
    :: END OF SCRIPT ::
    ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

    - mapdrives.vbs

    mapdrives__blankpass_.vbs.txt

    This script works perfectly fine if i run it after first login, but the drive does not map at T-12.

    As you can see i've fannied about with it to try to diagnose the problem. I have confirmed that the server is online & reachable, and if i amend RunOnceEx.cmd to ping the server, and run "ipconfig /all" and dump the output to screen, this works fine. So there is no connection problem. It's only the act of connecting to a network location that does not work.

    The account in question does have full access to the network location that i am trying to map.

    I added some code to mapdrives.vbs to confirm that necessary services are infact running. The output from the script looks like this:

    ****************************************************************
    ** MapDrives Log File ******************************************
    *********************** Logging Started: 15/10/2008, 01:47:55 **

    15/10/2008 01:47:55 Instruction: Set strHostname variable
    15/10/2008 01:47:55 Successful: Set strHostname variable - JNUK01C003
    Logical Disk Manager = 1
    Starting Service: Logical Disk Manager
    HTTP SSL = 1
    Starting Service: HTTP SSL
    Remote Registry = 1
    Starting Service: Remote Registry
    Secondary Logon = 1
    Starting Service: Secondary Logon
    Distributed Link Tracking Client = 1
    Starting Service: Distributed Link Tracking Client
    Windows Time = 1
    Starting Service: Windows Time
    Windows Installer = 1
    Starting Service: Windows Installer
    IPSEC Services = 1
    Starting Service: IPSEC Services
    Workstation = 4
    Server = 4
    Wireless Zero Configuration = 1
    Starting Service: Wireless Zero Configuration
    SSDP Discovery Service = 1
    Starting Service: SSDP Discovery Service
    Task Scheduler = 1
    Starting Service: Task Scheduler
    15/10/2008 01:49:04 Instruction: Map UNC Path to Drive Letter
    15/10/2008 01:49:04 Unsuccessful: Map UNC Path to Drive Letter - Path: \\JNUK01S001\build$, DriveLetter: Z:, ServerName: JNUK01S001, DomainName: JONET
    15/10/2008 01:49:04 Error 0x800704C6: The network is not present or not started.

    The "The network is not present or not started." usually appears when Client for Microsoft Networks is not installed properly, but this shouldn't be the case since everything works after first logon, and i've sucessfully mapped a drive at this stage many times before!

    Any ideas anyone? I'm pulling my hair out with this one! Thanks.

    CJ

  2. I use a few simple lines in my cleanup batch script:

    SET KEY2="HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon"

    :: Delete Auto Admin Logon credentials and replace with policy defualt

    REG DELETE %KEY2% /V DefaultPassword /f
    REG DELETE %KEY2% /V DefaultDomainName /f
    REG DELETE %KEY2% /V AutoAdminLogon /f
    REG DELETE %KEY2% /V ForceAutoLogon /f

  3. Thanks for the quick response :)

    My unattended setup connects to the network at runoncex and runs the rest of the setup from there (so i can modify the vast majority of the setup process centrally). Currently all of my apps are installed from packages located on the server, and i would like to do the same with drivers :) All logging is sent to %systemdrive%\maint\log\ on the client machine, but at present this is not possible with your app - i could only log to either the root of C:\, or to the network directory in which the program is running.. i'd like to keep things consistant and output to the same directory as my other log files. Being able to customize the name of the logfile would also be nice!

    Again, thanks for the great amount of work you've obviously put into this!

    Chris

  4. How do you install the theme?

    Integrated with nlite? Scripted during install?

    I do..

    In winnt.sif:

    [Shell]
    CustomDefaultThemeFile="%WinDir%\Resources\Themes\System.theme"

    Then (at the RunOnceEx stage!) i copy my theme from a server location previously mapped to the Z drive..

    :: Install themes

    XCOPY /E /Y \Z:\1\conf\resources\themes\*.* "%systemdrive%\WINDOWS\Resources\Themes\"

    Alternatively you can just put these files on the image in $OEM$\$$\Resources\Themes\ so they they are copied during the initial file copy.

    I suggest putting the wallpaper you are using in the $OEM$\$$\Web\Wallpaper\ folder also!

    Then the file structure should be like so:

    ..\Resources\Themes\System.theme

    ..\Resources\Themes\System\System.msstyles

    ..\Resources\Themes\System\<rest of files inc any sub-dirs>

    and the contents of System.theme would include the lines (will differ between themes):

    [Control Panel\Desktop]
    Wallpaper=%WinDir%\Web\Wallpaper\system.bmp
    TileWallpaper=0
    WallpaperStyle=2
    Pattern=

    [VisualStyles]
    Path=%WinDir%\resources\Themes\System\System.msstyles
    ColorStyle=Windows2
    Size=NormalSize

    Works perfectly for me... hope this helps.

  5. Tested again, on a fresh VM.. still works fine. Asside from repackaging, i can't thing of another way to do this.

    Either way.. it works, and i think i can live with it :)

    By all means.. add the other line as a safe guard. Wouldn't want your users complaining they have popups of the Hoff playing volleyball now, would you? :P

  6. As far as i can tell, that only appears when daemon tools is allowed to run for the first time. I remove the SetupDTSB.exe (which spawns the file you mention), before it has a chance to open.

    This method worked for me atleast :)

  7. Doesn't seem to be a decent tutorial on this one (apart from the packaged CAB version which is nice ;), but i've created my own method as described below. I run it from a network location at runonceex stage, but you could run from pretty much anywhere.

    Hopefully it's of some use to someone here :)

    You'll need cmdow.exe in system32 folder to hide the windows. If you don't.. just comment the line out.

    Change the code where needed to reflect your own needs.

    File structure:

    \dtools.exe

    \dtools.cmd

    ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
    :: START OF SCRIPT :: Written by Chris Joseph, 2007. ::
    ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
    :: This script first installs SPTD drivers v142. Then adds Daemon Tools v4.08 ::
    :: to RunOnceEx to execute following next reboot. ::
    ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

    :: Hide Window
    cmdow @ /hid
    @echo off

    :: Define Constants
    SET KEY=HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx

    :: Install SPTD Drivers.

    .\components\SPTD.exe add /q

    :: Make local copy of Deamon Tools installer

    MD %systemdrive%\maint\temp\
    COPY /Y .\dtools.exe %systemdrive%\maint\temp\
    COPY /Y .\components\clean.cmd %systemdrive%\maint\temp\
    COPY /Y .\components\config.reg %systemdrive%\maint\temp\

    :: Add RegOnceEx entries for Dtools install.

    REG ADD %KEY% /V TITLE /D "JoBase v2.1: Installing Daemon Tools.." /f

    :: Change install directory to preferred location!
    REG ADD %KEY%10 /VE /D "Installing Application.." /f
    REG ADD %KEY%10 /V 1 /D "%systemdrive%\maint\temp\dtools.exe /S /D=C:\Program Files\JONET\Daemon Tools\v4.08" /f

    REG ADD %KEY%20 /VE /D "Cleaning Up.." /f
    REG ADD %KEY%20 /V 1 /D "%systemdrive%\maint\temp\clean.cmd" /f

    :: Reboots machine. (Comment out if reboot is done later following further installs)
    shutdown.exe -r -f -t 00 -c "Administrative shutdown will commence shortly. Setup will continue following reboot."

    EXIT

    ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
    :: END OF SCRIPT ::
    ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

    \components\SPTD.exe

    \components\clean.cmd

    :: Hide Window
    cmdow @ /hid
    @echo off

    :: Remove load on windows startup (optional, comment out if not required)
    regedit /s "C:\maint\temp\config.reg"

    :: Remove Spyware (change location to reflect your chosen install directory)
    DEL /F /Q "%systemdrive%\Program Files\JONET\Daemon Tools\v4.08\SetupDTSB.exe"

    :: Remove desktop icon (optional, comment out if not required)
    DEL /F /Q "%systemdrive%\Documents and Settings\All Users\Desktop\*.*"

    :: Remove temporary files
    RMDIR /S /Q "%systemdrive%\maint\temp"

    .\components\config.reg

    (This stops daemon tools loading at windows startup. Optional.)

    Windows Registry Editor Version 5.00

    [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run]
    "DAEMON Tools"=-

    To install just run "dtools.cmd".

    OLDo

  8. hmmm..

    WIN51IP.SP2 was NOT upcased (win51ip.SP2).

    But build still works with nLite1.0.1.

    I can test this evening with this file in upcase. Should these files contain anything, or be blank?

  9. [Main]

    Env = 1.2 beta - 2.0.50727.42.Microsoft Windows NT 5.1.2600 Service Pack 2

    Target = Windows XP Professional SP:2 - 2180 - English (United States)

    [Tasks]

    Unattended Setup

    Tweaks

    Options

    [Components]

    ;# Compatibility #

    [KeepFiles]

    msconfig.exe

    [RemoveFiles]

    clock.avi

    [Options]

    ProfilesDir = "%SystemDrive%\Documents and Settings"

    TargetPath = "Windows"

    temp_dir = %USERPROFILE%\Local Settings\Temp

    AdvTweaks

    [Patches]

    TcpIp = 1000

    UsbPoll = 250

    DoUxTheme

    DoSFC

    [services2]

    [Tweaks]

    [unattended]

    ComputerType = Automatic

    HibernationNo

    AutoLogon = Administrator

    AutoLogonCount = 1

    FirewallOff

    MaximumDataStorePercentOfDisk = 5

    RestorePointLife = 30

    DesktopTheme = System|Blue: Plastic|Normal

    DataExecProt = 4

    AutoUpdates = 2

    AutoUDay = 5

    AutoUHour = 15

    AUElevate

    DoProgFiles

    ProgFilesPath = "\Program Files"

    CustomNetwork

    [DesktopThemes]

    Z:\Files\Programs\Packages\3rd party\Themes\System 4a.theme

    Z:\Files\Programs\Packages\3rd party\Themes\Royale\Royale.msstyles

    Z:\Files\Programs\Packages\3rd party\Themes\Plex Style II\Plex Style II.msstyles

    Z:\Files\Programs\Packages\3rd party\Themes\Bluecurve 4\Bluecurve 4.msstyles

    Z:\Files\Programs\Packages\3rd party\Multi_Siginet_MultiTheme-AddonsPack_1.5\VistaXP\VistaXP.msstyles

    Z:\Files\Programs\Packages\3rd party\Multi_Siginet_MultiTheme-AddonsPack_1.5\RoyalMod\RoyaleMod.msstyles

    Z:\Files\Programs\Packages\3rd party\Multi_Siginet_MultiTheme-AddonsPack_1.5\OSmin2\OSMinimal.msstyles

    [NetAdapter1]

    connname = "LAN"

    macaddress = ""

    ipaddress = "192.168.0.2"

    subnetmask = "255.255.255.0"

    defaultgateway = "192.168.0.1"

    dnsserver1 = "192.168.0.1"

    dnsserver2 = "192.168.0.1"

    winsserver = "192.168.0.1"

    netbiossetting = "1"

    ipxnetworknumber = "00000000"

    ipxnetworkframetype = "0xFF"

    [GuiRunOnce]

    [Drivers]

    [Hotfixes]

  10. Not sure if this is affecting anyone else.

    I've tried this with a couple of different images of XP, both were standard builds, with sp2 already integrated.

    After modifying the Unattended sequance, and creating a new iso, i get the follow error when attempting an install:

    Please insert the disk labeled Windows Service Pack 2 CD into Drive A.

    BUT.. the WIN5 are present.

    Any ideas?

    Cheers

    Chris

  11. Running nLite 1.2b on Windows 2003, with No optical drives connected.

    Just customized a standard XP image and tried to create ISO.

    nLite crashed with following error:

    =======================================

    See the end of this message for details on invoking

    just-in-time (JIT) debugging instead of this dialog box.

    ************** Exception Text **************

    System.AccessViolationException: Attempted to read or write protected memory. This is often an indication that other memory is corrupt.

    at (* , Int32 )

    at ..(Int32 )

    at ..(Object , EventArgs )

    at System.Windows.Forms.Control.OnClick(EventArgs e)

    at System.Windows.Forms.Button.OnClick(EventArgs e)

    at System.Windows.Forms.Button.WndProc(Message& m)

    at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)

    at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)

    at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

    ************** Loaded Assemblies **************

    mscorlib

    Assembly Version: 2.0.0.0

    Win32 Version: 2.0.50727.42 (RTM.050727-4200)

    CodeBase: file:///C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll

    ----------------------------------------

    nLite

    Assembly Version: 1.2.0.0

    Win32 Version: 1.2.0.0

    CodeBase: file:///C:/Program%20Files/nLite/nLite.exe

    ----------------------------------------

    System

    Assembly Version: 2.0.0.0

    Win32 Version: 2.0.50727.42 (RTM.050727-4200)

    CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll

    ----------------------------------------

    nLite

    Assembly Version: 1.2.0.0

    Win32 Version: 1.2.0.0

    CodeBase: file:///C:/Program%20Files/nLite/nLite.exe

    ----------------------------------------

    System.Windows.Forms

    Assembly Version: 2.0.0.0

    Win32 Version: 2.0.50727.42 (RTM.050727-4200)

    CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Windows.Forms/2.0.0.0__b77a5c561934e089/System.Windows.Forms.dll

    ----------------------------------------

    System.Drawing

    Assembly Version: 2.0.0.0

    Win32 Version: 2.0.50727.42 (RTM.050727-4200)

    CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Drawing/2.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll

    ----------------------------------------

    cablib

    Assembly Version: 1.0.2459.36134

    Win32 Version:

    CodeBase: file:///C:/Program%20Files/nLite/cablib.DLL

    ----------------------------------------

    msvcm80

    Assembly Version: 8.0.50608.0

    Win32 Version: 8.00.50727.42

    CodeBase: file:///C:/WINDOWS/WinSxS/x86_Microsoft.VC80.CRT_1fc8b3b9a1e18e3b_8.0.50727.42_x-ww_0DE06ACD/msvcm80.dll

    ----------------------------------------

    nlgw

    Assembly Version: 1.1.0.0

    Win32 Version: 1.2.0.0

    CodeBase: file:///C:/Program%20Files/nLite/nLite.exe

    ----------------------------------------

    MCDBNET2

    Assembly Version: 1.32.0.0

    Win32 Version: 1.32.0.1302

    CodeBase: file:///C:/Program%20Files/nLite/MCDBNET2.DLL

    ----------------------------------------

    ************** JIT Debugging **************

    To enable just-in-time (JIT) debugging, the .config file for this

    application or computer (machine.config) must have the

    jitDebugging value set in the system.windows.forms section.

    The application must also be compiled with debugging

    enabled.

    For example:

    <configuration>

    <system.windows.forms jitDebugging="true" />

    </configuration>

    When JIT debugging is enabled, any unhandled exception

    will be sent to the JIT debugger registered on the computer

    rather than be handled by this dialog box.

    =======================================

    RAM in the machine is fine, it's been fully memtested recently.

    Cheers for a kick a** program anyway.. runs perfectly on my other box (WinXP).

    Chris

×
×
  • Create New...