Jump to content


  • Posts

  • Joined

  • Last visited

  • Donations


About jachin

jachin's Achievements



  1. Some more explaination would be good. I'm am looking at building an applications that can be used in a corporate environment by those who don't know all that much about unattended installs. As such I'd like to hide the complexity of scripting and batch files behind and intelligent GUI that can do all the hard work. The best way to do this would be with a .net app. Anything you can do in WSH/CMD can be done in C# and information about different builds can be stored in an Access or MSDE Database. Have a look at the image sectino of the Microsoft Solution Accelerator for Business Desktop Deployment @ http://www.microsoft.com/technet/desktopde...ddoverview.mspx It has a HTA that acts as a GUI and stores build information in a series of XML data files. It also has some smarts built in do installl line-of-business apps after installing windows with the ability to cope with reboots and dynamic application addition/removal. Microsoft have done a lot of nice work in this area, I think with very little effort you could write a very useful/powerful application to manage desktop deployment for corporate users.
  2. Any chance of some screenies or source code or some hints at what you are doing.
  3. I use BartPE in Virtual PC and Virtual Server on a weekly basis without any trouble at all. It is slightly slower than a physical machine but that is to be expected.
  4. Try this... GetMAC.vbs On Error Resume Next Const wbemFlagReturnImmediately = &h10 Const wbemFlagForwardOnly = &h20 Const ForReading = 1 Dim fs Dim sh Dim nw Dim strMAC, strComp, strPID Set sh = CreateObject("WScript.Shell") Set fs = CreateObject("Scripting.FileSystemObject") Set nw = CreateObject("WScript.Network") strComputer = "." Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2") Set colItems = objWMIService.ExecQuery("Select * From Win32_NetworkAdapter " _ & "Where NetConnectionID = " & _ "'Local Area Connection'", "WQL", wbemFlagReturnImmediately + wbemFlagForwardOnly) For Each objItem in colItems strMACAddress = objItem.MACAddress Next 'Open our text file and get the machine details Set objFile = fs.OpenTextFile("Machines.txt", ForReading, false) Do While objFile.AtEndOfStream <> True If inStr(objFile.ReadLine, strMACAddress) Then colDetails = Split(objFile.ReadLine, ",") writeini "sysprep.ini", "UserData", "ComputerName", colDetails(1) writeini "sysprep.ini", "UserData", "ProductKey", colDetails(2) Else objFile.Skipline End If Loop objFile.Close ' READINI ( file, section, item ) ' file = path and name of ini file ' section = [Section] must not be in brackets ' item = the variable to read Function ReadIni(file, section, item) ReadIni = "" file = Trim(file) item = Trim(item) Set ini = fs.OpenTextFile( file, 1, False) Do While ini.AtEndOfStream = False line = ini.ReadLine line = Trim(line) If LCase(line) = "[" & LCase(section) & "]" Then line = ini.ReadLine line = Trim(line) Do While Left( line, 1) <> "[" 'If InStr( 1, line, item & "=", 1) = 1 Then equalpos = InStr(1, line, "=", 1 ) If equalpos > 0 Then leftstring = Left(line, equalpos - 1 ) leftstring = Trim(leftstring) If LCase(leftstring) = LCase(item) Then ReadIni = Mid( line, equalpos + 1 ) ReadIni = Trim(ReadIni) Exit Do End If End If If ini.AtEndOfStream Then Exit Do line = ini.ReadLine line = Trim(line) Loop Exit Do End If Loop ini.Close End Function ' WRITEINI ( file, section, item, myvalue ) ' file = path and name of ini file ' section = [Section] must not be in brackets ' item = the variable to write; ' myvalue = the myvalue to assign to the item. ' Sub WriteIni( file, section, item, myvalue ) in_section = False section_exists = False item_exists = ( ReadIni( file, section, item ) <> "" ) wrote = False file = Trim(file) itemtrimmed = Trim(item) myvalue = Trim(myvalue) temp_ini = sh.ExpandEnvironmentStrings("%TEMP%\") & fs.GetTempName Set read_ini = fs.OpenTextFile( file, 1, True, TristateFalse ) Set write_ini = fs.CreateTextFile( temp_ini, False) While read_ini.AtEndOfStream = False line = read_ini.ReadLine linetrimmed = Trim(line) If wrote = False Then If LCase(line) = "[" & LCase(section) & "]" Then section_exists = True in_section = True ElseIf InStr( line, "[" ) = 1 Then in_section = False End If End If If in_section Then If item_exists = False Then write_ini.WriteLine line write_ini.WriteLine item & "=" & myvalue wrote = True in_section = False Else equalpos = InStr(1, line, "=", 1 ) If equalpos > 0 Then leftstring = Left(line, equalpos - 1 ) leftstring = Trim(leftstring) If LCase(leftstring) = LCase(item) Then write_ini.WriteLine itemtrimmed & "=" & myvalue wrote = True in_section = False End If End If If Not wrote Then write_ini.WriteLine line End If End If Else write_ini.WriteLine line End If Wend If section_exists = False Then ' section doesn't exist write_ini.WriteLine write_ini.WriteLine "[" & section & "]" write_ini.WriteLine itemtrimmed & "=" & myvalue End If read_ini.Close write_ini.Close If fs.FileExists(file) then fs.DeleteFile file, True End if fs.CopyFile temp_ini, file, true fs.DeleteFile temp_ini, True End Sub The Machines.txt looks like this: Machines.txt 00:0F:1F:B4:88:EF,Machine-09,5555-XXXX-66666-77777-XXXX 00:0F:1F:B4:88:E8,Machine-04,5555-XXXX-66666-77777-XXXX
  5. Hi all, I'm starting a project over the next few weeks to develop a program similar in nature to the Microsoft BDD Enterprise Edition. My plan is to develop a system that allows multiple builds of unattended installs to be managed in the one applications. From source file locations and unattend.txt file settings to post install applications as well as bug tracking and release management. Unfortunately for me if i was to do all the work myself it would be out of data by the time it was finished. So I guess you'd call this recruitment. Anyone who is interested in helping out the skills i need are .net programmers and scripters. If you'd like to help please send me a message and we will discuss further.
  6. I didn't know you could use a PIX with WebSense. How does that work?
  7. I've been looking into MS ISA server lately and I have discovered that it doesn't have any out of the box mechanism to limit or block objectionable content. It appears you have to go and spend more money on a 3rd party add-on. Does this seem 1. really expensive and 2. really stupid to anyone else.
  8. I've tried what you suggested but now get a prompt asking if i want to Install/Update. I've tried doing something like this C:\temp\English\WINNT\i386\acu.exe /U /D:No but I still get a prompt. I'd like to get this totally unattended so that i can deploy it via sms, any help would be greatly appreciated.
  9. How do you do an unattended install of the client??? Mine keeps asking for settings even when i specify an unattend.txt file.
  10. Thanks lads, stay tunned as i have a very cool new method for unattended os install that you all may be interested in.
  11. Your challenge should you choose to accept it is to find a definative guide to the stages of Windows XP setup. I mean details about t-13, cmdlines, textmode, gui mode, etc. I have been searching all over the place and can't really find a definative guide on this. I'm interested in exactly what can and can't be done durring these setup phases. Thanks all!
  12. Interesting....So you have a build directory for each model of PC you have?? I'd be very interested as to how you tackle this in your organisation. Do you have different driver directories for each model? Do you use a common winnt.sif file. How do you build your $oem$ directory. Basically we use a scripted network install at the moment that builds an SOE completely automated. Then we image this and deploy it to computers. The process will be similar with the new approach. Automatically install the OS from the network then hand over to SMS, which will install all the apps. Then image this and deploy. There seems to be so many different method of deploying the Windows OS that the hard part is select a method and sticking with it. I appreciate all the input, hopefully soon we will start work on this project and your input is saving us a lot of time.
  13. Interesting...So you just install xp on a computer and then image it. Then you can use that image on different PC's with differenct hardware as long as you rung sysprep -mini??

  • Create New...