Jump to content

ZileXa

Member
  • Posts

    833
  • Joined

  • Last visited

  • Donations

    0.00 USD 
  • Country

    Netherlands

Posts posted by ZileXa

  1. I did not integrate anything. I use your ini and inf (sp1_v2) but I keep some stuff you selected. For example Japanese language in vLite is selected (needed for Office 2010) and Windows Mail is selected (needed for Office 2010) and a couple of drivers and other stuff. I do select other things like Wordpad, Write and Paint.

    But I really dont understand whats happening, Just tried the entire process again. When I want to apply the changes in vLite, it asks if you want to "apply for current image (HOMEBASIC) or all images."

    I have Ultimate! Why does it say Homebasic suddenly? In RT7Lite I applied changes for ALL images (normally I only do Ultimate). So i dont understand.

    Perhaps it has something to do with the names I set in ImageX (when capturing you have to fill in name/description twice).

  2. I never got this (method 5) to work for Windows 7 SP1 x64 Ultimate English. Just tried it again, I get a message during Windows Setup "windows could not be configured for your hardware" or something like that.

    Not going to try method 6 (rtlite only) since updates are not going to work completely according to earlier posts.

    --> It works when I test my RT7Lite image (call it iso 1).

    --> It also works when I test my RT7Lite image after doing Apply & Capture with ImageX (call it iso 2).

    It does not work when I test my image after doing vlite on the iso 2 (call it iso 3).

    see screenshot attached.

    post-20882-0-66317800-1302439252_thumb.j

  3. Hi SmokingRope, I have questions about it. Hope you can clarify the process for me.

    I have 1 unattend.xml and I install my software via setupcomplete.cmd (because Office 2010 x64 and Paint.net cannot be installed earlier, they will fail).

    If I understand your process correct, it should go like this:

    1. Windows setup starts with AutoUnattend.xml. This file contains the settingspass OobeSystem + settingspass auditUser + settings pass Specialise lines from your post. Setup will boot into sysprep.

    2. in sysprep, what happens now? Is input from the user required?

    I think this is what I should do: add a command to auditUser that will run my regtweaks, install apps, cleanup startmenu. This command should run first, your auditUser command to generalize should run last.

    Is this correct?

    3. after your auditUser command has run, system will reboot again and continue normally using the 2nd xml file. this file does NOT contain your Oobesystem/audituser/specialise lines. Is this Correct?

    4. I do not understand how your note about "changes to WIM" is related to the process. I am not changing WIM or anything. I just want to apply my regtweaks for all users.

  4. OK so now there is a new method to remove WinSxS.

    method 5: run rt7lite to slim down your image (do not select winsxs removal in rt7lite). Then Capture & Apply with GimageX. Then run VLite (select winsxs for removal). No need to delete file pending.xml. After you install Windows you must install KB947821. It is recommended to load the lastsession files from the first post in RT7Lite and VLite and modify the options you want/don't want.

    method 6: run rt7lite to slim down your image, select winsxs removal. No need to delete pending.xml. No need to install KB947821 after installing Windows.

    But this method has not been tested by many people.

    Question: using method 5, can I also just integrate KB947821 with VLite? Or should the update be integrated after VLite finishes removing WinSXS (simply run vlite or rt7lite again to integrate it)? Or should it really be installed after Windows has been installed?

  5. I already tried his method by running this cmd file after RT 7lite loads the image (this way I don't have to register as an OEM and download 2GB OPKTools):

    reg load hklm\temp1 %temp%\rt_mount\users\administrator\ntuser.dat
    reg load hklm\temp2 %temp%\rt_mount\windows\system32\config\software

    pause

    reg.exe import "D:\downloads\RegTweaks.reg"

    pause

    reg.exe unload hklm\temp1
    reg.exe unload hklm\temp2

    PAUSE

    This script runs flawlessly, but when I install windows and check the tweaks, they have not been applied for hkcu. I don't know why Ricksteele reported success, since I can clearly see the HKCU tweaks did not apply.

    What I am doing now is dirty but works partially:

    create a shortcut inside the Default users Start Menu (after Rt 7 lite has loaded the image: %temp%\rt_mount\users\default) inside the Startup subfolder of the startmenu.

    This shortcut launches a cmd file that I will place inside C:\Users.

    This cmd file cleans up the current users start menu and desktop and runs the regtweaks.reg file, at the end it deletes the shortcut in the startmenu of the current user (not the default user).

    This way, every user created in the future will have a shortcut that will call this batchfile.

    I said it works partially because:

    1. I use HKCU regtweaks to place Desktop, My docs, My music, My Downloads, My Pictures, My Videos in D:\%username%.
    2. And I use HKLM regtweaks to place Public Music, Public Downloads, Public Pictures and Public Videos in D:\.

    For #2 everything goes fine. the public folders are located on D:\ after Windows Setup.

    For #1, the regtweaks will be applied (via start menu Startup) after those folders have been created already on the C:\Users\%Username%. So I have to reboot again after first login to see the changes. And even after reboot I do see the D:\%username% folder, but it only contains My documents and Desktop (My Pictures, My Downloads, My Music etc is missing).

    So I still have to find a fix for this.

  6. I was actually looking for a method to apply regtweaks.reg during windows setup, using either autounattend.xml or a different method.

    I have tried the following commands at various stages, using autounattend pass Specialize and FirstLogonCommands and SetupComplete, but NONE applied the HKCU regtweaks for all users created.


    :: first attempt
    ::==========
    START /wait regedit.exe /s %SETUPDRIVE%\Regtweaks.reg

    :: second attempt
    :: Load the default profile hive
    START /wait REG LOAD HKU\DefaultUser C:\Users\Default\NTUSER.DAT

    :: Configure the default user profile (try two different methods)
    START /wait REG IMPORT %SETUPDRIVE%\Regtweaks.reg
    START /wait regedit.exe /s %SETUPDRIVE%\Regtweaks.reg

    :: Unload the default profile hive
    START /wait REG UNLOAD HKU\DefaultUser

    I wanted to do this without using OPK Tools... but it seems I have no other option. I think it's weird that we cannot just apply regfiles before the first user logs on and apply it for all users created in the future. This was perfectly possible with WinXP.

    It seems loading wim is the only reliable way to go, I'll try the above script.

    O WAIT! I have even imported my regtweaks file in RTSevenLite! wich also applies the tweak to the wim source! Still they are not being applied. So either RT7lite is buggy or this method is also not working.

  7. Thanks for testing.

    Avira, Office 2010 and Paint.Net cannot be installed during Windows Setup (this means pass Specialize, because for AuditSystem/AuditUser it means you install it in your image so that it will be preinstalled for future use).

    They install just fine using SetupComplete (just before user login) or using FirstLogonCommands (right after first login).

    I am using SetupComplete now, installing vcredistx86 first and then Avira (your Light version).

  8. Hi,

    For a little project, I want to do something I know is possible but forgot how to. I have done this a few years ago.

    The idea: create a .cmd to install something e.g. copy files around and add uninstall info.

    Now create a second .cmd to uninstall e.g remove files and uninstall info.

    Now that we have install.cmd and uninstall.cmd, the idea is to combine both in installer.cmd,

    Installer.cmd consists of two parts:

    : INSTALL

    COPY ....

    GOTO EOF

    : UNINSTALL

    DEL ...

    GOTO EOF

    EXIT

    Now it should be possible to run the batch file like this:

    installer.cmd INSTALL --> this would call the INSTALL part and skip the Uninstall part.

    installer.cmd UNINSTALL --> this would call the UNINSTALL part and skip the Install part.

    Unfortunately, I am missing something because this is not working... but the idea is possible. Help appreciated!

  9. Ok I have read some more and have to come to the conclusion both AuditSystem and AuditUser is not the way I want to do it.

    AuditSystem and Audituser do not start automatically during setup, you have to use a unattended setup setting (reseal). Wich is fine, but the goal of AuditSystem and AuditUser is to create a preconfigured Windows Setup.

    This means, if I want to update my ISO with a new version of Ccleaner, Firefox, Office, Antivirus oetc I cannot simply copy the newer .exe setup files to my ISO, I will have to run Windows Setup in Audit Mode again to do this. Also if I have a few extra regtweaks I would have to go all over Windows Setup again.

    This is exactly what I do not want to do!

    So I decided to keep things the way they are:

    1. install apps during Specialize

    2. the apps that cannot be installed will be installed via RunOnce or similar (Office2010 and Paint.net).

    3a. regtweaks.reg will be applied during Specialize but most wont work (HKCU). therefore regtweaks.reg will also be applied during RunOnce (run every time a new user logs in).

    OR

    3b. I just found this trick, wich should work also from Specialize or just via SetupComplete.cmd:

    :: Load the default profile hive
    REG LOAD HKU\Hive C:\Users\Default\NTUSER.DAT

    :: Configure the default user profile
    start /wait regedit.exe /s Regtweaks.reg

    :: Unload the default profile hive
    REG UNLOAD HKU\Hive

    This way, if I want to:

    update the apps in my ISO, all I have to do is overwrite firefoxsetup.exe for the new one.

    add/replace regtweaks, all I have to do is edit the existing regtweaks.reg.

  10. I have had time to spend on this project again. This is the working command (in pass Specialize, inside component Microsoft-Windows-Deployment):

    Cannot install Applications during Specialize. You must use Audit Mode or OObesystem
    During the specialize configuration pass of Microsoft® Windows® Setup, machine-specific information for the image is applied. For example, you can configure network settings, international settings, and domain information.

    Reg tweaks applied during specialize can only be machine specific like HKLM

    Commands in the Setupcomplete.cmd file are executed with local system privilege.

    HKLM Reg tweaks can be ran here but not HKCU which are user specific.

    HKCU can be done during Firstlogoncommands

    Unattend.chm is your friend here and will explain a lot of this

    Thanks I will do more reading. I have also done my first tests with Firstlogoncommands. But HKCU will then only apply for the user currently logged in. Not for users created in the future. So I should create something like RunOnce that will run for all future users.

    Btw I am installing 20+ other apps just fine during Specialize.. perhaps they don't require a high permissions level. I prefer doing it "right" so I will do some more reading first!

    edit:

    Audit mode enables OEMs and corporations to install additional device drivers, applications, and other updates to a master Windows® image. Additionally, you can test the installation before shipping the computer to an end-user.
    and
    The auditSystem configuration pass processes unattended Windows Setup settings in system context in audit mode. The auditSystem configuration pass runs immediately before the auditUser Configuration Pass configuration pass, which is used to apply settings in user context.
    and
    Typically, the auditUser configuration pass is used to execute RunSynchronous or RunAsynchronous commands. These commands are used to run scripts, applications, or other executables during audit mode.

    So both auditSystem and auditUser in the can be used to install both apps and registrytweaks, since OEMs will use it even to install drivers. But the last quote shows it is recommended to do this during auditUser pass.

    woops. no I was wrong, auditSystem is the correct one:

    In auditSystem, the built-in administrator account is enabled by the system, and after logging into the system, the built-in administrator account is disabled during auditUser. This enables you to use audit mode with administrator privileges, but the next time the computer shuts down, the built-in administrator account will continue to be disabled. For more information, see Enable and Disable the Built-in Administrator Account.
  11. I have had time to spend on this project again. This is the working command (in pass Specialize, inside component Microsoft-Windows-Deployment):


    <RunSynchronous>
    <RunSynchronousCommand wcm:action="add">
    <Order>1</Order>
    <Description>Set CDROM Variable</Description>
    <Path>cmd /C FOR %i IN (c d e f g h i j k l m n o p q r s t u v w x y z) DO IF EXIST %i:\Sources\Install.wim START /WAIT %i:\installApps.cmd</Path>
    </RunSynchronousCommand>
    </RunSynchronous>

    Unfortunately 2 things:

    I have figured out why the contents of $OEM$\$1 wasn't copied to the harddrive. I had to place $OEM$ inside the Sources folder instead of the root of my DVD.

    I have now also added a FirstLogonCommands command to my autounattend in an attempt to apply the HKCU tweaks. but they will only be applied to the current logged in user. And if I create 2 other users later, the tweaks will not have been applied to them :( So thats still an issue.

  12. Why do you run RunOnceEx twice?? Why not just once? Everything will be installed in order so your hotfix and ATL will be installed first.

    Actually I did a new test with a suprising result:

    If I just extract the resulting exe file (avira_auto_setup.exe) and I run presetup.exe via a CMD file that I start using autounattend.xml settings pass Specialize, I get the error message attached.

    Using Win7 SP1 image.

  13. Well, at what stage do you install Avira on Win7?

    I use AutoUnattend.xml settings pass Specialize, your executable tells me VC2008 is not installed (using a x64 Win7 incl SP1 image).

    If I would install Visual C++ 2008 SP1 ATL Security Update Redistributable Package x64 (since I have x64 win7) first, it should work?

    Or do I have to install both Microsoft Visual C++ 2008 SP1 Redistributable Package (x64) and Visual C++ 2008 SP1 ATL Security Update Redistributable Package x64 ?

    Or do I have to install both Microsoft Visual C++ 2008 SP1 Redistributable Package (x64) and Visual C++ 2008 SP1 ATL Security Update Redistributable Package x86?

  14. So I have made a first attempt at creating an Autoit script to install AIMP3 silently, results:

    - AIMP3 cannot be installed using your keyboard (tab, enter etc doesn't work) so autoit will be impossible since catching mouse clicks is not a reliable method.

    - all the AIMP3 installer actually does is extract the contents to %programfiles%. So you don't need an installer. Just install it manually and make sure you select "1 configuration for all users" because all the settings will be saved in the same folder. Then copy the the AIMP3 folder from your %programfiles% to a 7zip file. Extract this during your Windows setup.

    Whats left is file associations:

    - AIMP3 doesn't set file associations. You have to do this manually.

    - Unfortunately even if I run AIMP3 as admin, the most common file associations are not set. This is a bug. reported here:

    http://www.aimp.ru/forum/index.php?topic=25857.0

    - When this bug is fixed, capture the registry edits being made during file association process and save those to your regtweaks.reg file. Then you'll be able to set file associations silently.

    This bug makes it a bit unuseful on Windows 7! Will have to wait for a new version..

  15. Yes I did thanks. And sorry I have spend 3 fulltime days on this and haven't been faithful to just one topic :blushing:

    In a lot of cases I started typing my problem, realized something, did some more testing and understood why it didn't work. Sometimes I did post a message and hours later fixed it myself... if you spend enough time you'll learn a lot!

    Will keep the forums more clean next time.

  16. I would like to try to install everything before first logon, so all programs, settings and regtweaks will be installed for all users. But also because I like the challenge :) unfortunately $OEM$ folder is not copied to the hard drive at this stage. Otherwise I would definitely place the cmd file in the $1 folder.

    It doesn't seem logical to call the install.cmd file first if the path is unknown? But I will try.

    I was also thinking about combining both commands, something like this:

    cmd /C FOR %i IN (c d e f g h i j k l m n o p q r s t u v w x y z) DO IF EXIST %i:\Sources\Install.wim START /WAIT %i:\installApps.cmd

    Going to try that with %i and %%i (two seperate RunSynchronous commands). It works when I run this command from Start > Run.

    It worked! :thumbup

    But I don't know wich of the two commands worked, with %i or with %%i :whistle: but thats easy to figure out.

  17. I already have the same line in the batch file (without cmd /c) :) The error shows it is the batchfile that cannot be found. So the error must still be in the first RunSynchronous command where I set the %CDDRIVE% variable for the first time.

    When I run the command from desktop, all goes fine.

    When I type the exact same FOR command in cmd, it doesn't work, saying %%i was not expected here. If I change %%i to %i it does work. So there is a difference in how to run a command from batchfile and from commandline itself.

    edit: hmm weird, still the same error. I think it is impossible to set a variable from autounattend.xml and then use this variable later in the autounattend.xml. I've seen other people doing it but no one actually reported a succes:

    autounattend.xml

    <?xml version="1.0" encoding="utf-8"?>
    <!--This answer file generated by RT Seven Lite-->
    <unattend xmlns="urn:schemas-microsoft-com:unattend">
    <settings pass="windowsPE">
    <component name="Microsoft-Windows-International-Core-WinPE" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="NonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <SetupUILanguage>
    <UILanguage>en-US</UILanguage>
    </SetupUILanguage>
    <InputLocale>0409:00020409</InputLocale>
    <UserLocale>nl-NL</UserLocale>
    <UILanguage>en-US</UILanguage>
    <SystemLocale>en-US</SystemLocale>
    </component>
    <component name="Microsoft-Windows-Setup" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="NonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <ImageInstall>
    <OSImage>
    <InstallFrom>
    <MetaData wcm:action="add">
    <Key>/IMAGE/NAME</Key>
    <value>Windows 7 ULTIMATE</value>
    </MetaData>
    </InstallFrom>
    <WillShowUI>OnError</WillShowUI>
    </OSImage>
    </ImageInstall>
    <UserData>
    <ProductKey>
    <Key>D4F6K-QK3RD-TMVMJ-BBMRX-3MBMV</Key>
    <WillShowUI>OnError</WillShowUI>
    </ProductKey>
    <AcceptEula>true</AcceptEula>
    </UserData>
    </component>
    </settings>
    <settings pass="oobeSystem">
    <component name="Microsoft-Windows-International-Core" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <SystemLocale>en-US</SystemLocale>
    <UILanguage>en-US</UILanguage>
    <UserLocale>0409:00020409</UserLocale>
    </component>
    <component name="Microsoft-Windows-Shell-Setup" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="NonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <UserAccounts>
    <LocalAccounts />
    </UserAccounts>
    <OOBE>
    <NetworkLocation>Home</NetworkLocation>
    <HideEULAPage>true</HideEULAPage>
    <ProtectYourPC>3</ProtectYourPC>
    <HideWirelessSetupInOOBE>false</HideWirelessSetupInOOBE>
    <SkipMachineOOBE>false</SkipMachineOOBE>
    <SkipUserOOBE>false</SkipUserOOBE>
    </OOBE>
    <DisableAutoDaylightTimeSet>false</DisableAutoDaylightTimeSet>
    <TimeZone>W. Europe Standard Time</TimeZone>
    <VisualEffects>
    <FontSmoothing>ClearType</FontSmoothing>
    </VisualEffects>
    </component>
    </settings>
    <settings pass="specialize">
    <component name="Microsoft-Windows-Shell-Setup" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="NonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" />
    <component name="Microsoft-Windows-Security-Licensing-SLC-UX" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="NonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <SkipAutoActivation>true</SkipAutoActivation>
    </component>
    <component name="Microsoft-Windows-Deployment" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <RunSynchronous>
    <RunSynchronousCommand wcm:action="add">
    <Order>1</Order>
    <Description>Set Setup Drive Variable</Description>
    <Path>cmd /C FOR %i IN (c d e f g h i j k l m n o p q r s t u v w x y z) DO IF EXIST %i:\Sources\Install.wim SET SETUPDRIVE=%i:</Path>
    </RunSynchronousCommand>
    <RunSynchronousCommand wcm:action="add">
    <Order>2</Order>
    <Description>Install Applications</Description>
    <Path>cmd /C START /WAIT %SETUPDRIVE%\installApps.cmd</Path>
    </RunSynchronousCommand>
    </RunSynchronous>
    </component>
    </settings>
    </unattend>

    installApps.cmd (just like autounattend located in the root of my cd)

    @echo off
    FOR %%i IN (C D E F G H I J K L M N O P Q R S T U V W X Y Z) DO IF EXIST %%i:\installApps.cmd set SETUPDRIVE=%%i:

    :: System tools
    :: ===============
    :: Install 7zip x64
    START /wait %SETUPDRIVE%\Apps\7zip-x64.msi /qb
    :: Install Ccleaner
    StART /wait %SETUPDRIVE%\Apps\ccsetup_slim.exe /S
    :: Install Recuva
    StART /wait %SETUPDRIVE%\Apps\rcsetup_slim.exe /S
    :: Install Speccy
    StART /wait %SETUPDRIVE%\Apps\spsetup.exe /S
    :: Install Antivirus
    START /wait %SETUPDRIVE%\Apps\avira_antivir_personal_en.exe
    :: Install Teamviewer
    :: START /wait %SETUPDRIVE%\Apps\TeamViewer_Setup.exe

    :: Apply regtweaks for all users created in the future
    REGEDIT /S %SETUPDRIVE%\tweaks.reg

    EXIT

    Wether I use %%i or %i in autounattend.xml I get the same error message from my previous post (see screenshot) it cannot find %SETUPDRIVE%\installApps.cmd.

    @MaxXPSoft, do you have any idea?

×
×
  • Create New...