MSFN Forum: 7Customizer components XML - MSFN Forum

Jump to content


  • 3 Pages +
  • 1
  • 2
  • 3
  • You cannot start a new topic
  • You cannot reply to this topic

7Customizer components XML A guide to the components XML v1.1 26/Mar/2011

#21 User is offline   justibus 

  • Junior
  • Pip
  • Group: Members
  • Posts: 66
  • Joined: 27-March 05

Posted 19 February 2012 - 07:45 AM

This is a small writeup of the changes I have made to the xml format blue has defined and why I made them for xml creator and the companion removal tool. I want to thank blue for creating this format. It allows us a lot of control over the removal process. But it has a few shortcomings I addressed with my modifications.

  • Extended wildcard support
    • File and directoy elements support wildcards as most Windows console programs do. That means you can put multiple wildcards in each path attribute.
    • Registry keys and values also have almost propper wildcard support. You can put several wildcards in the path attribute of the <Key> and <Value> elements. The <Key> wildcards are resolved as in the <File> or <Directory> elements. The wildcards in <Value> elements are resolved according to the value attribute. For example, if you have a wildcard in the value and path attributes, the removal tool should find all the values in all keys after resolving the wildcards. This is to some extend possible with the "reg.exe query" method.

  • New element <Manifests>. Instead of putting the manifest files and directories and registry entries into their respective elements, they get their own element. This removes redundancies and makes it easier to make changes in the future how those elements are processed during removal without having to change the xml. We probably still don't understand the process of how these files and registry entries are used by Windows.

  • New element <Packages>. Some components are referenced in separate packages (located in Windows\servicing\Packages and in two places in the registry, HKLM\software\microsoft\windows\currentversion\component based servicing and HKLM\COMPONENTS\CanonicalData). This entry is needed to remove those packages. It cannot be put into the other elements because some registry entries are totally different in different versions of Windows (those in CanonicalData). They need to be resolved during component removal.


Below is an example xml that features all those changes (note: this is a semi- ficticious example).

<?xml version="1.0" encoding="UTF-8"?>
<_7Customizer>
  <Componenet group="System" name="Anytime Upgrade" requiredForStableSystem="false" size="1">
    <Description>Upgrade Windows to a different edition.</Description>
    <DependantComponenets/>
    <NeededFor/>
    <Files>
      <File method="delete" path="ProgramData\Microsoft\Windows\Start Menu\Programs\Windows Anytime Upgrade.lnk"/>
      <File method="delete" path="Windows\Help\Windows\en-US\anyupgr.h1s"/>
      <File method="delete" path="Windows\System32\WindowsAnytimeUpgrade.exe"/>
      <File method="deleteLine" path="Windows\winsxs\Manifests\*microsoft-windows-h..epremium-deployment_*.manifest" string="Microsoft-Windows-Help-AnytimeUpgrade"/>
      <File method="deleteLine" path="Windows\winsxs\Manifests\*microsoft-windows-h..omebasic-deployment_*.manifest" string="Microsoft-Windows-Help-AnytimeUpgrade"/>
      <File method="deleteLine" path="Windows\winsxs\pending.xml" string="Microsoft-Windows-Anytime-Upgrade"/>
      <File method="deleteLine" path="Windows\winsxs\pending.xml" string="Microsoft-Windows-Help-AnytimeUpgrade"/>
    </Files>
    <Directories>
        <Directory path="Windows\System32\fiction\*win*">
    </Directories>
    <Registry>
      <Keys>
        <Key part="software" path="Classes\CLSID\{BE122A0E-4503-11DA-8BDE-*}"/>
      </Keys>
      <Values>
        <Value part="software" path="Microsoft\Internet Explorer\MAIN\FeatureControl\FEATURE_*" value="WindowsAnytime*"/>
      </Values>
    </Registry>
    <Manifests>
      <Manifest id="*microsoft-windows-anytime-upgrade_*"/>
      <Manifest id="*microsoft-windows-anytime-upgradeui_*"/>
    </Manifests>
    <Packages>
      <Package id="Microsoft-Windows-Anytime-Upgrade-Results-Package*"/>
      <Package id="Microsoft-Windows-Anytime-Upgrade-Package*"/>
    </Packages>
  </Componenet>
</_7Customizer>




#22 User is offline   whairs01 

  • Newbie
  • Group: Members
  • Posts: 18
  • Joined: 17-March 11
  • OS:Windows 7 x86
  • Country: Country Flag

Posted 12 March 2012 - 05:52 PM

Hello justibus,

I hope you can help or point me to some place or someone that can. I have being trying to use 7Customer.0.5.0c to remove windows 7 components but cannot get it to work. I am not sure why it is not working or what I am during wrong. Do I need to do anything after I select the components in the "7Customizer Tweaks Section"? Do I need to edit the xml file the 7Customizer build and if so what file.

If u do not mind could you give me a step-by-step process to do to gt it to work or tell me where it is documented which show what to do. I really like to tool but I need to remove or turn on features. for example I check the box to remove "Games", "Pictures", "Documents", "Music" but they still show in the Start Menu. How and what do I need to do to get the components removal to work. I really would apprecaite your help to resolve this problem.


Thanks

#23 User is offline   Moonchilde 

  • Junior
  • Pip
  • Group: Members
  • Posts: 52
  • Joined: 10-September 10
  • OS:Windows 7 x64
  • Country: Country Flag

Posted 13 March 2012 - 04:08 AM

Why not just try the updated stand alone tool?

http://sourceforge.net/projects/w7cr/

If you need a step by step do it this way.

1. Use 7-zip to extract your wim to a working NTFS partition.
2. run the command tool for W7CR
3. remove the components with the current available XML files
4. Use Windows 7 Toolkit to then capture the directory you used W7CR on as a new wim and compress it and finish up all your customizations with that.

#24 User is offline   justibus 

  • Junior
  • Pip
  • Group: Members
  • Posts: 66
  • Joined: 27-March 05

Posted 14 March 2012 - 01:53 PM

View Postwhairs01, on 12 March 2012 - 05:52 PM, said:

Hello justibus,

I hope you can help or point me to some place or someone that can. I have being trying to use 7Customer.0.5.0c to remove windows 7 components but cannot get it to work. I am not sure why it is not working or what I am during wrong. Do I need to do anything after I select the components in the "7Customizer Tweaks Section"? Do I need to edit the xml file the 7Customizer build and if so what file.

If u do not mind could you give me a step-by-step process to do to gt it to work or tell me where it is documented which show what to do. I really like to tool but I need to remove or turn on features. for example I check the box to remove "Games", "Pictures", "Documents", "Music" but they still show in the Start Menu. How and what do I need to do to get the components removal to work. I really would apprecaite your help to resolve this problem.


Thanks


If you use 7Customizer, you have to make sure of a couple of things:

- In the apply tab, check "Verify file deletion"
- To remove components, use the Components Tab. The Tweaks tab doesn't actually remove components from the installation. Be aware, that this feature is very beta (I myself you rather say alpha in an advanced stage).


As an alternative, you can use my command line utility Moonchilde pointed to in the previous post. But it only removes stutt. It doesn't do anything either. And it's also beta. So your results might vary.

#25 User is offline   whairs01 

  • Newbie
  • Group: Members
  • Posts: 18
  • Joined: 17-March 11
  • OS:Windows 7 x86
  • Country: Country Flag

Posted 22 March 2012 - 04:14 AM

Hi,

I like to know how do I get the tweaks options: Music, Pictures, Documents, TV, etc., that I check to "Don't display..." Do I need to do anything special to make this work because it is not working now when I check them to "NOT DISPLAY". Please HELP and response ASAP....

#26 User is offline   justibus 

  • Junior
  • Pip
  • Group: Members
  • Posts: 66
  • Joined: 27-March 05

Posted 24 March 2012 - 06:03 AM

I'm afraid I'm not familiar with that feature of 7Customizer. I've never used it. Sorry.
I can only give you the general advice to use an original image.
You should probably ask in the sticky thread about 7Customizer. This thread only deals with the xml format for the component removal feature of 7Customizer.

#27 User is offline   marcusj0015 

  • Member
  • PipPip
  • Group: Members
  • Posts: 154
  • Joined: 05-July 09

Posted 17 April 2012 - 12:42 PM

Nice thread, I was looking through the XMLs earlier when it didn't work and was manually doing it myself (OMG that's mind numbling boring and tedious) and I noticed that they weren't listed alpphabetically, could you make them alphabetical?

#28 User is offline   justibus 

  • Junior
  • Pip
  • Group: Members
  • Posts: 66
  • Joined: 27-March 05

Posted 18 April 2012 - 03:49 PM

What exaclty do you mean with alphabetical? The <Files>, <Directories>, ... elements?

#29 User is offline   Moonchilde 

  • Junior
  • Pip
  • Group: Members
  • Posts: 52
  • Joined: 10-September 10
  • OS:Windows 7 x64
  • Country: Country Flag

Posted 25 April 2012 - 05:31 AM

View Postmarcusj0015, on 17 April 2012 - 12:42 PM, said:

Nice thread, I was looking through the XMLs earlier when it didn't work and was manually doing it myself (OMG that's mind numbling boring and tedious) and I noticed that they weren't listed alpphabetically, could you make them alphabetical?


The xml files have the type of component before the name of the components to be removed in the default xml filenames. For example, accessories_notepad.xml or drivers_modems.xml. This should automatically be sorted alphabetically. Also, what doesn't work? What were you doing manually?



#30 User is offline   marcusj0015 

  • Member
  • PipPip
  • Group: Members
  • Posts: 154
  • Joined: 05-July 09

Posted 27 June 2012 - 06:39 AM

View PostMoonchilde, on 25 April 2012 - 05:31 AM, said:

View Postmarcusj0015, on 17 April 2012 - 12:42 PM, said:

Nice thread, I was looking through the XMLs earlier when it didn't work and was manually doing it myself (OMG that's mind numbling boring and tedious) and I noticed that they weren't listed alpphabetically, could you make them alphabetical?


The xml files have the type of component before the name of the components to be removed in the default xml filenames. For example, accessories_notepad.xml or drivers_modems.xml. This should automatically be sorted alphabetically. Also, what doesn't work? What were you doing manually?


I don't remember what I was doing back then, but I'm trying it again, adn this time it's saying that libexpat-1_.dll can't be found, and it's right next to create.exe, and I've also copied it to the System32 folder and treid registering it, and it doesn't work, and I've also got Strawberry PErl installed (at C:\Perl instead of the default location) becasue I was trying to hack my iPhone with a perl script I found on the web lol. anyway, I tried copying C:\Perl to C:\strawberry\Perl, because that's where it expected it, and it's still not working.

~Edit~
I AM using the x64 version of Strawberry Perl though, could that be the problem?

~Edit2~
I'm having all kinds of permissions issues with Windows, I'll probably have to reinstall.

This post has been edited by marcusj0015: 27 June 2012 - 06:47 AM


#31 User is offline   marcusj0015 

  • Member
  • PipPip
  • Group: Members
  • Posts: 154
  • Joined: 05-July 09

Posted 27 June 2012 - 02:39 PM

How am I supposed to get this to work? It runs now, but I type in a search such as "HomePremium" and it just prints a **** log, then sometimes I run the same command and it creates an XML, other times nothing. what's going on here?

#32 User is offline   marcusj0015 

  • Member
  • PipPip
  • Group: Members
  • Posts: 154
  • Joined: 05-July 09

Posted 27 June 2012 - 03:29 PM

It works when I run it is a regular user, but says it can't find that dll that's right next to it when I run it as admin. :confused:

#33 User is offline   justibus 

  • Junior
  • Pip
  • Group: Members
  • Posts: 66
  • Joined: 27-March 05

Posted 28 June 2012 - 02:51 AM

Not every keyword works.
What xml creator does is search through all manifest files in Windows\winsxs\Manifests and select the ones that have your keyword in the first <assemblyIdentity> tag (in the name attribute).

Have you extracted a WIM file to some folder and pointed settings.ini to it? Otherwise it will give a warning.

You need to run create.exe from an elevated command promt because it needs to load the registry hives from the extracted WIM file into the registry. That only works with administrative rights.


If you give me the command line you use, the version of create (create.exe -v) and paste the contents of your settings.ini into a code tag here, I can look into what's not working.

#34 User is offline   marcusj0015 

  • Member
  • PipPip
  • Group: Members
  • Posts: 154
  • Joined: 05-July 09

Posted 28 June 2012 - 05:24 AM

I've actually just mounted the Ultimate wim, as it's less messy than extracting hundreds of files, here's my create.exe version and settings.ini contents.

Create.exe version 1.0 copyright 2012 Daniel Just.

; This file is absolutely needed! Do not delete it!
; Adjust the paths below to their correct location
[paths]
; path where the windows installation source manifest files can be found
; path must be absolute; no backslash at the end
manifestPath=D:\Users\Marcus\Desktop\Remove_Componets\mount\Windows\winsxs\Manifests\

; path where output xml and log file should be saved
; path can be relative to this dir or absolute
outputDir=D:\Users\Marcus\Desktop\Remove_Componets\Logs\

; path to registry hives
; path must be absolute; keep last backslash
regHivePath=D:\Users\Marcus\Desktop\Remove_Componets\mount\Windows\System32\config\

; path to installation sources
; path must be absolute; keep last backslash
sources=D:\Users\Marcus\Desktop\Remove_Componets\mount\

This post has been edited by marcusj0015: 28 June 2012 - 05:25 AM


#35 User is offline   justibus 

  • Junior
  • Pip
  • Group: Members
  • Posts: 66
  • Joined: 27-March 05

Posted 03 July 2012 - 08:50 AM

Ok, your setup looks good. What command line do you use?

This post has been edited by justibus: 03 July 2012 - 01:56 PM


#36 User is offline   marcusj0015 

  • Member
  • PipPip
  • Group: Members
  • Posts: 154
  • Joined: 05-July 09

Posted 05 July 2012 - 01:55 PM

Create.exe -k and either Premium or "Premium" (when searching for Home Premium stuff lol)

#37 User is offline   marcusj0015 

  • Member
  • PipPip
  • Group: Members
  • Posts: 154
  • Joined: 05-July 09

Posted 06 July 2012 - 12:55 PM

"make sure settings.ini exists" is all I'm getting, it exists, the paths are correct, I even took ownership of the **** thing, it's in the same folder as create along with everything else. WTF IS GOING ON?!

#38 User is offline   marcusj0015 

  • Member
  • PipPip
  • Group: Members
  • Posts: 154
  • Joined: 05-July 09

Posted 07 July 2012 - 01:19 AM

After a reboot it's working... but still only generating XMLs every other time...? and can I use this to search for say Shell32, and delete all of the old versions of Shell32? How do I go about doing that?

#39 User is offline   marcusj0015 

  • Member
  • PipPip
  • Group: Members
  • Posts: 154
  • Joined: 05-July 09

Posted 07 July 2012 - 02:53 AM

Well, my Windows 7 partition crashed and I'm on Windows 8 CP right now (I hardly ever use it) but it's saying that It has to run on Windows 7, and I'd like to strip Win7 before I reinstall, is there anyway to run it on Win8?

#40 User is offline   justibus 

  • Junior
  • Pip
  • Group: Members
  • Posts: 66
  • Joined: 27-March 05

Posted 08 July 2012 - 02:30 PM

View Postmarcusj0015, on 07 July 2012 - 01:19 AM, said:

After a reboot it's working... but still only generating XMLs every other time...? and can I use this to search for say Shell32, and delete all of the old versions of Shell32? How do I go about doing that?



With Shell32, you mean the shell32.dll? As long as you can find manifest files in Windows\winsxs\Manifests, you can create an xml with create.exe. Otherwise you have to construct an xml manually.
But why it creates xmls only every other time, I can't say why this happens without a bit more info. When using the same keyword, does it work one time and not the next? Could you attach a log file of a successful run and an unsuccessful run (if there is one)? I can only do guesswork if you don't give me a little more information.


View Postmarcusj0015, on 07 July 2012 - 01:19 AM, said:

Well, my Windows 7 partition crashed and I'm on Windows 8 CP right now (I hardly ever use it) but it's saying that It has to run on Windows 7, and I'd like to strip Win7 before I reinstall, is there anyway to run it on Win8?


Hmm, I haven't thought about Windows 8. I'll fix it in the next version. Unfortunately, I can't say when I'll be able to release it.

Share this topic:


  • 3 Pages +
  • 1
  • 2
  • 3
  • You cannot start a new topic
  • You cannot reply to this topic

1 User(s) are reading this topic
0 members, 1 guests, 0 anonymous users



All trademarks mentioned on this page are the property of their respective owners
Copyright © 2001 - 2013 msfn.org
Privacy Policy