New Visual Kitchen PRB project for Iolite(T4242) - Touch Cruise 2 ROM Development

New Visual Kitchen PRB project for Iolite(T4242)
This is a new tool based on bepes PRB(platformrebuilder.exe), simpler and more suitable for novice to use.
Is a function of PRB expansion, OEM package can be selected.Easier to use than the EVK,
Use the steps:
1. Download this Iolite_Kitchen.rar, unzip it to your disk,
2. Refer to EXT, OEM, ROM, SYS folder structure to EXT, OEM, ROM, SYS replaced by the new version.
3. Alternative RELEASE brush machine tools, it would be renamed as Ruu.exe.
4. Open the DIY ROM Utility.exe, to set the screen, SET paths and patterns \ Ext TYPE = Ext \ * \ *.
5. To change the menu SYS or XIP, began to compile (build).
Note:
The default setting is applied to Iolite,You can change the LZX support or SET XIP PP size, others you can not set the.For more information, please see HELP.
Download:
http://hotfile.com/dl/17155390/c2da454/Iolite_RK.rar.html
Update:
http://forum.xda-developers.com/showthread.php?t=573778
Thanks to:
bepe for his platformrebuilder.exe
Ervius for his implantxip.exe
Donate:
If you think this tool is good, you can donate this project.thanks.
https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=9003653
Contact me:
MSN: [email protected]
E-mail: [email protected]

XIP inserts settings (recommended)
1.PRB default: (..\TOOLS\implantxip xip.bin OS.nb.payload)
A: Set Nb type=os.nb.payload ; set extra=NBMerge ; set NBMerge=Kaiser ; set tool=Imgfs_xxx
B: Set Nb type=os.nb ; set extra=osnbtool ; NBMerge not set ; set tool=osnbtool
2.EVK mode:
A: Nb type is os.nb.payload ; set extra=NBMerge ; set NBMerge=Kaiser ; set tool=Imgfs_xxx
3.osnbtool: (..\TOOLS\osnbtool -c OS.nb.payload 1 xip.bin)
A: Set Nb type=os.nb ; set extra=osnbtool ; NBMerge not set ; set tool=osnbtool
I recommend using OSNBTOOL, it can automatically adjust NB partition size, free up space.

Nice work. I am watching your kitchen for some time and it is becoming better and better. Looks more tidy than ervius'es one.

Related

[APP][RC3.1][24Oct09]TICS-Installer-install plg in all cpr's[RC-THREAD][6.5]

Hi,
ATPluginInstaller was a great idea-but we missed some things-and TICS can do it -especially installing a .plg in EACH .cpr!
TICS is short for Titanium Installator Controller Saver
TICS is upward-compatible to ATPluginInstaller in its Doing - but will do much more.
To introduce it, a little example to call TICS_installer, so you can already see, what's now possible:
TICS_installer.exe -addchange -plg:\\Internal Storage\\Sandbox\\default.plg -cpr:currentPortrait -silent
but also possible:
TICS_installer.exe -addchange -plg:\\Internal Storage\\Sandbox\\test.plg -cpr:\\Internal Storage\\Sandbox\\Titanium_480x640.cpr
and:
TICS_installer.exe -delete -plugin:Test -cpr:currentLandscape
Direct Download of TICS_installer - new RC3.1
Now, you have seen the "specials" of TICS - but the first question of te Plugin-Makers will be: "what about the setup.dll?"
And that's very easy: ATPluginInstaller installed or uninstalled only the default.plg in Titanium_<res>.cpr - so it was possible.
TICS has to much options for this - and so you need another interface -but you already have it:
The Setup.dll from Mortscript calls "install.mscr" after installing a cab - and "uninstall.mscr" before uninstalling a cab.
The only MUST is: the Mortscript.exe, TitaniumRefresh.exe and the both mscr-Files and TICS_installer.exe must be installed in your main Directory of your Plugin.
But so we can also be asure, that each Plugin has now its right MortScript-Version - and everybody of us has a simple-to-use interface.
I will post an example for an install.mscr in Post #2
But now the Syntax of TICS-installer(and 4 now it's changeable, after Release no more! It can only be expanded - but each Skinner, Themer, Plugin-Developer,... must rely on, that the Parameters from TICS_installer always be upward-compatible)
Usage:
Install/Change:
TICS_installer.exe -addchange -plg:<absolutePathToPlg> -cpr:currentPortrait|currentLandscape|<absolutePathToCpr> [-silent]
Uninstall:
TICS_installer.exe -delete -plugin:<PluginName> -cpr:currentPortrait|currentLandscape|<absolutePathToCpr> [-silent]
The Example in Post #2 will show the same thing as that was ATPluginInstaller did... almost... because "current" is the ative cpr - e.g. if you are using NeoTitanium - then TICS will install the .plg in NeoTitanium...
For whom it is needful to use TICS in future?
For the Users of course - no more problems to install Skins to whatever he uses in Titanium
For Developers of Plugins: their Plugins can now be used in each Titanium-Theme without adapting of the Theme-Makers - only depends from the ideas of the Skinners. Also they have a new interface after installing/before uninstalling a .cab - and Mortsript-knowledge would be enough
For Titanium-Theme-Makers: Now they can get help from the Skinners and the Plugin-Makers for a specific Plugin and no more for a whole cpr. Also the additional Parameters will help them, too
For Skinners: Much more possibilities to skin now Only by making that, what they can: Making great .plg's and Images!
TICS is free - like ATPluginInstaller - for each non-profit CHome-/Titanium-Plugin - so I'm only interested in enjoying this new possibilities of ech of you, too
Some important explanations:
- TICS_installer will only write in "ExtensibilityXML", "DefaultXML" and "Plugins" to CHome-Registry, if the Parameter for CPR is a "current..."-Parameter
- but then in "HKCU/Software/TICS" - with "newExtensibilityXML","new..."
- TICS uses "ExtensibilityXML" and "CPRFile" from CHome-Registry to identify the current CPR - it's automatically set by Windows-system because of ExtensibilityXML
- and you can use them by simple Registry-Copy in install.mscr or your Program like you need it for your Plugin
- You must set the <Position> in .plg - but if the Plugin already exists, then TICS ignores the Position in .plg - because it assumes, that the User has moved the Plugin to a better place for him (e.g. with CHome-Editor) - so it's more User-friendly
- TICS has definite Error-Messages and Number - which you can capture&handle while Installing a .plg - everything to find in "HKCU/Software/TICS"
- TICS recognizes your current resolution of your device - and only installs in the .cpr of this Resolution - no more in the other unused one
- Code optimization fast&small
- TICS makes a different between portrait and landscape in the .plg - so you have to call TICS twice if you want the same behaviour like ATPluginInstaller- but so you can also handle the different Sizes or can install different .plgs to Landscape and portrait... nice opportunity for Skinners
- it creates two temporary files direct in MainStorage "tempTitaniumLandscapeCpr.txt" and "tempTitaniumPortraitCpr.txt" which are the output files of - also a successful like a buggy call, too - of TICS - so you can handle it without need to copy something from Windows-Directory.
Of course will TICS change the current .cpr, too. And overwrite the temporary Files after next call of TICS
Everything else is already explained with ATPluginInstaller - but don't forget: CESetupDLL = "setup.dll" in TICS! :
http://forum.xda-developers.com/showthread.php?t=509492
Only a summary of the new advantages of TICS:
- fast - written in C with MSDN - nothing else! Needs only 20ms for a complete operation on a .cpr
- You can handle EACH .cpr now The most important of all
- .plg can be everywhere - you can also save the .plg in Internal Storage together with the Images to copy full Skins to your Plugins
- Post-Installation-Hook - you can handle everything which you need for yor Plugin now while installing the cab (install.mscr)
- Pre-Deinstallation-Hook - you can handle everything which you need for yor Plugin now before uninstalling the cab (uninstall.mscr)
- in pre- and post- un/installation you can handle everything also before calling TICS and also after calling TICS
-Detailed Error Messages and Numbers to handle them
- Special support-parameters for JMLToday & TitaniumRSS and some other Plugins
- Silent-Mode - TICS can suppress the Error-Messages and only write them to Registry - and you can handle them on your own
- Change View of Titanium to TitaniumListView or BronzeListView (disabled in Beta)
- Makes differences between portrait and landscape - and so the possibiity to have abolutely different Skins in this directions
- only installs in your Resolution - so it's fast and need less storage in your Windows-Directory
- User-friendly (e.g. Position - see above)
- Let you handle the both last calls of TICS by providing everything about them in Registry.
Download attached
Please: It's a RC: Before you try it - save your .cpr and the Values "ExtensibilityXML" and "Plugins" in Registry of CHome.
First File is Mortscript.exe (4.2-feel free to use,what you want) , TitaniumRefresh.exe, the setup.dll and an example for install.mscr and uninstall.mscr
Second File is TICS_installer.exe itself as zip
-------
last change 3.1:
- "-change" to TitaniumListView bugfix
*FULL CHANGELOG*
-------------
Thanx to Mort for providing the Setup.dll!!!
And AppStar for his great initial concept of ATPluginInstaller!!!
And I'm looking forward to new Themes & Skins, which are now much easier possible
Cheers & Thanxs
Micha
Like my work? For a new device to test, motivation, better developing environment and especially coffee - to spend much more nights, you can donate a cup of coffee for me.
Short Description: HowTo easily change your Plugin from ATPluginInstaller to TICS_installer (for Plugin-Developers) - needs only some minutes :
1. use the attached install.mscr and uninstall.mscr from Post #1 ("SetupDll_and_Mort.zip")
2. In install.mscr only put these Lines:
Code:
instPath = SystemPath( "ScriptPath" )
plgPath=instPath\"test.plg"
callParameter="-addchange -plg:"&plgPath&" -cpr:currentPortrait"
RunWait(instPath\"TICS_installer.exe", callParameter)
callParameter="-addchange -plg:"&plgPath&" -cpr:currentLandscape"
RunWait(instPath\"TICS_installer.exe", callParameter)
RunWait(instPath\"CHomeRefresh.exe","")
If you use another .plg - not default.plg - just change second line to the name of the .plg you want to install with .cab
3. In uninstall.mscr only put these Lines:
Code:
instPath = SystemPath( "ScriptPath" )
RunWait(instPath\"TICS_installer.exe", "-delete -plugin:[I]YourPlugin[/I] -cpr:currentLandscape")
RunWait(instPath\"TICS_installer.exe", "-delete -plugin:[I]YourPlugin[/I] -cpr:currentPortrait")
RunWait(instPath\"CHomeRefresh.exe","")
Only replace "YourPlugin" with the name of yourPlugin - e.g. "CNitrogen"
4. Put this install.mscr, uninstall.mscr, TICS_installer.exe, setup.dll, MortScript.exe (don't forget! use Version, you want) and CHomeRefresh.exe to your Main Directory of your Plugin. Delete "ATPluginInstaller.exe" and "CEsetupDLL.dll"
5. Add the new Files to your .inf-File
6. Change in [DefaultInstall]-Section of your inf the Line to: CESetupDLL = "setup.dll"
7. Cab your Plugin - ready - now your Plugin works with TICS - and therefore for all Themes
Longer Example MortScript:
Here's the Mortscript, what would almost do the same while installing a cab for a Titanium Pluing like ATPluginInstaller,
but with the difference: In the current (=active) CPR - it's also attached as example in Post #1 as download
Code:
### Sample: Installation for TICS - called by setup.dll
instPath = SystemPath( "ScriptPath" )
### Code before call of TICS_Installer ###
# empty
### TICS_Installer call portrait ###
plgPath=instPath\"test.plg"
callParameter="-addchange -plg:"&plgPath&" -cpr:currentPortrait"
message(callParameter)
RunWait(instPath\"TICS_installer.exe", callParameter)
### Handle here returned Error-Code: portrait ###
errorcode=RegRead("HKCU", "Software\TICS","ErrorNumber")
if (errorcode ne "0")
messagetext="Portrait Installation failed: "& RegRead("HKCU", "Software\TICS","ErrorDescription")
message(messagetext)
exit
endif
### TICS_Installer call landscape ###
plgPath=instPath\"test.plg"
callParameter="-addchange -plg:"&plgPath&" -cpr:currentLandscape"
RunWait(instPath\"TICS_installer.exe", callParameter)
### Handle here returned Error-Code: portrait ###
errorcode=RegRead("HKCU", "Software\TICS","ErrorNumber")
if (errorcode ne "0")
messagetext="Landscape Installation failed: "& RegRead("HKCU", "Software\TICS","ErrorDescription")
message(messagetext)
exit
endif
### Code after call of TICS_Installer ###
Sleep(500)
RunWait(instPath\"CHomeRefresh.exe","")
message("finished")
exit
An example for uninstallation (parly) - it will uninstall your Plugin with the Name "Test" - replace it with the Name of your Plugin and it will work
Code:
...
RunWait(instPath\"TICS_installer.exe", "-delete -plugin:Test -cpr:currentLandscape")
RunWait(instPath\"TICS_installer.exe", "-delete -plugin:Test -cpr:currentPortrait")
...
Some other possible calls - e.g. also from C-/C++/-C#-/Whatever-Program:
// LPCWSTR ganzPar= L"-addchange -plg:\\Interner Speicher\\Sandbox\\test.plg -cpr:\\Interner Speicher\\Sandbox\\Titanium_480x640.cpr" ;
// LPCWSTR ganzPar = L"-addchange -plg:\\Interner Speicher\\Sandbox\\test.plg -cpr:currentPortrait";
// LPCWSTR ganzPar = L"-addchange -plg:\\Interner Speicher\\Sandbox\\test.plg -cpr:currentLandscape -isTICSSystemCall";
// LPCWSTR ganzPar = L"-delete -plugin:JMLToday -cpr:\\Interner Speicher\\Sandbox\\Titanium2_480x640.cpr";
// LPCWSTR ganzPar = L"-delete -plugin:Test -cpr:currentPortrait";
// LPCWSTR ganzPar = L"-delete -plugin:Test -cpr:currentLandscape";
// LPCWSTR ganzPar = L"-delete -plugin:Testplugin -cpr:all";
// LPCWSTR ganzPar = L"-delete -plugin:Testplugin -cpr:\\Interner Speicher\\Sandbox\\Titanium_480x640.cpr";
And here the Listings of the Registry-Keys in HKCU/Software/TICS :
callAction: Last kind of Call, e.g. addchange
callCPR: full-qualified path of CPR which should be changed
callOrgDefaultXML/callOrgExtXML/callOrgPlugins: Saves the DefaultXML/ExtensibilityXML/Plugins before Changing
callOverall: All Parameters which were given to TICS_installer
callPLG: full-qualified path of PLG which should be injected
callTypeCPR: direct or current
ErrorDescription: Long description of Error Message
ErrorNumber: Number of the Error
last...: The same as above for the Call before
new...: The changes of TICS in Registry - with "current" also in your Titanium - otherwise only here, so you can copy it after installation e.g. in install.mscr
Nice day 4 U
Micha
Changelogs of former Versions:
changelog ReleaseCandidate 3.1:
- -change to TitaniumListView now works (not necessary to update from RC3.0 if you are a Plugin-Developers, who doesn't use "-change")
changelog ReleaseCandidate 3.0:
- Wrong Upload - therefore RC2.0 no more exists
- Bugfix: in seldom constallations other Plugins disappeared
- Added 2 more understandable Error Messages
changelog ReleaseCandidate 1.0
- added "ForbiddenList"
- added check of ExtensibilityXML to get the correct cpr-Name
- added possibility to change a cpr to TitaniumListView / BronzeListview
- increased speed - reduced filesize
Changelog Beta2:
- Made a Fix to Compiler-Options - in the optimization it made something wrong sometimes in .exe
- Some Bugfixes because of Feedback (now it's stable with changing the Windows-CPR)
- Implemented this to JMLToday-cab and tested it: All works - and if this works, so we can be very sure, that it works for all Plugins instead of ATPluginInstaller
- added Parameters:
-- The Version-Number of TICS will alway be transmitted to Registry HKCU/Software/TICS:Version
-- "-nochangechomereg" : Independent from -current..., TICS_installer won't change the Registry of CHome - only create the key in HKCU/Software/CHome, which you can copy or use afterwards.
-- "-nochangecpr" : Independent from -current..., TICS won't write back the cpr-File to the original and will only provide the temp-File, which you can use by your install-script
-- "-isTICSSystemCall": This will be a reserved Parameter for the whole TICS-System - and you can never rely on,what it does-so never use it - it's only for "C" and "S" of TICS - and can change its behaviour
- Some small optimizations in code
- Tested it very hard
-------
OK - I must go now for today - thanx for Feedback, how we can alltogether get it appropriate for each special wishes of the Themers, Skinners and Plugin-Developers.
Have Fun with TICS-Checking
Micha
Nice, now if someone wants a specific plugin for say my NeoTitanium or the Windows 7 Titanium or any other Titanium skin that uses custom named CPR's, the developer can make the layout or any skinner can make their own. Will make my job a lot easier, Thank you!!!
Enjoy your coffee, it's well earned.
Unique Transaction ID #4HH62607UX4580321
You have really outdone yourself Micha, that is great.
I am no skinner and also cannot program, but i will dig into this to understand it fully as it very interesting and opens a lot of possibilities.
Thank you! I'm looking forward to everything what the Skinners will do with your NeoTitanium
Thanx, too, Claus! You had so much effort increating and providing your cpr's for all resolutions and themes - I hope it's now much easier for you.
And hey - there's no need to programming - only using the Parameters
I hope some Plugins will test soon the changing of the files (setup.dll, TICS_installer.exe) - and the most of them can overtake almost blind (only changing the PluginName) the install.mscr and uninstall.mscr of the download (and shown in Post #2) - it would almost do the same as PluginInstaller before - but now for each Titanium-Theme - and I think that's interesting for all Plugin-Developers.
I will insert it also in JMLToday andsend it to JMHL afterwards - but there will be much more needed than only the Installation-Part.
The same later on with TitaniumRSS (because TitaniumRSS has already since the first Release TICS inside for changing to FullView and some more things- so I learned, what's important).
I want to explain some additional Parameters here - only to discuss, if they would be necessary for you:
- The Version-Number of TICS will alway be transmitted to Registry - better then a "-version"-Parameter - ok?
- There will be a "-change" - Parameter - e.g. then with "-cprchange:titaniumlistview|bronzelistview" - I don't think I have to explain, what it means
- Perhaps some Parameters there in "-change" which changes the Action-Areas and some more (proposals... we will see)
- "-nochangechomereg" : Independent from -current..., TICS_installer won't change the Registry of CHome - only create he key in HKCU/Software/CHome, which you can copy or use afterwards.
- "-nochangecpr" : Independent from -current..., TICS won't write back the cpr-File to the original and will only provide the temp-File, which you can use by your install-script
- "-isTICSSystemCall": This will be a reserved Parameter for the whole TICS-System - and you can never rely on,what it does-so never use it - it's only for "C" and "S" of TICS - and can change its behaviour
I didn't write this proposals of the Parameters to Post #1 (some of them are already implemented, but disabled in Beta) - not toconfuse to much - they would be seldom used - and the most important for Plugin-Developers,Skinners, Theme-Makers,... are in Post #1
But nevertheless: If you want something special of functionality for your Theme oder your Plugin or to help for skinning .plg's - it's the best now before Iwill open the Release-Thread of TICS.
Later on - I will add each Betas here - and the Releases with the official implemented and upward-compatible functionalities in the Release-Thread of the whole TICS-Suite.
Especially from Theme-Makers and Plugin-Developers: I hope you have a look at the Parameters of Post #1 - and can tell me, what you would like to have for your Plugin.
Cheers
Micha
Ok - thanx for the Feedbacks (better here in Thread as via PN - so I would see it much faster)
I have changed the things - and deleted Beta1 from Download and added Beta2 in Post #2
I have tested it hard - and I already integrated it in JMLToday.cab to see, if everything will work (JMLToday is very complex in installing and using .plg) - and it's stable with TICS Beta2 - so you can test it also with your Plugins.
Also I had to optimize the code a little bit and added some of the Parameters, I mentioned.
I only want to run it with some further informations - therefore the .exe is a little bit bigger now. But no bad effect on the speed.
I also have put each "Beta"-Status out of the Beta - no limitations and also no more messages and Silent-Mode is activated, if set.
The Message - if activated - are now also shown in Foreground
Works really stable to integrate it.
So - Beta2 is also Release Candidate 1
Please Feedback for wishes,...
Cheers
Micha
It would be nice to have a replacement for CHomeRefresh
After each CHomeRefresh, some keys I deleted from the registry get restored, amongst other things.
We could perhaps call it via:
TICS_Installer.exe -refresh
You now already have a replacement, adwin - because it's only called from the mortscripts
I did it on purpose So everybody can choose if he wants to handle the Return-Values before or make a Refresh.
So - TICS.exe will NEVER call a Refresh by itself - you can rely on
So you can use RedrawToday from Mortscript or RefreshToday.exe or nothing (or something else - there are some more programs). What's better for you (Therefore also the additional parameters, which only write to shadows)
Don't forget - now you have an Interface while installing/uninstalling the cab. So I had no reason to integrate the Refresh into the TICS-exe.
And because of the Restored Keys after Refresh - Beta2 also sets DefaultXML now - just uploaded some minutes before to Post #1
OK so?
Micha
mind realeasing the jmltoday version with this
n if possible have it take the red f the main clock in the bliss theme
Yes - but please: TICS is for all Plugins and Themes - and so please ask in the Plugins and Themes you use, if the could integrate TICS, so that everybody can enjoy each Plugin in each Theme.
I can only provide the Files - and it's simple to swap ATPluginInstaller.exe with TICS_installer.exe and also the cesetupdll.dll with setup.dll and add the 2 Scripts and only make a few simple modifications to them (which .plg - I set in Scripts still default.plg as example).
So each Plugin would automatically work with each themes - without anything more to do.
The Tests are fine - and ok - JMLToday - I'm involved and already made the new cab with TICS - but that must also be published according with JMHL. (and you were not the first who asked for JMLToday with TICS - I won't forget it, sure )
But it works for all Plugins & Themes - so please ask them also direct in their Thread.
OK?
Greetings
Micha
@Micha : You can publish your version of JMLToday5.4 with TICS (no problem).
I have lot of work (business-work, plugins in progress....) and i have not time to make all...
A++
OK - I've uploaded it meanwhile, until you have more Time:
JMLToday 5.4 installed by TICS as cab - Download-Post :
http://forum.xda-developers.com/showthread.php?p=4629986#post4629986
Then everybody can begin with making Skins for all the other Themes, like Bliss, NeoTitanium,...
Greetz
Micha
ok,thanx for the messages.I would only now need a feedback from somebody with QVGA or WQVGA-device. indifferent if you only inserts a single .plg or tried the link above from jmltoday.
But it's really an app for Developers,Theme-Makers to check it.
Like wished, I will add the "ForbiddenList" ((I will explain it) and then I will release TICS_installer as first app from the TICS-Suite.
Works fine so far
Micha
Thanx for the Feedbacks (I still don't understand, why you don't make it here in Thread...)
I added the wishes - I didn't changed the main features - so description is still the same to replace ATPluginInstaller with TICS_Installer - here are the adds of the First Release Candidate:
- added "ForbiddenList"
If you have a special .cpr - and you want to prevent it temporary from changes by Plugin-Installations - you only have to add the name of the cpr to /HKCU/Software/TICS -> "ForbiddenList" - enclosed with semicolons,
e.g. ForbiddenList=";TitaniumRSS;;Specialcpr;"
Then TICS would also if "currentPortrait" or "currentLandscape" is set for cpr - only make the temporary Files for this cpr and also the temporary Registry-Entries - but wouldn't change the Titanium system.
- added check of ExtensibilityXML to get the correct cpr-Name
TICS uses normally "CPRFile" in CHome to identify the current cpr - but now it also looks into ExtensibilityXML - and if there is another cpr-Name - then TICS uses this CPR-Name and also sets "CPRFile" this name (it's really better for TitaniumSystem- that both settings are switched, also if you think, that ExtensibilityXML would be enough)
- added possibility to change a cpr to TitaniumListView / BronzeListview
with
Code:
TICS_installer.exe -change -view:TitaniumListView -cpr:currentPortrait
the current protrait cpr would be change to TitaniumListView - so that e.g. JMLPanex would also work with Titanium7Project.
With:
Code:
TICS_installer.exe -change -view:BronzeListView -cpr:currentPortrait
it would be switched back
- increased speed - reduced filesize
you will see it .exe is now 35kb - and also for big cpr-Files very fast.
I don't want to add new functionalities for 1.0 now - but this Beta-Thread will remain also after Release - to add this things to next versions.
But the main-calls to -addchange and -delete, which are in 1.0 - will remain forever in each next update - so only expansions ae possible after Release.
So you can be sure, tht all Plugins, which are installed by TICS - remain upward-compatible for the future.
Please tell me, if you'd see any bug in RC1 - but it was good tested and has almost no differences to Beta2 in the MainStream (but faster &smaller) - so it's not necessary to wait too long until RC1 will be 1st Release.
Please report anything, what you see in trial.
Thanx & have fun with making your Plugins installable for all Titanium-Themes
Micha
BTW: If you need a further example how to use TICS RC1 - it's used inside this .cab :
http://forum.xda-developers.com/showpost.php?p=4683099&postcount=298
and still runs fine - otherwise just write it here (no more by PN please )
Micha
Thanx for the hint, Tb1502!
I wrote in Post #1 that:
CESetup.DLL = "setup.dll" should be the .inf-Entry for a Plugin, but it should be of course without the . :
CESetupDLL = "setup.dll"
in .inf to use the new setup.dll
Thanx again & Sorry
Micha
OK - after Feedback: RC1 is also first Release - all works fine.
I won't make a new Thread at the moment for the Release - think I will make this Thread after I have the most implemented "C" and "S" of TICS for the users.
I have added a short description to Post #2, how to change your Plugin from ATPluginInstaller to TICS_Installer. A few simple steps - takes only some minutes:
1. use the attached install.mscr and uninstall.mscr from Post #1 ("SetupDll_and_Mort.zip")
2. In install.mscr only put these Lines:
Code:
instPath = SystemPath( "ScriptPath" )
plgPath=instPath\"test.plg"
callParameter="-addchange -plg:"&plgPath&" -cpr:currentPortrait"
RunWait(instPath\"TICS_installer.exe", callParameter)
callParameter="-addchange -plg:"&plgPath&" -cpr:currentLandscape"
RunWait(instPath\"TICS_installer.exe", callParameter)
RunWait(instPath\"CHomeRefresh.exe","")
If you use another .plg - not default.plg - just change second line to the name of the .plg you want to install with .cab
3. In uninstall.mscr only put these Lines:
Code:
instPath = SystemPath( "ScriptPath" )
RunWait(instPath\"TICS_installer.exe", "-delete -plugin:[I]YourPlugin[/I] -cpr:currentLandscape")
RunWait(instPath\"TICS_installer.exe", "-delete -plugin:[I]YourPlugin[/I] -cpr:currentPortrait")
RunWait(instPath\"CHomeRefresh.exe","")
Only replace "YourPlugin" with the name of yourPlugin - e.g. "CNitrogen"
4. Put this install.mscr, uninstall.mscr, TICS_installer.exe, setup.dll, MortScript.exe (don't forget! use Version, you want) and CHomeRefresh.exe to your Main Directory of your Plugin. Delete "ATPluginInstaller.exe" and "CEsetupDLL.dll"
5. Add the new Files to your .inf-File
6. Change in [DefaultInstall]-Section of your inf the Line to: CESetupDLL = "setup.dll"
7. Cab your Plugin - ready - now your Plugin works with TICS - and therefore for all Themes
OK - the Tests were all ok - some Plugins use it meandwhile - and hey.. you are using Beta2 - But RC1 is the new one!
It's running faster and is smaller - I think I will make sooner a Release Thread,than I wanted
But in Release - it will be the same as RC1 - so please use this (Just compare the changelog - the main functions are the same, but there's some differences between older Beta2 and RC1 - for special use - if you need it)
And Beta2 is good tested, but RC1 is better tested, because it's already running in some Pugins
Greetings
Micha

[update 2009/11/19][FAQ] Porting new HTC packages from Mega to Iolite ROM.

update 2009/11/19 - Russian, as well as Italian, French, Dutch, German, Spanish, Danish, SVE, Norway, Portugal, Euro and Asian
Mega ROMs, release versions, are here. Just get nbh-file from install temp folder and extract packages.
update 2009/11/17 - How to fix Iolite Wheel
update 2009/11/16 - EzInput 2.1 My Words fix added, read 2nd post.
------------------
Hi, I want to start this new thread to share some information with other Iolite ROM developers.
I hope you will continue this list and we will get fully working WM65 ROMs with latest HTC gui for Iolite finally.
=)
CommManager
Package CommManager_2_9_F_1, file app.reg
1. bluetooth fix. use this value:
[HKEY_LOCAL_MACHINE\Software\HTC\CommManager]
"BluetoothPlatformType"=dword:00000000
2. wi-fi fix. use this value:
[HKEY_LOCAL_MACHINE\Software\HTC\CommManager\WLAN]
"DeviceName"="{98C5250D-C29A-4985-AE5F-AFE5367E5006}\\TNETW12511"
Vibration in new PhoneCanvas and EzInput 2.1
Shared_Modules_1_01_19143331_01, file app.reg
use this value:
[HKEY_LOCAL_MACHINE\Software\OEM\KeyState]
"UseService"=dword:00000001
BackLight
Problem - backlight settings doesn't work if you use new HTCUtil.dll
use BackLight.dll from Mega OemDrivers, it works fine with Mega HTCUtil_4_8_0_0.
EzInput and keyboard/language selection menu
1. use BioTouch.dll from Mega OemDrivers.
2. use touch.dll from Mega OemDrivers.
3. add these values to you rgu file in OemDrivers (check rgu file in Mega OemDrivers)
Code:
[HKEY_LOCAL_MACHINE\HARDWARE\DEVICEMAP\TOUCH]
"MaxCalError"=dword:8
"CalibrationData"="491,508 787,177 788,839 191,836 190,174"
"AlignScreenNeeded"=dword:1 ;Set 0 to disable align screen page, set 1 to enable
"PassCalibration"=dword:00000000 ; Driver would set 1 if pass calibration"TouchDrawPri"=dword:0000006D
"TouchGLODebug"=dword:00000000
"SIPExpand"=dword:00000005
"OKWidth"=dword:00000019
"OKExpand"=dword:00000023
"PanGestureTimeOut"=dword:00000384
"PanGestureDistanceThreshold"=dword:0000000F
"FlickGestureDistanceThreshold"=dword:00000008
"PanGestureLinePixelCount"=dword:00000015
"VelocityFactor"=dword:0000000A
"FollowFinger"=dword:00000001
"ReportPointPeriod"=dword:00000320
"TouchDrawPeriod"=dword:00000032
"EnlargeScrollAnimateTime"=dword:0000000A
"EnlargeScrollHeight"=dword:00000020
"EnlargeScrollWidth"=dword:0000002B
"TouchDrawPri"=dword:0000006d
"MENUExpand"=dword:0000000F
"MENUHeight"=dword:0000001A
"ScrollBarExpandLeft"=dword:00000000
"ScrollBarExpandRight"=dword:00000000
"ScrollBarExpandDown"=dword:00000000
"ThumbExpandHeight"=dword:00000000
"GestureEnable"=dword:0000004A
"SIPMenuWidth"=dword:00000014
"HorizontalPanel"=dword:00000000
"SelectIndHeight"=dword:00000032
smarttouch - cool finger-friendly scrollbars
WARNING: this will break Iolite wheel.
1. add smarttouch.dll from Mega to OemDrivers
2. *thumb*.png from Mega to OemDrivers
3. add these values to you rgu file in OemDrivers (check rgu file in Mega OemDrivers)
Code:
[HKEY_LOCAL_MACHINE\System\GWE]
"cxHScr"=dword:00000000
"cyVScr"=dword:00000000
[HKEY_LOCAL_MACHINE\Drivers\TouchPanel]
"PressureThreshold"=dword:2710 ; initial value is 10000.
[HKEY_LOCAL_MACHINE\Services\SmartTouch]
"Prefix"="SMT"
"Dll"="smarttouch.dll"
"Index"=dword:1
"Order"=dword:9
[HKEY_LOCAL_MACHINE\Software\HTC\SmartTouch]
"WheelCount"=dword:00000002
"OnlySupportRegisterApp"=dword:00000001
[HKEY_LOCAL_MACHINE\Software\HTC\SmartTouch\Excel Mobile]
"WheelCount"=dword:0000000c
"ClassName"="BOOKWIN"
"EnableOneMessage"=dword:00000001
[HKEY_LOCAL_MACHINE\Software\HTC\SmartTouch\Notes]
"WheelCount"=dword:0000000c
"ClassName"="Worker"
"EnableOneMessage"=dword:00000001
[HKEY_LOCAL_MACHINE\Software\HTC\SmartTouch\Outlook Email]
"WheelCount"=dword:0000000c
"ClassName"="Inbox.MainWnd"
"EnableOneMessage"=dword:00000001
[HKEY_LOCAL_MACHINE\Software\HTC\SmartTouch\Word Mobile]
"WheelCount"=dword:0000000c
"ClassName"="WordPad"
"EnableOneMessage"=dword:00000001
[HKEY_LOCAL_MACHINE\Software\HTC\SmartTouch\Internet Explore]
"ClassName"="IEMobile"
"WheelCount"=dword:0000000c
"EnableOneMessage"=dword:00000000
Wheel
If you use mega smarttouch tweak you will lose Iolite wheel.
You need to use SmartTouch_1_1_32635_2 from Iolite packages if you want to have working wheel.
LongPressEndKey - lock device
Use LongPressEndKey_1_2_35861_5 from Iolite packages, it works fine.
Long_Press_End_Key_1_5_19182121_00 from Mega depends on keyboard driver and dosen't work on Iolite.
Album 3
Thanx to dancer_69:
HTC Album will work if you replace the files ha_skin_l.xml and ha_skin_p.xml in .........\OEM\Iolite_MEGA\0409\ExtraFilesPkg with these from manila album package(in building these from the above folder which are for iolite's album version ovewrite these from mega)
Or you can simple delete these files from ExtraFilesPkg.
Camera - Record video with audio fix
Package Camera_6_29_19183128_01, file app.reg
Code:
[HKEY_LOCAL_MACHINE\SOFTWARE\HTC\Camera\Common]
"EnableAudioAAC"=dword:00000000
EzInput 2.1 My Words
If your EzInput 2.1 cannot remember custom words after soft reset, use IME_Engine_Western_2_1_19171325_00
in place of mega version IME_Engine_Western_2_1_19191429_00.
read more in this thread.
Download working IME Engine here.
Download working eT9MyWords.exe - words editor here.
Weather on the Home tab (under the clock)
wg5566 said:
The weather update function on home screen relies on location service. So first we need to enable the location service on the phone. Second, the operator and the TBS (Terminal Base Station, means the devices in the ntenna tower that connect the phone to the network) must support this service too. Most operators in my area support this, but not all TBS support the location service.
To verify this, go to google maps, with GPS off, see whether or not the phone can detect the correct current location.
Click to expand...
Click to collapse
Great thread. Sticky this.
Hey, serfer222...
I'll be posting my registry tweaks here aswell and I'll post a screenshot (and a brief description of which of those are from Mega) of all the drivers I have included in the OEMDrivers folder...
I'll keep editing this post...
I'm kind of in a hurry now, but I'll be constantly updating it...
Any tips, tricks or tweaks I can think of that I used, I'll explain them here...
Oh, but the way:
Kind Moderator, please sticky this thread... This is a great idea from serfer222.
Thanks in advance.
Best regards,
update 2009/11/17 - How to fix Iolite Wheel
update 2009/11/16 - EzInput 2.1 My Words fix added, read 2nd post.
EzInput and keyboard/language selection menu
1. use BioTouch.dll from Mega OemDrivers.
2. use touch.dll from Mega OemDrivers.
3. add these values to you rgu file in OemDrivers (check rgu file in Mega OemDrivers)
Code:
[HKEY_LOCAL_MACHINE\HARDWARE\DEVICEMAP\TOUCH]
"MaxCalError"=dword:8
"CalibrationData"="491,508 787,177 788,839 191,836 190,174"
"AlignScreenNeeded"=dword:1 ;Set 0 to disable align screen page, set 1 to enable
"PassCalibration"=dword:00000000 ; Driver would set 1 if pass calibration"TouchDrawPri"=dword:0000006D
"TouchGLODebug"=dword:00000000
"SIPExpand"=dword:00000005
"OKWidth"=dword:00000019
"OKExpand"=dword:00000023
"PanGestureTimeOut"=dword:00000384
"PanGestureDistanceThreshold"=dword:0000000F
"FlickGestureDistanceThreshold"=dword:00000008
"PanGestureLinePixelCount"=dword:00000015
"VelocityFactor"=dword:0000000A
"FollowFinger"=dword:00000001
"ReportPointPeriod"=dword:00000320
"TouchDrawPeriod"=dword:00000032
"EnlargeScrollAnimateTime"=dword:0000000A
"EnlargeScrollHeight"=dword:00000020
"EnlargeScrollWidth"=dword:0000002B
"TouchDrawPri"=dword:0000006d
"MENUExpand"=dword:0000000F
"MENUHeight"=dword:0000001A
"ScrollBarExpandLeft"=dword:00000000
"ScrollBarExpandRight"=dword:00000000
"ScrollBarExpandDown"=dword:00000000
"ThumbExpandHeight"=dword:00000000
"GestureEnable"=dword:0000004A
"SIPMenuWidth"=dword:00000014
"HorizontalPanel"=dword:00000000
"SelectIndHeight"=dword:00000032
Dear sir
Do you have touch.dll, biotouch.dll and biotouch.exe of mega packages!!
thx...
get it here
Can you display what smarttouch is?
I have no idea what it is and how it looks like.
I cannot post screenshot now, I removed this feature from my rom - it breaks wheel on my Iolite.
Install it and try to use scrollbar in explorer or other program.
You will see big animated gripper.
Download link
Pal,
What is the component that is responsible to show the black HTC black notification bar when pressing on top bar, that contain volume icon and battery icon, and others!
thx
Notification_Enhancement_3_0_1919_1125
Will post soon
Sorry for my absence, people.
I have been involved in a motorcycle accident and have been at the hospital 'till this day, so I haven't come around here to post anything.
I'll be posting my tips, tweaks and tricks here as soon as possible, which is today.
I'm glad to see the Moderators/Administrators have made this thread a sticky.
Best regards,
i will try it in the emulator later! =)
My tips, tweaks and tricks as promised
As promised, here is my list of tips, tweaks and tricks.
Almost every tweak I made are as follows:
Code:
[HKEY_LOCAL_MACHINE\System\GWE\Touch\Filter]
"MinimumTapTime"=dword:00000000
[HKEY_LOCAL_MACHINE\System\CurrentControlSet\GPS Intermediate Driver\Drivers]
"SleepOnNoData"=dword:00000064
"OutputBufferSize"=dword:00000100
"InputBufferSize"=dword:00000100
"RetryWaitOnError"=dword:000003e8
"CurrentDriver"="GPSOneDevice"
[HKEY_LOCAL_MACHINE\System\CurrentControlSet\GPS Intermediate Driver\Drivers\GPSOneDevice]
"PollInterval"=dword:00000064
"Version"=dword:00000002
"CommPort"="GPS0:"
"DriverName"="GPS Device Driver"
"FriendlyName"="QualComm GpsOne Card, version 0.0"
"InterfaceType"="POLL"
[HKEY_LOCAL_MACHINE\System\CurrentControlSet\GPS Intermediate Driver\Drivers\GPSOnePort]
"CommPort"="GPD10:"
"FriendlyName"="QualComm GpsOne Card, version 0.0"
"InterfaceType"="COMM"
[HKEY_LOCAL_MACHINE\System\CurrentControlSet\GPS Intermediate Driver\Multiplexer]
"MaxBufferSize"=dword:00000100
"DriverInterface"="COM4:"
[HKEY_LOCAL_MACHINE\System\CurrentControlSet\GPS Intermediate Driver\Multiplexer\ActiveDevice]
"Index"=dword:00000004
"Prefix"="COM"
"Context"=dword:12344160
"Flags"=dword:00000002
"Keep"=dword:00000001
"Dll"="GPSID_HTC.dll"
[HKEY_LOCAL_MACHINE\Services\NaviService]
"Context"=dword:00000000
"Order"=dword:00000010
"Flags"=dword:00000004
"Description"="NaviService"
"DisplayName"="NaviService"
"Dll"="NaviService.dll"
"Keep"=dword:00000001
"Prefix"="NPS"
"Index"=dword:00000000
[HKEY_LOCAL_MACHINE\System\GDI\Rotation]
"HideOrientationUI"=dword:00000000
[HKEY_LOCAL_MACHINE\Software\Microsoft\Shell\Keys]
[HKEY_LOCAL_MACHINE\Software\Microsoft\Shell\Keys\40C1]
"BtnWnd"=dword:00000000
@="\"[URL="file://windows//TaskMgr.lnk/"]\\Windows\\TaskMgr.lnk\[/URL]""
"Flags"=dword:00000000
"Icon"="[URL="file://windows//HTCFootprint.exe"]\\windows\\HTCFootprint.exe[/URL], 0"
"Name"="Footprint"
"ResetCmd"="\"[URL="file://windows//HTCFootprint.exe/"]\\windows\\HTCFootprint.exe\[/URL]""
"WndCls"=""
[HKEY_LOCAL_MACHINE\Software\Microsoft\Shell\Keys\40C2]
"BtnWnd"=dword:00000000
@="\"[URL="file://windows//Navipanel.lnk/"]\\Windows\\Navipanel.lnk\[/URL]""
"Flags"=dword:00000000
"Icon"="[URL="file://windows//QuickGPS.exe"]\\windows\\QuickGPS.exe[/URL], 0"
"Name"="Navigation"
"ResetCmd"="\"[URL="file://windows//NaviPanel.exe/"]\\windows\\NaviPanel.exe\[/URL]""
"WndCls"=""
[HKEY_LOCAL_MACHINE\Software\Microsoft\Shell\Keys\40C6]
"BtnWnd"=dword:00000000
@="\"[URL="file://windows//CommManager.exe/"]\\Windows\\CommManager.exe\[/URL]""
"Flags"=dword:00000000
"Icon"="[URL="file://windows//CVDSetting.exe"]\\windows\\CVDSetting.exe[/URL], 0"
"Name"="green Horn (long pressed)"
"ResetCmd"="\"[URL="file://windows//CVDSetting.exe/"]\\Windows\\CVDSetting.exe\[/URL]""
"WndCls"=""
[HKEY_LOCAL_MACHINE\Services\App]
"Context"=dword:00000000
"Description"="App Service"
"DisplayName"="App Service"
"Dll"="App_Service.dll"
"Index"=dword:00000000
"InitDelay"=dword:00004e20
"Keep"=dword:00000001
"Order"=dword:00000008
"Prefix"="APP"
[HKEY_CLASSES_ROOT\.rm]
@="rmfile"
"Content Type"="video/real"
[HKEY_CLASSES_ROOT\.rmvb]
@="rmfile"
"Content Type"="video/real"
[HKEY_CLASSES_ROOT\rmfile]
"EditFlags"=dword:00010000
[HKEY_CLASSES_ROOT\rmfile\Shell\Open\Command]
@="wmplayer.exe \"%1\""
[HKEY_CLASSES_ROOT\rmfile\DefaultIcon]
@="wmplayer.exe,-2001"
[HKEY_LOCAL_MACHINE\Software\Microsoft\Multimedia\WMPlayer\Extensions\.rm]
"Permissions"=dword:0000001F
"Runtime"=dword:00000007
[HKEY_LOCAL_MACHINE\Software\Microsoft\Multimedia\WMPlayer\Extensions\.rmvb]
"Permissions"=dword:0000001F
"Runtime"=dword:00000007
The packages I included have been these:
You should have these files under OEMDrivers:
You should also do this:
1. - Empty and LEAVE only the .dsm and .rgu on these folders:
ExtendedPkg;
ExtraFilesPkg;
FotaTestPkg;
2. - Replace initflashfiles.dat with the one from Mega in the folder OEM_Lang_XXXX
3. - Make sure you have these files under OperatorPkg folder:
There are some minor things you have to do, but it's too long of a story to be explaining them all here. Basically replace as much Iolite stuff as you can with Mega and open .rgu files with the notepad and edit away.
Hope this helps out some chefs.
I had to divide the post into two, 'cause it was too long... Check next post too.
serfer222, wanna give a combined ROM a go?
Best regards,
Continuation
Continuation of previous post:
Code:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MediaPlayer\MLS\Extensions]
"rm"="video"
"rmvb"="video"
[HKEY_CLASSES_ROOT\Filter\{CFA7C1EC-BF35-4a48-8533-08046F18008D}]
@="Real Parser Filter"
[HKEY_CLASSES_ROOT\Media Type\Extensions\.rm]
"Source Filter"="{CFA7C1EC-BF35-4a48-8533-08046F18008D}"
[HKEY_CLASSES_ROOT\Media Type\Extensions\.rmvb]
"Source Filter"="{CFA7C1EC-BF35-4a48-8533-08046F18008D}"
[HKEY_CLASSES_ROOT\CLSID\{CFA7C1EC-BF35-4a48-8533-08046F18008D}]
@="Real Parser Filter"
"Merit"="8000001"
[HKEY_CLASSES_ROOT\CLSID\{CFA7C1EC-BF35-4a48-8533-08046F18008D}\InprocServer32]
@="[URL="file://windows//RealParserFilter.dll"]\\Windows\\RealParserFilter.dll[/URL]"
"ThreadingModel"="Both"
[HKEY_CLASSES_ROOT\CLSID\{CFA7C1EC-BF35-4a48-8533-08046F18008D}\Pins]
[HKEY_CLASSES_ROOT\CLSID\{CFA7C1EC-BF35-4a48-8533-08046F18008D}\Pins\Audio Output]
"Direction"="1"
"AllowedZero"="1"
[HKEY_CLASSES_ROOT\CLSID\{CFA7C1EC-BF35-4a48-8533-08046F18008D}\Pins\Audio Output\Types]
[HKEY_CLASSES_ROOT\CLSID\{CFA7C1EC-BF35-4a48-8533-08046F18008D}\Pins\Audio Output\Types\{73647561-0000-0010-8000-00AA00389B71}]
[HKEY_CLASSES_ROOT\CLSID\{CFA7C1EC-BF35-4a48-8533-08046F18008D}\Pins\Audio Output\Types\{73647561-0000-0010-8000-00AA00389B71}\{636F6F6B-0000-0010-8000-00AA00389B71}]
[HKEY_CLASSES_ROOT\CLSID\{CFA7C1EC-BF35-4a48-8533-08046F18008D}\Pins\Audio Output\Types\{73647561-0000-0010-8000-00AA00389B71}\{72616163-0000-0010-8000-00AA00389B71}]
[HKEY_CLASSES_ROOT\CLSID\{CFA7C1EC-BF35-4a48-8533-08046F18008D}\Pins\Video Output]
"Direction"="1"
"AllowedZero"="1"
[HKEY_CLASSES_ROOT\CLSID\{CFA7C1EC-BF35-4a48-8533-08046F18008D}\Pins\Video Output\Types]
[HKEY_CLASSES_ROOT\CLSID\{CFA7C1EC-BF35-4a48-8533-08046F18008D}\Pins\Video Output\Types\{73646976-0000-0010-8000-00AA00389B71}]
[HKEY_CLASSES_ROOT\CLSID\{CFA7C1EC-BF35-4a48-8533-08046F18008D}\Pins\Video Output\Types\{73646976-0000-0010-8000-00AA00389B71}\{52563330-0000-0010-8000-00AA00389B71}]
[HKEY_CLASSES_ROOT\CLSID\{CFA7C1EC-BF35-4a48-8533-08046F18008D}\Pins\Video Output\Types\{73646976-0000-0010-8000-00AA00389B71}\{52563430-0000-0010-8000-00AA00389B71}]
[HKEY_CLASSES_ROOT\CLSID\{CFA7C1EC-BF35-4a48-8533-08046F18008D}\Pins\Video Output\Types\{73646976-0000-0010-8000-00AA00389B71}\{54524F4D-0000-0010-8000-00AA00389B71}]
[HKEY_CLASSES_ROOT\Filter\{cdf5d7d2-3884-4c88-b555-fe78edc0fd3d}]
@="Real Audio Decoder Filter"
[HKEY_CLASSES_ROOT\CLSID\{cdf5d7d2-3884-4c88-b555-fe78edc0fd3d}]
@="Real Audio Decoder Filter"
"Merit"=dword:00800001
[HKEY_CLASSES_ROOT\CLSID\{cdf5d7d2-3884-4c88-b555-fe78edc0fd3d}\InprocServer32]
@="[URL="file://windows//RADecoderFilter.dll"]\\Windows\\RADecoderFilter.dll[/URL]"
"ThreadingModel"="Both"
[HKEY_CLASSES_ROOT\CLSID\{cdf5d7d2-3884-4c88-b555-fe78edc0fd3d}\Pins]
[HKEY_CLASSES_ROOT\CLSID\{cdf5d7d2-3884-4c88-b555-fe78edc0fd3d}\Pins\Output]
"Direction" = dword:00000001
"IsRendered" = dword:00000000
"AllowedZero" = dword:00000000
"AllowedMany" = dword:00000000
[HKEY_CLASSES_ROOT\CLSID\{cdf5d7d2-3884-4c88-b555-fe78edc0fd3d}\Pins\Output\Types]
[HKEY_CLASSES_ROOT\CLSID\{cdf5d7d2-3884-4c88-b555-fe78edc0fd3d}\Pins\Output\Types\{73647561-0000-0010-8000-00AA00389B71}]
[HKEY_CLASSES_ROOT\CLSID\{cdf5d7d2-3884-4c88-b555-fe78edc0fd3d}\Pins\Output\Types\{73647561-0000-0010-8000-00AA00389B71}\{00000001-0000-0010-8000-00AA00389B71}]
[HKEY_CLASSES_ROOT\CLSID\{cdf5d7d2-3884-4c88-b555-fe78edc0fd3d}\Pins\Input]
"Direction" = dword:00000000
"IsRendered" = dword:00000000
"AllowedZero" = dword:00000000
"AllowedMany" = dword:00000000
[HKEY_CLASSES_ROOT\CLSID\{cdf5d7d2-3884-4c88-b555-fe78edc0fd3d}\Pins\Input\Types]
[HKEY_CLASSES_ROOT\CLSID\{cdf5d7d2-3884-4c88-b555-fe78edc0fd3d}\Pins\Input\Types\{73647561-0000-0010-8000-00AA00389B71}]
[HKEY_CLASSES_ROOT\CLSID\{cdf5d7d2-3884-4c88-b555-fe78edc0fd3d}\Pins\Input\Types\{73647561-0000-0010-8000-00AA00389B71}\{636F6F6B-0000-0010-8000-00AA00389B71}]
[HKEY_CLASSES_ROOT\CLSID\{cdf5d7d2-3884-4c88-b555-fe78edc0fd3d}\Pins\Input\Types\{73647561-0000-0010-8000-00AA00389B71}\{72616163-0000-0010-8000-00AA00389B71}]
[HKEY_CLASSES_ROOT\Filter\{519143EC-2CBE-4d0d-920F-B5B15714B5AC}]
@="Real Video Decoder Filter"
[HKEY_CLASSES_ROOT\CLSID\{519143EC-2CBE-4d0d-920F-B5B15714B5AC}]
@="Real Video Decoder Filter"
"Merit"=dword:00800001
[HKEY_CLASSES_ROOT\CLSID\{519143EC-2CBE-4d0d-920F-B5B15714B5AC}\InprocServer32]
@="[URL="file://windows//RVDecoderFilter.dll"]\\Windows\\RVDecoderFilter.dll[/URL]"
"ThreadingModel"="Both"
[HKEY_CLASSES_ROOT\CLSID\{519143EC-2CBE-4d0d-920F-B5B15714B5AC}\Pins]
[HKEY_CLASSES_ROOT\CLSID\{519143EC-2CBE-4d0d-920F-B5B15714B5AC}\Pins\Output]
"Direction" = dword:00000001
"IsRendered" = dword:00000000
"AllowedZero" = dword:00000000
"AllowedMany" = dword:00000000
[HKEY_CLASSES_ROOT\CLSID\{519143EC-2CBE-4d0d-920F-B5B15714B5AC}\Pins\Output\Types]
[HKEY_CLASSES_ROOT\CLSID\{519143EC-2CBE-4d0d-920F-B5B15714B5AC}\Pins\Output\Types\{73646976-0000-0010-8000-00AA00389B71}]
[HKEY_CLASSES_ROOT\CLSID\{519143EC-2CBE-4d0d-920F-B5B15714B5AC}\Pins\Output\Types\{73646976-0000-0010-8000-00AA00389B71}\{31313259-0000-0010-8000-00AA00389B71}]
[HKEY_CLASSES_ROOT\CLSID\{519143EC-2CBE-4d0d-920F-B5B15714B5AC}\Pins\Input]
"Direction" = dword:00000000
"IsRendered" = dword:00000000
"AllowedZero" = dword:00000000
"AllowedMany" = dword:00000000
[HKEY_CLASSES_ROOT\CLSID\{519143EC-2CBE-4d0d-920F-B5B15714B5AC}\Pins\Input\Types]
[HKEY_CLASSES_ROOT\CLSID\{519143EC-2CBE-4d0d-920F-B5B15714B5AC}\Pins\Input\Types\{73646976-0000-0010-8000-00AA00389B71}]
[HKEY_CLASSES_ROOT\CLSID\{519143EC-2CBE-4d0d-920F-B5B15714B5AC}\Pins\Input\Types\{73646976-0000-0010-8000-00AA00389B71}\{52563330-0000-0010-8000-00AA00389B71}]
[HKEY_CLASSES_ROOT\CLSID\{519143EC-2CBE-4d0d-920F-B5B15714B5AC}\Pins\Input\Types\{73646976-0000-0010-8000-00AA00389B71}\{52563430-0000-0010-8000-00AA00389B71}]
[HKEY_CLASSES_ROOT\CLSID\{519143EC-2CBE-4d0d-920F-B5B15714B5AC}\Pins\Input\Types\{73646976-0000-0010-8000-00AA00389B71}\{54524F4D-0000-0010-8000-00AA00389B71}]
[HKEY_CLASSES_ROOT\CLSID\{F362189D-C4BB-408b-B5D7-80D0F21638E1}]
"Merit"=dword:00801000
@="ArcSoft Video Renderer"
[HKEY_CLASSES_ROOT\CLSID\{F362189D-C4BB-408b-B5D7-80D0F21638E1}\Pins\Input]
"IsRendered"=dword:00000001
[HKEY_CLASSES_ROOT\CLSID\{F362189D-C4BB-408b-B5D7-80D0F21638E1}\Pins\Input\Types\{73646976-0000-0010-8000-00AA00389B71}\{00000000-0000-0000-0000-000000000000}]
[HKEY_CLASSES_ROOT\CLSID\{F362189D-C4BB-408b-B5D7-80D0F21638E1}\InprocServer32]
"ThreadingModel"="Both"
@="amc_video_renderer.ax"
[HKEY_CLASSES_ROOT\Filter\{F362189D-C4BB-408b-B5D7-80D0F21638E1}]
@="ArcSoft Video Renderer"
[HKEY_LOCAL_MACHINE\SOFTWARE\ArcSoft\DirectShow\Display]
"DisplayMode"=dword:00000001
"FullscreenAngle"=dword:0000005A
[HKEY_LOCAL_MACHINE\Software\HTC\CommManager\WLAN]
"DeviceName"="{98C5250D-C29A-4985-AE5F-AFE5367E5006}\\TNETW12511"
[HKEY_LOCAL_MACHINE\Software\HTC\CommManager]
"BluetoothPlatformType"=dword:00000000
[HKEY_LOCAL_MACHINE\Software\HTC\HTCMenus]
"EnableManilaCheck"=dword:00000000
[HKEY_LOCAL_MACHINE\Software\OEM\KeyState]
"UseService"=dword:00000001
[HKEY_LOCAL_MACHINE\System\CurrentControlSet\GPS Intermediate Driver\Drivers\GPSOneEmulate]
"Filex"="\windows\GPSOneFileSimulation.txt"
"FriendlyName"="QualComm GpsOne File, version 0.0"
"InterfaceType"="File"
[HKEY_LOCAL_MACHINE\Software\Microsoft\Color]
"4"=hex:FF,FF,FF,00
"5"=hex:00,00,00,00
"6"=hex:2C,2C,2C,00
"8"=hex:00,00,00,00
"9"=hex:FF,FF,FF,00
"13"=hex:80,80,80,00
"14"=hex:80,80,80,00
"25"=hex:80,80,80,00
"26"=hex:80,80,80,00
"33"=hex:2C,2C,2C,00
"34"=hex:03,4F,92,00
"35"=hex:FF,FF,FF,00
"39"=hex:FF,FF,FF,00
[HKEY_CURRENT_USER\Software\Microsoft\Today]
"DPI"=dword:000000c0
[HKEY_CURRENT_USER\Software\Microsoft\Today\HTC Black.tsk]
"Color_Highlight"=hex:03,4F,92,00
"Color_HighlightText"=hex:FF,FF,FF,00
"Color_SoftkeyFlat"=hex:01,0D,15,00
"Color_SoftkeyFlatCenter"=hex:01,0D,15,00
"Color_TitleFlat"=hex:01,0D,15,00
"Color_TitleFlatCenter"=hex:01,0D,15,00
"Color_CommandBar"=hex:01,0D,15,00
"Color_CommandBarText"=hex:FF,FF,FF,00
"Color_CommandBarText_Highlight"=hex:FF,FF,FF,00
"Color_NavBarText_Highlight"=hex:FF,FF,FF,00
"Color_CommandBar_Highlight"=hex:01,0D,15,00
"Color_NavBar_Highlight"=hex:01,0D,15,00
"Color_SoftkeyFlatCenter_Highlight"0x0000000301,0D,15,00
"Color_SoftkeyFlat_Highlight"=hex:01,0D,15,00
"Color_CommandBarSip_Highlight"=hex:01,0D,15,00
"Color_CaptionFlat"=hex:01,0D,15,00
"Color_SoftkeyBtnFace"=hex:01,0D,15,00
[HKEY_LOCAL_MACHINE\Security\Policies\Policies]
"0000101a"=dword:00000001
[HKEY_CURRENT_USER\ControlPanel\Sip]
"SuggAutoCorr"=dword:00000000
"SuggWords"=dword:00000000
[HKEY_CURRENT_USER\ControlPanel\Volume]
“Mute”=dword:00000007
[HKEY_CURRENT_USER\ControlPanel\Sounds\RingTone0]
“Script”=”av0pw3r”
[HKEY_LOCAL_MACHINE\Software\HTC\Camera\P10]
“Enable”=dword:00000001
[HKEY_LOCAL_MACHINE\Software\HTC\Camera\P6]
“Enable”=dword:00000001
[HKEY_LOCAL_MACHINE\Software\HTC\Camera\P8]
“Enable”=dword:00000001
[HKEY_LOCAL_MACHINE\Software\HTC\Camera\P9]
“Enable”=dword:00000001
[HKEY_CURRENT_USER\ControlPanel\SoundCategories\InCall]
“InitVol”=dword:00000006
[HKEY_CURRENT_USER\ControlPanel\Volume]
“Ringer”=dword:FFFFFFFF
“Volume”=dword:FFFFFFFF
[HKEY_LOCAL_MACHINE\Software\HTC\VolumeOverlay]
“Ringer”=dword:FFFFFFFF
[HKEY_CURRENT_USER\ControlPanel\Notifications\ShellOverrides]
“SavedInCallVolume”=dword:FFFFFFFF
“SavedRingerVolume”=dword:FFFFFFFF
“SavedVolume”=dword:FFFFFFFF
“Mode”=dword:00000000
[HKEY_LOCAL_MACHINE\System\ErrorReporting\DumpSettings]
“DumpEnabled”=dword:00000000
[HKEY_LOCAL_MACHINE\ControlPanel\Error Reporting]
“Hide”=dword:00000001
Best regards,
Continuation Part II
This also didn't fit on previous post:
Code:
[HKEY_LOCAL_MACHINE\ControlPanel\Customer Feedback]
“Redirect”=”ceipui.exe”
“Group”=dword:00000001
“Hide”=dword:00000001
[HKEY_LOCAL_MACHINE\Software\Arcsoft\ArcSoft MMS UA\Config\UI\SizeLimit]
“Wap2SendLimit2?=dword:00096000
“Wap2SendLimit1?=dword:00064000
“Wap2RecvLimit3?=dword:00096000
“Wap2RecvLimit2?=dword:00096000
“Wap2RecvLimit1?=dword:00096000
“Wap1SendLimit3?=dword:002dff00
“Wap1SendLimit2?=dword:00096000
“Wap1SendLimit1?=dword:00064000
“Wap1RecvLimit3?=dword:00096000
“Wap1RecvLimit2?=dword:00096000
“Wap1RecvLimit1?=dword:00096000
“Wap2SendLimit3?=dword:002dff00
“Wap2SendCount”=dword:00000003
“Wap2RecvCount”=dword:00000003
“Wap1SendCount”=dword:00000003
“Wap1RecvCount”=dword:00000003
[HKEY_LOCAL_MACHINE\Software\HTC\AUDIOGAIN]
“AUDIO_DEBUG_FLAG”=dword:00000040
[HKEY_LOCAL_MACHINE\Drivers\BuiltIn\WaveDev]
“VocRecPath”=dword:00000002
[HKEY_LOCAL_MACHINE\System\AudioRecording]
“Enabled”=dword:00000001
[HKEY_LOCAL_MACHINE\Software\Microsoft\Voice]
“EnableCallRecordMenuItem”=dword:00000001
“AllowInCallRecording”=dword:00000001
[HKEY_CURRENT_USER\ControlPanel\Sounds\TTSAnnounce]
“Category”=”InCallFeedback”
[HKEY_LOCAL_MACHINE\SOFTWARE\HTC\AUDIOGAIN]
"EAC_GAIN_EMBEDDED"=dword:00000077
"EAC_GAIN_CARKIT"=dword:00000077
"EAC_GAIN_HEADSET"=dword:00000077
Best regards,
billabongstaff,
sorry, but I didn't get it.
how all your posts are connected to this thread?
what problems your "tweaks and tricks" should fix?
I see you use RealParserFilter.dll to play .rm and .rmvb files.
Why do you post it there? Mega ROM doesn't have RealParserFilter.dll.
There are syntax error in your reg files -
Code:
[HKEY_LOCAL_MACHINE\Software\Arcsoft\ArcSoft MMS UA\Config\UI\SizeLimit]
“Wap2SendLimit2?=dword:00096000
“Wap2SendLimit1?=dword:00064000
“Wap2RecvLimit3?=dword:00096000
these lines will not work. there are wrong characters.
Are you kidding?...
Ungrateful
serfer222 said:
billabongstaff,
sorry, but I didn't get it.
how all your posts are connected to this thread?
what problems your "tweaks and tricks" should fix?
I see you use RealParserFilter.dll to play .rm and .rmvb files.
Why do you post it there? Mega ROM doesn't have RealParserFilter.dll.
There are syntax error in your reg files -
Code:
[HKEY_LOCAL_MACHINE\Software\Arcsoft\ArcSoft MMS UA\Config\UI\SizeLimit]
“Wap2SendLimit2?=dword:00096000
“Wap2SendLimit1?=dword:00064000
“Wap2RecvLimit3?=dword:00096000
these lines will not work. there are wrong characters.
Are you kidding?...
Click to expand...
Click to collapse
Am I kidding?
Well, that certaintly is ungrateful from your behalf.
I added every registry tweak I had, and as you can see, I have some Packages of my own, so files like RealParserFilter.dll and others are there.
To know what do all the tweaks do, just browse the Web a little bit.
Regarding the syntax error, it's not my fault, it's written with " and not with ? on my reg file, I don't know what happened.
Sorry, but you didn't shared anything helpful. You uploaded huge screenshots and regfiles full of errors.
You didn't upload real files, you don't want to tell us what all these posts for.
Do you think we should use Google to find out what did you mean?
This thread is about porting HTC Mega packages to Iolite device.
It's about problems with Mega packages and how to fix them.
I hope you'll understand me.
I want to share my tweak to make Internet Widget work when you add Opera 10 beta to your rom.
You should add the registry
[HKEY_LOCAL_MACHINE\Software\HTC\Manila2D\InternetWidget]
"OperaEXEFile"="\\Windows\\Opera Mobile 10\\Opera10-armv4i.exe"
Click to expand...
Click to collapse
in app.reg in Manila package
roo303oom said:
I want to share my tweak to make Internet Widget work when you add Opera 10 beta to your rom.
You should add the registry
in app.reg in Manila package
Click to expand...
Click to collapse
if you install Opera 10 beta from cab file, the path will be
Code:
[HKEY_LOCAL_MACHINE\Software\HTC\Manila2D\InternetWidget]
"OperaEXEFile"="\\Program Files\\Opera Mobile 10\\Opera10-armv4i.exe"

All Hurricane ROMS in one place!!!

I would ask all active members to upload or share their collection of roms for Hurricane. I bricked my hurr 2 years from now and yesterday i got one so i would like to try as many roms as possible, and it will be great for all to share roms!!! I found several on this forum (lazaj's, saleng's, shadow's) but i think that there is more!!! So share your collection!!!
Here i found some on forum:
hurricane unlock, patch and upgrade wm 6.1(selang09) ***
Link: http://www.megaupload.com/?d=JLO5H1L7
Thread: http://forum.xda-developers.com/showthread.php?t=475286
Opinion: Good one, but chinese language everywhere! After u change main lang. still some apps name stay in chinese and options too!
wm6.1 for hurricane (with Bluetooth and INFRARED RAY problems solved)0415update!!!
Link: http://rapidshare.com/files/100934508/5x6_wm6.1_0319.rar
Thread: http://forum.xda-developers.com/showthread.php?t=378607
Opinion: Didn't tried!
WM 6 Graphite rom, how to get WMPlayer in English (now in Polish)
Link: http://rapidshare.com/files/108676266/wm6_2_2.zip
Thread: http://forum.xda-developers.com/archive/index.php/t-384972.html
Opinion: Using this one right now! Seems ok, works nice, nice look, except incoming calls didn't show up!!! Very bad bug!
Wm 6.1 Pl/eng
Link: http://rapidshare.com/files/131860280/wm_6_1_by_Lazaj007.zip
Thread: http://forum.xda-developers.com/showthread.php?t=410739
Opinion: Tried before Graphite eng edition, works great, looks great... Main lang polski, after lang change WMP stay in polski! But still ok!
WM6 for SPV C550
Link: http://rapidshare.com/files/56833250/566.zip
Thread: http://forum.xda-developers.com/showthread.php?t=330709
Opinion: Never tried!
And one pack with SPL 1.00.84 & soft spl (nb, nbf), IPL 1.00.15, GSM DATA (hex and dec), bootloader commands, splsplit... etc!
Link: http://rapidshare.com/files/427352270/data_hurricane.rar
Info: This last files can help u to unbrick your hurricane (BUT AVOID TO BRICK IT), i found it on pda2u.ru , and thanks them for that! Special thanks to member SAXON!
I found many links for ROMs but those which is here have alive links! Someone with good upload speed can reup them again in one pack and post a link here!
ENJOY!
I would like to have a non T-Mobile German version (can be a shipped ROM). Have not found any yet, only those that are available at www.shipped-roms.com Have to live with de-branding this as it seems.
Possibly someone with any of the following devices can do a "r2sd all" backup of the ROM?
imate SP4M
Orange C550
Qtek 8200 (the Russian/English is available as RUU)
Thanks for this link tobbbie !
Btw, in selang's rom SMS Send don't work! So, it is useless!!! :S
I have tested all ROM´s below for SDA II, but for me lazaj007 is the best of all
Thanks to lazaj007
Did anyone care to pick up some ROM cooking for that device? I did not succeed in getting the .BIN files manipulated correctly - and I think I have a collection of nearly all ROM tools now :-(
howto convert .bin to .nb0 and back
Foreword:
.BIN files are not all the same by their nature (of course not by content). There are
.bin that are used to identify the bare binary content of the various partitions (you mostly see those)
.bin that are used to flash a ROM to the device. This looks somehow historic though, the format is already described by itsme at: http://www.xs4all.nl/~itsme/projects/xda/wince-flashfile-formats.html. It seems to me that some non HTC devices are still using this format.
The osnbtool.exe (from Weisun at PDACLAN.COM) does not work for any purpose regarding .bin files
at least not for Hurricane.
- The -sp option cuts only the B000F\0a header but does not reconstruct the blocks of the .bin file.
Mind that small .bin files (smaller than 0x1c00000) are treated correctly as there is only one block.
- The -2bin option creates an incorrect .bin header (sets a weird total length) and sets totally confused
block-load addresses for the created blocks of 64k (0x10000) size. Check it with viewbin.exe if you like.
Reference for the filestructure by itsme:
http://www.xs4all.nl/~itsme/projects/xda/wince-flashfile-formats.html
The splitrom.pl (itsme romtools) seems not be able to read the content of any .bin file I have fed to it.
Neither for .BIN files created for Hurricane nor those for Typhoon, I always get:
cmd> splitrom.pl <binfile>
B000FF image: 82040000-84c40000, entrypoint: 00000000
!!! your rom is not known to me: md5: a520f0d1093b36f0a3cfd9323ea99155
this bootloader seems to be No bootloader present
no xipchain found
no bootloader found
no operator rom found
no bitmap found
I am rather sure it should handle everything correctly but I am too stupid to debug .pl :-(
So the only thing that works and will re-create a flash-able .BIN file from a .nb0 is listed below:
convert .bin to .nb0:
enter: viewbin -r <binfile>, you get something like:
Image Start = 0x82040000, length = 0x02C00000
Record [ 0] : Start = 0x82040000, Length = 0x01C00000, Chksum = 0x00000000
Record [ 1] : Start = 0x83C40000, Length = 0x01000000, Chksum = 0x00000000
Record [ 2] : Start = 0x00000000, Length = 0x00000000, Chksum = 0x00000000
Start address = 0x00000000
The above has two blocks of data and a termination block.
The checksum = 0 effectively disables upload checking (so potentially dangerous).
The size just fits the Hurricane's SPL "l" (load) command buffer, as you get when loading a ROM:
"clean up the image temp buffer at 0x8C080000 Length 0x01C40000 "
The blocks can be smaller than 0x1c40000 but not bigger obviously.
then convert to nb0, enter: cvrtbin.exe -r -a <imgstart> -l <length> -w 32 <binfile>
for above viewbin output: cvrtbin.exe -r -a 82040000 -l 2c00000 -w 32 <binfile>
mind to omit the 0x for the start and address, replace <binfile> with your filename, then you get a resulting file from <original-name.bin> to <original-name.nb0> which can further be decomposed and edited with standard ROM tools
convert .nb0 to .bin:
enter: xipbin.exe <input.nb0> <start-in-nb0> <output.bin> <loadaddress>
to get back something flashable like above: xipbin.exe <input.nb0> 0 <output.bin> 82040000
mind to omit the 0x for the loadaddress, replace <"file"> with your filenames
to recheck if the created BIN file is usable, startup the viewbin again
enter: viewbin -r <binfile> you now get something like:
Image Start = 0x82040000, length = 0x02C00000
Record [ 0] : Start = 0x82040000, Length = 0x00040000, Chksum = 0x0208CC79
...many entries deleted...
Record [175] : Start = 0x84C00000, Length = 0x00040000, Chksum = 0x0177FB3C
Record [176] : Start = 0x00000000, Length = 0x00000000, Chksum = 0x00000000
Start address = 0x00000000
Done.
Looks quite different - but this is ok! The loading process in MTTY indocates the loading of each above block with a sequence of |*, so with these many blocks the upload to the device is giving feedback and thus is not tempting people to interrupt it.
I have done my tests with the 566.zip linked in the first post of this thread, but this should work with any .BIN file from the other ROMs as well. So I will continue to see if I can recycle any of the WM6 Roms for inserting my imgfs created for Tornado. As before the imgfs still the XIP is loaded and I know too little about this yet (especially in connection to the imgfs and how close these two are linked) - I am prepared to see non booting device states quite a lot. Luckily there is nothing done to the early boot chain (IPL and SPL) so I can always get back to the bootloader and start over again.
I hope to get a first indication that imgfs is mounted correctly in the "old" XIP before I have to replace the OEMdriver parts in my Tornado ROM.
I just checked if I can still use this flash-method for the Tornado - and it works as well. So the created "os-new.nb" in the OUT directory can be converted to .BIN and then flashed inside MTTY with the "l" command. Not that I like this method - but it works as well.
Tobbbie, you have here a very good research! To bad this device is out of use!

How do i get Linux to show up in boot loader from WM 6.5?!

How do i get Linux to show up as a choice in boot loader from WM 6.5?! I am using WM 6.5 Elegancia ROM.
I have tried this "Exceller" and "Android Loader v6.0" from http://forum.xda-developers.com/show...ubuntu,+choose . Both work fine for boot loading WM 6.5 and Android, but not Linux (Ubuntu)
i followed instructions -->
""on your build folder,
1. Edit the file startup.txt
2. find this line on your startup txt set cmdline ""
3. insert rel_path=YourbuildfolderHere between the qoutes
Ex: set cmdline "rel_path=YourbuildfolderHere"
4. Make sure you save your changes.
NOTE: If this line set cmdline "" already contains text between the quotes, just insert rel_path=YourbuildfolderHere (with space after)
so it looks something like this
set cmdline "rel_path=YourbuildfolderHere lpj=638976" where lpj=638976 text is the existing text. ""
mine looks like this: set cmdline "rel_path=Linux init=/init rw consoleblank=0 fbcon=rotate:1"
Linux runs fine through accessing its HARET.exe, and i placed the "Linux" build folder in the SD Directory properly obviously since it works. Even tried renaming it to Ubuntu also modifying the code line. i want the boot loader to include WM 6.5, Android, AND Linux! (like in a list of boot options upon startup)

How To Guide Using dism.exe and Powershell to Modify Windows ISOs

THIS IS OUTDATED, SEE THE NEW ARTICLE
How To Make Your Own Tiny or Lite Windows ISO
Hello Friends, Today I bring you a guide on how to properly mod your windows isos, to do anything you want :) [/SPOILER] [/SPOILER] [/SPOILER] To remove installed apps: dism.exe /Image:C:\Users\0110\Desktop\MODWINDOWZ\PATH...
forum.xda-developers.com
======================================
USING DISM.EXE AND POWERSHELL TO MODIFY WINDOWS ISOS
=============================================================================================
=======================================================​
On today's Lesson of Whatever I got distracted on~! Here's how to take what we learned before...
About Modding Windows ISOs.. and Make it... HARDER XD
Unintentionally, of Course, but with Purpose.
Spoiler: ORIGINAL ARTICLE
[CLOSED] How To Make Your Own Modified Windows ISO
============================================================== HOW TO MAKE A MODIFIED WINDOWS ISO ============================================================== Mod Edit: Link to Tool removed. This ISO will work just fine In virtual...
forum.xda-developers.com
Let's learn and understand what the MSMG Toolkit was really doing..
Since MSMG Unfortunately Doesn't Work as needed for Windows 7 ISOs...
We will be using the built in Windows Tool, dism.exe, in Powershell~!
Spoiler: DOWNLOAD: DEBLOAT WINDOWS 7 TOOLS, "AKA" DW7
GOOGLE DRIVE:
DW7.zip
drive.google.com
(3 GB, INCLUDES ORIGINAL WIN7WSP1)
Spoiler: VIDEO GUIDE
Spoiler: SETTING UP THE TOOLS
Extract The DW7 Folder and Paste into C:\
Win7UltSP1 is an unactivated, Stock Windows 7 Ultimate image with Service Pack 1.
You may use this ISO, Or your own Windows 7 ISO.
You may also create your own directories!
The tools are to help brand new people by proving concept.
Spoiler: PREPARING THE install.wim FILE
Open Your ISO and copy the files of the ISO into the DVD folder of DW7..
Press the Windows key on the keyboard,
Search for Powershell, Right Click, Run as Admin..
Paste this command to See, and Select, an Image "Source" Number:
Dism /Get-WimInfo /WimFile:"C:\DW7\DVD\sources\install.wim"
Paste this command to Extract the Selected Image "Source" Number:
Dism /export-image /SourceImageFile:"C:\DW7\DVD\sources\install.wim" /SourceIndex:4 /DestinationImageFile:"C:\DW7\ISO\install.wim" /Compress:max /CheckIntegrity
NOTE THAT YOU CAN:
Change the SourceIndex:Number If you don't want Ultimate.
Spoiler: OUT WITH THE OLD~! IN WITH THE NEW~!
Paste this command to copy and move the new install.wim and force replace the original install file:
copy-item "C:\DW7\ISO\install.wim" C:\DW7\DVD\sources -Recurse -Force
Paste this command to remove the "new" install.wim, that we moved above to the dvd sources folder:
remove-item "C:\DW7\ISO\install.wim"
Spoiler: PREPARING THE PATH ENVIRONMENT
At this point we need to make a copy of our DW7 Folder..
Paste The DW7 Folder to your Desktop.
Do not Cut or Drag and Drop!
This will leave you clean backups in C:\, just in case~!
This also forces us to make a change in the code...
Spoiler: LEARN DEM HOTKEYS~! PLEASE~!
You will need to Edit the Username in the code below.
If you are unsure of your Username,
Go into C:\Users and click on your Username.
Press F2 (This is the "rename" shortcut),
Which Highlights the text of any file or folder saving time..
Press Ctrl+C to quickly copy your username.
Then replace my commands below, the part after...
C:\Users\paste your user name and erase mine, the 0110 part...
To do this quickly, press Ctrl+H, type 0110 in the first line..
Press Ctrl+V to Paste your username, and replace all..
Spoiler: MOUNTING THE IMAGE
DESKTOP COMMAND:
dism.exe /mount-wim /wimfile:"C:\Users\0110\Desktop\DW7\DVD\sources\install.wim" /mountdir:"C:\Users\0110\Desktop\DW7\PATH" /index:1
DESKTOP COMMAND:
takeown /a /r /d Y /f "C:\Users\0110\Desktop\DW7\PATH"
Spoiler: ENABLING AND REMOVING FEATURES
Paste this command to Enable Windows features, currently disabled on the ISO:
Get-WindowsOptionalFeature -Path "C:\DW7\PATH" | Where-Object {$_.State –eq “Disabled”} | Out-GridView -PassThru | Enable-WindowsOptionalFeature
Paste this command to Disable Windows features, currently enabled on the ISO:
Get-WindowsOptionalFeature -Path "C:\DW7\PATH" | Where-Object {$_.State –eq “Enabled”} | Out-GridView -PassThru | Disable-WindowsOptionalFeature
Add or Remove Features by holding the control key and click on
all the features you want to include, then hit ok.
Spoiler: SAVE AND EXIT
Save your changes by pasting this command:
Dismount-WindowsImage -Path "C:\Users\0110\Desktop\DW7\PATH\" -Save
NOTE THAT UNTIL YOU DO THIS STEP, TRUSTED INSTALLER WILL NOT ALLOW YOU...
TO DELETE THE DW7 FOLDER OR FILES WITHIN~!
Spoiler: REFERENCES
How to Remove Built-in Apps, Features & Editions from a Windows 10 Install Image (WIM file)? | Windows OS Hub
In this guide we’ll show how to remove Microsoft Store provisioned apps, features (capabilities), and unused Windows editions from a Windows 10 installation image (install.wim file). Let’s do it manually…
woshub.com
Take ownership and delete a folder with Windows PowerShell
Windows won’t let me delete this folder…
mattyclutch.wordpress.com
TAKEOWN Command: Takes Ownership of A File
The TAKEOWN command is used to take ownership of a file. This command is used on the batch files.
windowscmd.com
takeown
Reference article for the takeown command, which enables an administrator to recover access to a file that was previously denied.
docs.microsoft.com
How to Add or Remove Optional Features on Windows Install Media
Ten Forums own tutorial guru @Brink has written an excellent tutorial about how to turn Windows optional features on or off in online OS, the current Windows installation user has signed in. This tutorial shows how to do the same on an offline image, a Wi
www.tenforums.com
Spoiler: Scripts from the articles to run on live machines
Remove Windows Apps:
Get-AppxProvisionedPackage -Online | Out-GridView -PassThru -Title 'Select All Windows Apps to Remove' | Remove-AppxProvisionedPackage -Online -ErrorAction SilentlyContinue -Verbose
Remove System Apps:
Get-AppxPackage -AllUsers | Out-GridView -PassThru -Title 'Select All System Apps to Remove' | Remove-AppxPackage -Confirm:$false -ErrorAction SilentlyContinue -Verbose
Remove Windows Capabilities:
Get-WindowsCapability -Online | Where-Object {$_.State -eq 'Installed' } | Out-GridView -PassThru -Title 'Select Windows Capabilities to Remove' | Remove-WindowsCapability -Online -Verbose
Remove Windows Packages:
Get-WindowsPackage -Online | Where-Object {$_.PackageState -eq 'Installed' } | Out-GridView -PassThru -Title 'Select Windows Packages to Remove' | Remove-WindowsPackage -Online -Verbose
=========================================================================
TODAY'S PRESENTATION IS BROUGHT TO YOU BY:
THE LETTER D... FOR DISM...
DEPLOYMENT IMAGE SERVICING AND MANAGEMENT TOOL~!
===========================================================================
TO GET HELP IN SHELL...
PASTE: DISM /?
Spoiler: DISM COMMANDS
Deployment Image Servicing and Management tool
Version: 10.0.19041.844
DISM.exe [dism_options] {Imaging_command} [<Imaging_arguments>]
DISM.exe {/Image:<path_to_offline_image> | /Online} [dism_options]
{servicing_command} [<servicing_arguments>]
DESCRIPTION:
DISM enumerates, installs, uninstalls, configures, and updates features
and packages in Windows images. The commands that are available depend
on the image being serviced and whether the image is offline or running.
GENERIC IMAGING COMMANDS:
/Split-Image - Splits an existing .wim file into multiple
read-only split WIM (SWM) files.
/Apply-Image - Applies an image.
/Get-MountedImageInfo - Displays information about mounted WIM and VHD
images.
/Get-ImageInfo - Displays information about images in a WIM, a VHD
or a FFU file.
/Commit-Image - Saves changes to a mounted WIM or VHD image.
/Unmount-Image - Unmounts a mounted WIM or VHD image.
/Mount-Image - Mounts an image from a WIM or VHD file.
/Remount-Image - Recovers an orphaned image mount directory.
/Cleanup-Mountpoints - Deletes resources associated with corrupted
mounted images.
WIM COMMANDS:
/Apply-CustomDataImage - Dehydrates files contained in the custom data image.
/Capture-CustomImage - Captures customizations into a delta WIM file on a
WIMBoot system. Captured directories include all
subfolders and data.
/Get-WIMBootEntry - Displays WIMBoot configuration entries for the
specified disk volume.
/Update-WIMBootEntry - Updates WIMBoot configuration entry for the
specified disk volume.
/List-Image - Displays a list of the files and folders in a
specified image.
/Delete-Image - Deletes the specified volume image from a WIM file
that has multiple volume images.
/Export-Image - Exports a copy of the specified image to another
file.
/Append-Image - Adds another image to a WIM file.
/Capture-Image - Captures an image of a drive into a new WIM file.
Captured directories include all subfolders and
data.
/Get-MountedWimInfo - Displays information about mounted WIM images.
/Get-WimInfo - Displays information about images in a WIM file.
/Commit-Wim - Saves changes to a mounted WIM image.
/Unmount-Wim - Unmounts a mounted WIM image.
/Mount-Wim - Mounts an image from a WIM file.
/Remount-Wim - Recovers an orphaned WIM mount directory.
/Cleanup-Wim - Deletes resources associated with mounted WIM
images that are corrupted.
FFU COMMANDS:
/Capture-Ffu - Captures a physical disk image into a new FFU file.
/Apply-Ffu - Applies an .ffu image.
/Split-Ffu - Splits an existing .ffu file into multiple read-only
split FFU files.
/Optimize-Ffu - Optimizes a FFU file so that it can be applied to storage
of a different size.
IMAGE SPECIFICATIONS:
/Online - Targets the running operating system.
/Image - Specifies the path to the root directory of an
offline Windows image.
DISM OPTIONS:
/English - Displays command line output in English.
/Format - Specifies the report output format.
/WinDir - Specifies the path to the Windows directory.
/SysDriveDir - Specifies the path to the system-loader file named
BootMgr.
/LogPath - Specifies the logfile path.
/LogLevel - Specifies the output level shown in the log (1-4).
/NoRestart - Suppresses automatic reboots and reboot prompts.
/Quiet - Suppresses all output except for error messages.
/ScratchDir - Specifies the path to a scratch directory.
For more information about these DISM options and their arguments, specify an
option immediately before /?.
Examples:
DISM.exe /Mount-Wim /?
DISM.exe /ScratchDir /?
DISM.exe /Image:C:\test\offline /?
DISM.exe /Online /?
PS C:\> Get-WindowsCapability -Path C:\DW7\PATH
Get-WindowsCapability : Get-WindowsCapability failed. Error code = 0x80004002
At line:1 char:1
+ Get-WindowsCapability -Path C:\DW7\PATH
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: ) [Get-WindowsCapability], COMException
+ FullyQualifiedErrorId : Microsoft.Dism.Commands.GetWindowsCapabilityCommand
PS C:\> Get-WindowsCapability -Path " C:\DW7\PATH"
Get-WindowsCapability : The parameter is incorrect.
At line:1 char:1
+ Get-WindowsCapability -Path " C:\DW7\PATH"
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: ) [Get-WindowsCapability], PSArgumentException
+ FullyQualifiedErrorId : Microsoft.Dism.Commands.GetWindowsCapabilityCommand
Upload has completed, download links are now available.
A video guide has been provided.
We are missing one or so lines of code to rebuild the ISO.
I will correct that tomorrow, I'm Sleepy. D;
You can always use MSMGTK to do that part if you make it there before I add the code~!
Apparently I have to learn Ms build which I'm doing now so obviously this will take a little longer than I expected but it will help to progress our knowledge gained from trying to do something that should be so simple, turn a folder into an ISO, but continues to prove to us that nothing in computing should ever be took lightly and it took a lot of time and tools and engineering to create everything we do on them...
I am putting out a correction~! MSBUILD is NOT needed to turn a folder into an ISO. We can do that entirely in Powershell, using the built in ISE Tool. This will allow us to create a script that will burn the ISO for us. I will release a new thread on building a script in PowerShell ISE when I know what the heck I am doing. LOL
I did however, extract the MSBUILD tool from Visual Studio if anyone ever needs it and doesn't want to install VS
MSBuild.zip
drive.google.com
(22.5 MB ZIPPED)
I am also dumping all my research on MSBUILD here in case I or anyone else want's to pickup on it later~!
REFS:
Spoiler: MSBUILD ENGINE
MSBuild - MSBuild
Learn about how the Microsoft Build Engine (MSBuild) platform provides a project file with an XML schema to control builds.
docs.microsoft.com
"The Microsoft Build Engine is a platform for building applications. This engine, which is also known as MSBuild, provides an XML schema for a project file that controls how the build platform processes and builds software"
"To run MSBuild at a command prompt, pass a project file to MSBuild.exe, together with the appropriate command-line options. Command-line options let you set properties, execute specific targets, and set other options that control the build process."
COMMAND LINE EXAMPLE:
MSBuild.exe MyProj.proj -property:Configuration=Debug
"MSBuild uses an XML-based project file format that's straightforward and extensible. The MSBuild project file format lets developers describe the items that are to be built, and also how they are to be built for different operating systems and configurations.
In addition, the project file format lets developers author reusable build rules that can be factored into separate files so that builds can be performed consistently across different projects in the product"
"Properties represent key/value pairs that can be used to configure builds. Properties are declared by creating an element that has the name of the property as a child of a PropertyGroup element"
XML EXAMPLE:
<PropertyGroup>
<BuildDir>Build</BuildDir>
</PropertyGroup>
"You can define a property conditionally by placing a Condition attribute in the element. The contents of conditional elements are ignored unless the condition evaluates to true"
XML EXAMPLE:
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
"Properties can be referenced throughout the project file by using the syntax $(<PropertyName>).
For example, you can reference the properties in the previous examples by using $(BuildDir) and $(Configuration)."
"Items are inputs into the build system and typically represent files. Items are grouped into item types based on user-defined item names. These item types can be used as parameters for tasks, which use the individual items to perform the steps of the build process. Items are declared in the project file by creating an element that has the name of the item type as a child of an ItemGroup element."
XML EXAMPLE:
<ItemGroup>
<Compile Include = "file1.cs"/>
<Compile Include = "file2.cs"/>
</ItemGroup>
"Item types can be referenced throughout the project file by using the syntax @(<ItemType>).
For example, the item type in the example would be referenced by using @(Compile).
In MSBuild, element and attribute names are case-sensitive. However, property, item, and metadata names are not."
"Tasks are units of executable code that MSBuild projects use to perform build operations.
For example, a task might compile input files or run an external tool."
"The execution logic of a task is written in managed code and mapped to MSBuild by using the UsingTask element.
You can write your own task by authoring a managed type that implements the ITask interface"
"MSBuild includes common tasks that you can modify to suit your requirements.
Examples are Copy, which copies files, MakeDir, which creates directories"
"A task is executed in an MSBuild project file by creating an element that has the name of the task as a child of a Target element.
Tasks typically accept parameters, which are passed as attributes of the element. Both MSBuild properties and items can be used as parameters."
XML EXAMPLE:
<Target Name="MakeBuildDirectory">
<MakeDir Directories="$(BuildDir)" />
</Target>
"Targets group tasks together in a particular order and expose sections of the project file as entry points into the build process."
"Breaking the build steps into targets lets you call one piece of the build process from other targets without copying that section of code into every target"
XML EXAMPLE:
<Target Name="Compile">
<Csc Sources="@(Compile)" />
</Target>
Spoiler: WHAT IS XML SCHEMA?
What is XML Schema (XSD)?
docs.microsoft.com
"XML Schema Definition (XSD) language is the current standard schema language for all XML documents and data. On May 2, 2001, the World Wide Web Consortium (W3C) published XSD in its version 1.0 format.
The XML Schema definition language (XSD) enables you to define the structure and data types for XML documents.
An XML Schema defines the elements, attributes, and data types that conform to the World Wide Web Consortium (W3C),
XML Schema Part 1: Structures Recommendation for the XML Schema Definition Language."
"The schema element contains type definitions (simpleType and complexType elements) and attribute and element declarations. In addition to its built-in data types (such as integer, string, and so on), XML Schema also allows for the definition of new data types using the simpleType and complexType elements.
simpleType
A type definition for a value that can be used as the content (textOnly) of an element or attribute. This data type cannot contain elements or have attributes.
complexType
A type definition for elements that can contain attributes and elements. This data type can contain elements and have attributes."
Spoiler: MSBUILD ON THE COMMAND LINE
MSBuild on the command line - C++
Learn more about: MSBuild on the command line - C++
docs.microsoft.com
"you can use the MSBuild tool directly from the command prompt. The build process is controlled by the information in a project file (.vcxproj) that you can create and edit."
CLI EXAMPLE:
msbuild.exe [ project_file ] [ options ]
"Use the /target (or /t) and /property (or /p) command-line options to override specific properties and targets that are specified in the project file."
"A project file can specify one or more targets, which can include a default target."
"Each target consists of a sequence of one or more tasks. Each task is represented by a .NET Framework class that contains one executable command. For example, the CL task contains the cl.exe command."
"A task parameter is a property of the class task and typically represents a command-line option of the executable command."
Spoiler: MSBUILD COMMAND LINE REFERENCES
MSBuild Command-Line Reference - MSBuild
Learn how to use MSBuild.exe command line to build a project or solution file, and several switches you can include.
docs.microsoft.com
"When you use MSBuild.exe to build a project or solution file, you can include several switches to specify various aspects of the process."
"Every switch is available in two forms: -switch and /switch."
"Switches are not case-sensitive. If you run MSBuild from a shell other than the Windows command prompt, lists of arguments to a switch (separated by semicolons or commas) might need single or double quotes to ensure that lists are passed to MSBuild instead of interpreted by the shell."
SYNTAX:
MSBuild.exe [Switches] [ProjectFile]
ARGUMENT:
ProjectFile Builds the targets in the project file that you specify. If you don't specify a project file,
MSBuild searches the current working directory for a file name extension that ends in proj and uses that file.
USE THIS ARTICLE AFTER READING THE ABOVE AND YOU WILL UNDERSTAND WHAT IT'S SAYING.
Use MSBuild - MSBuild
Learn the various parts of an MSBuild project file, including items, item metadata, properties, targets, and tasks.
docs.microsoft.com
To get help in the Shell, Type:
MSBuild -help
Spoiler: DISPLAYS THIS
C:\Users\0110\Desktop\MSBuild\Current\Bin>msbuild -help
Microsoft (R) Build Engine version 17.0.0+c9eb9dd64 for .NET Framework
Copyright (C) Microsoft Corporation. All rights reserved.
Syntax: MSBuild.exe [options] [project file | directory]
Description: Builds the specified targets in the project file. If a project file is not specified, MSBuild searches the current working directory for a file that has a file extension that ends in "proj" and uses that file. If a directory is specified, MSBuild searches that directory for a project file.
Switches: Note that you can specify switches using:
"-switch", "/switch" and "--switch".
-target:<targets> Build these targets in this project. Use a semicolon or a comma to separate multiple targets, or specify each target separately. (Short form: -t)
Example:
-target:Resources;Compile
-property:<n>=<v> Set or override these project-level properties. <n> is the property name, and <v> is the property value. Use a semicolon or a comma to separate multiple properties, or specify each property separately.
(Short form: -p)
Example:
-property:WarningLevel=2;OutDir=bin\Debug\
-maxCpuCount[:n] Specifies the maximum number of concurrent processes to build with. If the switch is not used, the default value used is 1. If the switch is used without a value MSBuild will use up to the number of processors on the computer. (Short form: -m[:n])
-toolsVersion:<version> The version of the MSBuild Toolset (tasks, targets, etc.) to use during build. This version will override the versions specified by individual projects.
(Short form: -tv)
Example:
-toolsVersion:3.5
-verbosity:<level> Display this amount of information in the event log.
The available verbosity levels are: q[uiet], m[inimal], n[ormal], d[etailed], and diag[nostic].
(Short form: -v)
Example:
-verbosity:quiet
-consoleLoggerParameters:<parameters> Parameters to console logger.
(Short form: -clp)
The available parameters are:
PerformanceSummary--Show time spent in tasks, targets and projects.
Summary--Show error and warning summary at the end.
NoSummary--Don't show error and warning summary at the end.
ErrorsOnly--Show only errors.
WarningsOnly--Show only warnings.
NoItemAndPropertyList--Don't show list of items and properties at the start of each project build.
ShowCommandLine--Show TaskCommandLineEvent messages
ShowTimestamp--Display the Timestamp as a prefix to any message.
ShowEventId--Show eventId for started events, finished events, and messages
ForceNoAlign--Does not align the text to the size of the console buffer
DisableConsoleColor--Use the default console colors for all logging messages.
DisableMPLogging-- Disable the multiprocessor logging style of output when running in non-multiprocessor mode.
EnableMPLogging--Enable the multiprocessor logging style even when running in non-multiprocessor mode. This logging style is on by default.
ForceConsoleColor--Use ANSI console colors even if console does not support it
Verbosity--overrides the -verbosity setting for this logger.
Example:
-consoleLoggerParameterserformanceSummary;NoSummary;
Verbosity=minimal
-noConsoleLogger Disable the default console logger and do not log events to the console. (Short form: -noConLog)
-fileLogger[n] Logs the build output to a file. By default the file is in the current directory and named
"msbuild[n].log". Events from all nodes are combined into a single log. The location of the file and other parameters for the fileLogger can be specified through the addition of the "-fileLoggerParameters[n]" switch. "n" if present can be a digit from 1-9, allowing up to 10 file loggers to be attached.
(Short form: -fl[n])
-fileLoggerParameters[n]:<parameters> Provides any extra parameters for file loggers. The presence of this switch implies the corresponding -fileLogger[n] switch.
"n" if present can be a digit from 1-9.
-fileLoggerParameters is also used by any distributed file logger, see description of -distributedFileLogger.
(Short form: -flp[n])
The same parameters listed for the console logger are available. Some additional available parameters are:
LogFile--path to the log file into which the build log will be written.
Append--determines if the build log will be appended to or overwrite the log file. Setting the switch appends the build log to the log file;
Not setting the switch overwrites the contents of an existing log file. The default is not to append to the log file.
Encoding--specifies the encoding for the file, for example, UTF-8, Unicode, or ASCII Default verbosity is Detailed.
Examples:
-fileLoggerParameters:LogFile=MyLog.log;Append; Verbosity=diagnostic;Encoding=UTF-8
-flp:Summary;Verbosity=minimal;LogFile=msbuild.sum
-flp1:warningsonly;logfile=msbuild.wrn
-flp2:errorsonly;logfile=msbuild.err
-distributedLogger:<central logger>*<forwarding logger>
Use this logger to log events from MSBuild, attaching a different logger instance to each node. To specify multiple loggers, specify each logger separately.
(Short form -dl)
The <logger> syntax is:
[<class>,]<assembly>[,<options>][;<parameters>]
The <logger class> syntax is:
[<partial or full namespace>.]<logger class name>
The <logger assembly> syntax is:
{<assembly name>[,<strong name>] | <assembly file>}
Logger options specify how MSBuild creates the logger. The <logger parameters> are optional, and are passed to the logger exactly as you typed them.
(Short form: -l)
Examples:
-dl:XMLLogger,MyLogger,Version=1.0.2,Culture=neutral
-dl:MyLogger,C:\My.dll*ForwardingLogger,C:\Logger.dll
-distributedFileLogger
Logs the build output to multiple log files, one log file per MSBuild node. The initial location for these files is the current directory. By default the files are called "MSBuild<nodeid>.log". The location of the files and other parameters for the fileLogger can be specified with the addition of the "-fileLoggerParameters" switch.
If a log file name is set through the fileLoggerParameters switch the distributed logger will use the fileName as a template and append the node id to this fileName to create a log file for each node.
-logger:<logger> Use this logger to log events from MSBuild. To specify multiple loggers, specify each logger separately.
The <logger> syntax is:
[<class>,]<assembly>[,<options>][;<parameters>]
The <logger class> syntax is:
[<partial or full namespace>.]<logger class name>
The <logger assembly> syntax is:
{<assembly name>[,<strong name>] | <assembly file>}
Logger options specify how MSBuild creates the logger.
The <logger parameters> are optional, and are passed to the logger exactly as you typed them.
(Short form: -l)
Examples:
-logger:XMLLogger,MyLogger,Version=1.0.2,Culture=neutral
-logger:XMLLogger,C:\Loggers\MyLogger.dll;OutputAsHTML
-binaryLogger[:[LogFile=]output.binlog[;ProjectImports={None,Embed,ZipFile}]]
Serializes all build events to a compressed binary file.
By default the file is in the current directory and named "msbuild.binlog". The binary log is a detailed description of the build process that can later be used to reconstruct text logs and used by other analysis tools. A binary log is usually 10-20x smaller than the most detailed text diagnostic-level log, but it contains more information.
(Short form: -bl)
The binary logger by default collects the source text of project files, including all imported projects and target files encountered during the build. The optional ProjectImports switch controls this behavior:
ProjectImports=None - Don't collect the project imports.
ProjectImports=Embed - Embed project imports in the log file.
ProjectImports=ZipFile - Save project files to output.projectimports.zip where output is the same name as the binary log file name.
The default setting for ProjectImports is Embed. Note: the logger does not collect non-MSBuild source files such as .cs, .cpp etc.
A .binlog file can be "played back" by passing it to msbuild.exe as an argument instead of a project/solution. Other loggers will receive the information contained in the log file as if the original build was happening.
You can read more about the binary log and its usages at:
msbuild/Providing-Binary-Logs.md at main · dotnet/msbuild
The Microsoft Build Engine (MSBuild) is the build platform for .NET and Visual Studio. - msbuild/Providing-Binary-Logs.md at main · dotnet/msbuild
aka.ms
Examples:
-bl
-blutput.binlog
-blutput.binlog;ProjectImports=None
-blutput.binlog;ProjectImports=ZipFile
-bl:..\..\custom.binlog
-binaryLogger
-warnAsError[:code[;code2]]
List of warning codes to treats as errors. Use a semicolon or a comma to separate multiple warning codes. To treat all warnings as errors use the switch with no values.
(Short form: -err[:c;[c2]])
Example:
-warnAsError:MSB4130
When a warning is treated as an error the target will continue to execute as if it was a warning but the overall build will fail.
-warnAsMessage[:code[;code2]]
List of warning codes to treats as low importance messages. Use a semicolon or a comma to separate multiple warning codes.
(Short form: -noWarn[:c;[c2]])
Example:
-warnAsMessage:MSB3026
-validate Validate the project against the default schema. (Short form: -val)
-validate:<schema> Validate the project against the specified schema. (Short form: -val)
Example:
-validate:MyExtendedBuildSchema.xsd
-ignoreProjectExtensions:<extensions>
List of extensions to ignore when determining which project file to build. Use a semicolon or a comma to separate multiple extensions.
(Short form: -ignore)
Example:
-ignoreProjectExtensions:.sln
-nodeReuse:<parameters>
Enables or Disables the reuse of MSBuild nodes.
The parameters are:
True --Nodes will remain after the build completes and will be reused by subsequent builds (default)
False--Nodes will not remain after the build completes
(Short form: -nr)
Example:
-nr:true
-preprocess[:file]
Creates a single, aggregated project file by inlining all the files that would be imported during a build, with their boundaries marked. This can be
useful for figuring out what files are being imported and from where, and what they will contribute to the build. By default the output is written to the console window. If the path to an output file is provided that will be used instead.
(Short form: -pp)
Example:
-pput.txt
-targets[:file]
Prints a list of available targets without executing the actual build process. By default the output is written to the console window. If the path to an output file is provided that will be used instead.
(Short form: -ts)
Example:
-tsut.txt
-detailedSummary[:True|False]
Shows detailed information at the end of the build about the configurations built and how they were scheduled to nodes.
(Short form: -ds)
-restore[:True|False]
Runs a target named Restore prior to building other targets and ensures the build for these targets uses the latest restored build logic.
This is useful when your project tree requires packages to be restored before it can be built.
Specifying -restore is the same as specifying
-restore:True. Use the parameter to override a value that comes from a response file.
(Short form: -r)
-restoreProperty:<n>=<v>
Set or override these project-level properties only during restore and do not use properties specified with the -property argument. <n> is the property name, and <v> is the property value. Use a semicolon or a comma to separate multiple properties, or specify each property separately.
(Short form: -rp)
Example:
-restoreProperty:IsRestore=true;MyProperty=value
-profileEvaluation:<file>
Profiles MSBuild evaluation and writes the result to the specified file. If the extension of the specified file is '.md', the result is generated in markdown format. Otherwise, a tab separated file is produced.
-interactive[:True|False]
Indicates that actions in the build are allowed to interact with the user. Do not use this argument in an automated scenario where interactivity is not expected.
Specifying -interactive is the same as specifying
-interactive:true. Use the parameter to override a value that comes from a response file.
-isolateProjects[:True|False]
Causes MSBuild to build each project in isolation. This is a more restrictive mode of MSBuild as it requires that the project graph be statically discoverable at evaluation time, but can improve scheduling and reduce memory overhead when building a large set of projects.
(Short form: -isolate)
This flag is experimental and may not work as intended.
-inputResultsCaches:<cacheFile>...
Semicolon separated list of input cache files that MSBuild will read build results from. Setting this also turns on isolated builds (-isolate).
(short form: -irc)
-outputResultsCache:[cacheFile]
Output cache file where MSBuild will write the contents of its build result caches at the end of the build. Setting this also turns on isolated builds (-isolate).
(short form: -orc)
-graphBuild[:True|False]
Causes MSBuild to construct and build a project graph.
Constructing a graph involves identifying project references to form dependencies. Building that graph involves attempting to build project references prior to the projects that reference them, differing from traditional MSBuild scheduling.
(Short form: -graph)
This flag is experimental and may not work as intended.
-lowPriority[:True|False]
Causes MSBuild to run at low process priority. Specifying -lowPriority is the same as specifying -lowPriority:True.
(Short form: -low)
@<file> Insert command-line settings from a text file. To specify multiple response files, specify each response file separately.
Any response files named "msbuild.rsp" are automatically consumed from the following locations:
(1) the directory of msbuild.exe
(2) the directory of the first project or solution built
-noAutoResponse Do not auto-include any MSBuild.rsp files.
(Short form:-noAutoRsp)
-noLogo Do not display the startup banner and copyright message.
-version Display version information only. (Short form: -ver)
-help Display this usage message. (Short form: -? or -h)
Examples:
MSBuild MyApp.sln -t:Rebuild -p:Configuration=Release
MSBuild MyApp.csproj -t:Clean
-p:Configuration=Debug;TargetFrameworkVersion=v3.5
For more detailed information, see https://aka.ms/msbuild/docs
C:\Users\0110\Desktop\MSBuild\Current\Bin>
Update 21-02-2022
----------------------------
Hi!
Great Job!
I done it for Windows 11 with a few changes, and windows 11 have install.esd not install.wim!
This was not my idea! It belongs to @jenneh, i only had done trough batch files.
You need to create this 5 batch files bellow:
* Need Notepad++ to be easy to read files.
* Use MediaCreationToolW11.exe and download ISO image or create a Pendrive with system.
* Extract from ISO or Pendrive all in to a work folder on descktop
* Create and copy the first 4 batch files in to inside the work folder.
* All 5 batch will request administrator permissions.
* At end delete/cut what ever the batch files from the work folder
*The 5 batch files is executed in to desktop and read what batch window says!
* Done!
This are the 5 batch files:
First one it show the images inside and the option the select and work on one.
Spoiler: 1-Preparing_and_extracting_img.bat
Code:
@echo off & @echo.
:: BatchGotAdmin
:-------------------------------------
REM --> Check for permissions
IF "%PROCESSOR_ARCHITECTURE%" EQU "amd64" (
>nul 2>&1 "%SYSTEMROOT%\SysWOW64\cacls.exe" "%SYSTEMROOT%\SysWOW64\config\system"
) ELSE (
>nul 2>&1 "%SYSTEMROOT%\system32\cacls.exe" "%SYSTEMROOT%\system32\config\system"
)
REM --> If error flag set, we do not have admin.
if '%errorlevel%' NEQ '0' (
@echo. & @echo [43m[31mRequesting administrative privileges...[0m
goto UACPrompt
goto UACPrompt
) else ( goto gotAdmin )
:UACPrompt
echo Set UAC = CreateObject^("Shell.Application"^) > "%temp%\getadmin.vbs"
set params= %*
echo UAC.ShellExecute "cmd.exe", "/c ""%~s0"" %params:"=""%", "", "runas", 1 >> "%temp%\getadmin.vbs"
"%temp%\getadmin.vbs"
del "%temp%\getadmin.vbs"
exit /B
:gotAdmin
rem :To CD to the location of the batch script file (%0)
CD /d "%~dp0"
mkdir %~dp0ISO
powershell.exe Dism /Get-WimInfo /WimFile:"%~dp0sources\install.esd"
@echo. & set /p index=" Type Image Index number to extract image: "
powershell.exe Dism /export-image /SourceImageFile:"%~dp0sources\install.esd" /SourceIndex:%index% /DestinationImageFile:"%~dp0ISO\install.esd" /Compress:max /CheckIntegrity
pause
Spoiler: 2-Mount_Windows_image.bat
Code:
@echo off & @echo.
:: BatchGotAdmin
:-------------------------------------
REM --> Check for permissions
IF "%PROCESSOR_ARCHITECTURE%" EQU "amd64" (
>nul 2>&1 "%SYSTEMROOT%\SysWOW64\cacls.exe" "%SYSTEMROOT%\SysWOW64\config\system"
) ELSE (
>nul 2>&1 "%SYSTEMROOT%\system32\cacls.exe" "%SYSTEMROOT%\system32\config\system"
)
REM --> If error flag set, we do not have admin.
if '%errorlevel%' NEQ '0' (
@echo. & @echo [43m[31mRequesting administrative privileges...[0m
goto UACPrompt
goto UACPrompt
) else ( goto gotAdmin )
:UACPrompt
echo Set UAC = CreateObject^("Shell.Application"^) > "%temp%\getadmin.vbs"
set params= %*
echo UAC.ShellExecute "cmd.exe", "/c ""%~s0"" %params:"=""%", "", "runas", 1 >> "%temp%\getadmin.vbs"
"%temp%\getadmin.vbs"
del "%temp%\getadmin.vbs"
exit /B
:gotAdmin
rem :To CD to the location of the batch script file (%0)
CD /d "%~dp0"
del /F /S /Q "%~dp0sources\install.esd"
move /y "%~dp0ISO\install.esd" "%~dp0sources\install.esd"
mkdir "%~dp0PATH"
dism.exe /mount-wim /wimfile:"%~dp0sources\install.esd" /mountdir:"%~dp0PATH" /index:1
pause
This one create a file where you can check the Optional Features windows state then use batch to enable or disable, batch it will refresh the file with new state, just reload the file. But some of them aren't possible to change state, it gives error.
Spoiler: 3-Enable_Disable_options.bat
Code:
@echo off & @echo.
:: BatchGotAdmin
:-------------------------------------
REM --> Check for permissions
IF "%PROCESSOR_ARCHITECTURE%" EQU "amd64" (
>nul 2>&1 "%SYSTEMROOT%\SysWOW64\cacls.exe" "%SYSTEMROOT%\SysWOW64\config\system"
) ELSE (
>nul 2>&1 "%SYSTEMROOT%\system32\cacls.exe" "%SYSTEMROOT%\system32\config\system"
)
REM --> If error flag set, we do not have admin.
if '%errorlevel%' NEQ '0' (
@echo. & @echo [43m[31mRequesting administrative privileges...[0m
goto UACPrompt
goto UACPrompt
) else ( goto gotAdmin )
:UACPrompt
echo Set UAC = CreateObject^("Shell.Application"^) > "%temp%\getadmin.vbs"
set params= %*
echo UAC.ShellExecute "cmd.exe", "/c ""%~s0"" %params:"=""%", "", "runas", 1 >> "%temp%\getadmin.vbs"
"%temp%\getadmin.vbs"
del "%temp%\getadmin.vbs"
exit /B
:gotAdmin
rem :To CD to the location of the batch script file (%0)
CD /d "%~dp0"
:start
cls
@echo. & @echo Open WindowsOptionalFeature.txt to check Optional Feature state & @echo.
Timeout /t 3 >nul
powershell.exe Get-WindowsOptionalFeature -Path "%~dp0PATH" > WindowsOptionalFeature.txt
set /p Feature=" Optional Feature name:-"
set /p state=" Enable or disable ? -"
powershell.exe %state%-WindowsOptionalFeature -Path "%~dp0PATH" -FeatureName "%Feature%"
@echo. & @echo Press any key to continue. & pause >nul
goto start
This one Will Install apps from Windows app Store in Windows Offline image.
Spoiler: 3.1-Add_Apps_to_Offline_Windows_Image.bat
Code:
@echo off
:: BatchGotAdmin
:-------------------------------------
REM --> Check for permissions
IF "%PROCESSOR_ARCHITECTURE%" EQU "amd64" (
>nul 2>&1 "%SYSTEMROOT%\SysWOW64\cacls.exe" "%SYSTEMROOT%\SysWOW64\config\system"
) ELSE (
>nul 2>&1 "%SYSTEMROOT%\system32\cacls.exe" "%SYSTEMROOT%\system32\config\system"
)
REM --> If error flag set, we do not have admin.
if '%errorlevel%' NEQ '0' (
@echo. & @echo [43m[31mRequesting administrative privileges...[0m
goto UACPrompt
goto UACPrompt
) else ( goto gotAdmin )
:UACPrompt
echo Set UAC = CreateObject^("Shell.Application"^) > "%temp%\getadmin.vbs"
set params= %*
echo UAC.ShellExecute "cmd.exe", "/c ""%~s0"" %params:"=""%", "", "runas", 1 >> "%temp%\getadmin.vbs"
"%temp%\getadmin.vbs"
del "%temp%\getadmin.vbs"
exit /B
:gotAdmin
rem :To CD to the location of the batch script file (%0)
CD /d "%~dp0"
@echo. & @echo [43m[31mAdd apps to offline Windows image. [4m[1mImage must be mounted![0m
@echo. & @echo [41mOpenning Windows App Store...[0m & @echo Press any key to coninue... & pause >nul
start "windows_app_store" https://www.microsoft.com/pt-pt/store/apps/windows
@echo. & @echo [1mFind your app and copy link.[0m
@echo. & @echo [41mOppening https://store.rg-adguard.net/ to [1m[4mget app link to download without install it.[0m & @echo Press any key to coninue... & pause >nul
start "store_rg-adguard.net/" https://store.rg-adguard.net/
@echo. & @echo [1m[31 PPaste the link you copy from App Store in store.rg-adguard.net link bar, select Retail and search links.[0m
@echo. & @echo [1mDownload to desktop [1m[4m[31mthe right [103mappx or appxbundle[0m [31mversion that match your windows version[0m, example for Windows 64 bits download x64 [31m[103mappx or appxbundle[0m version.
@echo [33m Note: * If download doesn t show the extencion just paste the name, to check extencion do right click and check app propertys.
@echo * Some apps have more than 1 package, The app package and its dependencies like Frameworks or VClibs as example.[0m
rem Lets start to add...
@echo.
@echo [44mAdding the Apps...[0m
:repeat
@echo. [33m
set /p app=" Type/Paste the downloaded app name and extension here and press ENTER: "
@echo.
Dism /Image:%~dp0PATH /Add-ProvisionedAppxPackage /PackagePath:%userprofile%\Desktop\%app% /SkipLicense /Region:"all"
@echo. [0m & @echo Press any key to add more apps!
pause >nul
goto repeat
This one dismount and do the clean
Spoiler: 4-Dismount_Windows_Image.bat
Code:
@echo off & @echo.
:: BatchGotAdmin
:-------------------------------------
REM --> Check for permissions
IF "%PROCESSOR_ARCHITECTURE%" EQU "amd64" (
>nul 2>&1 "%SYSTEMROOT%\SysWOW64\cacls.exe" "%SYSTEMROOT%\SysWOW64\config\system"
) ELSE (
>nul 2>&1 "%SYSTEMROOT%\system32\cacls.exe" "%SYSTEMROOT%\system32\config\system"
)
REM --> If error flag set, we do not have admin.
if '%errorlevel%' NEQ '0' (
@echo. & @echo [43m[31mRequesting administrative privileges...[0m
goto UACPrompt
goto UACPrompt
) else ( goto gotAdmin )
:UACPrompt
echo Set UAC = CreateObject^("Shell.Application"^) > "%temp%\getadmin.vbs"
set params= %*
echo UAC.ShellExecute "cmd.exe", "/c ""%~s0"" %params:"=""%", "", "runas", 1 >> "%temp%\getadmin.vbs"
"%temp%\getadmin.vbs"
del "%temp%\getadmin.vbs"
exit /B
:gotAdmin
rem :To CD to the location of the batch script file (%0)
CD /d "%~dp0"
powershell Dismount-WindowsImage -Path "%~dp0PATH" -Save
RD /S /Q p0ISO >NUL
RD /S /Q p0PATH >NUL
del /F /S /Q WindowsOptionalFeature.txt >NUL
pause
This one and the last one create a ISO image from Your Windows modded image but first you need to Install Windows_Kits10ADK.
Download this tool, extract and execute: adksetup.zip
After you execute it, in selection window of tools, only select Deployment Tools like image bellow and install:
Spoiler: Selection Window from Windows Assessement and Deployment Kit
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
After installation is easy, After cleanning your Windows Work folder execute this bat bellow in YOUR DESKTOP, reade what is writted in there to execute it right!!!
Spoiler: 5-Build_ISO.bat
Code:
@echo off & @echo.
CD /d "%~dp0"
@echo Copy this line bellow, paste in command and replace YOURWORKFOLDERNAME with the name of Your Windows work folder name, where you had done the all Job!
@echo YOURWORKFOLDERNAME must NOT have spaces between or will FAIL, Example: Wind 11 is wrong!!! Wind11 or Wind_11 is OK!!!& @echo.
@echo oscdimg.exe -m -o -u2 -udfver102 -bootdata:2#p0,e,b%~dp0YOURWORKFOLDERNAME\boot\etfsboot.com#pEF,e,b%~dp0YOURWORKFOLDERNAME\efi\microsoft\boot\efisys.bin %~dp0YOURWORKFOLDERNAME %userprofile%\Desktop\WinImage.iso
@echo.
%systemroot%\system32\cmd.exe /k "%systemdrive%\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Deployment Tools\DandISetEnv.bat"
Is Done!!! Your Image is ready!
THE END!
Tell me if worked for you to!
persona78 said:
Hi!
Great Job!
I done it for Windows 11 with a few changes, and windows 11 have install.esd not install.wim!
I use batch to do all job like this:
* Need Notepad++ to be easy to read files.
* Use MediaCreationToolW11.exe and download ISO image or create a Pendrive with system.
* Extract from ISO or Pendrive all in to a work folder on descktop
* Copy the batch files in to inside the work folder.
* All batch need to be executed as administrator.
* At end delete/cut what ever the batch files from the work folder
* Done!
I create 4 batch files:
First one it show the images inside and the option the select and work on one.
Spoiler: 1-Preparing_and_extracting_img.bat
Code:
@echo off & @echo.
CD /d "%~dp0"
mkdir %~dp0ISO
powershell.exe Dism /Get-WimInfo /WimFile:"%~dp0sources\install.esd"
@echo. & set /p index=" Type Image Index number to extract image: "
powershell.exe Dism /export-image /SourceImageFile:"%~dp0sources\install.esd" /SourceIndex:%index% /DestinationImageFile:"%~dp0ISO\install.esd" /Compress:max /CheckIntegrity
pause
Spoiler: 2-Mount_Windows_image.bat
Code:
@echo off & @echo.
CD /d "%~dp0"
del /F /S /Q "%~dp0sources\install.esd"
move /y "%~dp0ISO\install.esd" "%~dp0sources\install.esd"
mkdir "%~dp0PATH"
dism.exe /mount-wim /wimfile:"%~dp0sources\install.esd" /mountdir:"%~dp0PATH" /index:1
pause
This one create a file where you can check the Optional Features windows state then use batch to enable or disable, batch it will refresh the file with new state, just reload the file. But some of them aren't possible to change state, it gives error.
Spoiler: 3-Enable_Disable_options.bat
Code:
@echo off & @echo.
CD /d "%~dp0"
:start
cls
@echo. & @echo Open WindowsOptionalFeature.txt to check Optional Feature state & @echo.
Timeout /t 3 >nul
powershell.exe Get-WindowsOptionalFeature -Path "%~dp0PATH" > WindowsOptionalFeature.txt
set /p Feature=" Optional Feature name:-"
set /p state=" Enable or disable ? -"
powershell.exe %state%-WindowsOptionalFeature -Path "%~dp0PATH" -FeatureName "%Feature%"
@echo. & @echo Press any key to continue. & pause >nul
goto start
The last one dismount and do the clean
Spoiler: 4-Dismount_Windows_Image.bat
Code:
@echo off & @echo.
CD /d "%~dp0"
powershell Dismount-WindowsImage -Path "%~dp0PATH" -Save
RD /S /Q %~dp0ISO >NUL
RD /S /Q %~dp0PATH >NUL
del /F /S /Q %~dpWindowsOptionalFeature.txt >NUL
pause
Tell me if worked for you to!
Click to expand...
Click to collapse
I really really Thank You for Sharing your work with Us. You have no idea how happy this makes me. Outstanding~! Great Work, Persona!
@jenneh i update my post: https://forum.xda-developers.com/t/...-to-modify-windows-isos.4398285/post-86458077
I had how to do ISO image!
persona78 said:
@jenneh i update my post: https://forum.xda-developers.com/t/...-to-modify-windows-isos.4398285/post-86458077
I had how to do ISO image!
Click to expand...
Click to collapse
You are seriously a Rockstar~! I appreciate so Much Your Time~! This has saved me countless hours in research :>
Hi!
@jenneh im woking in a way to add the apps from windows app store to the offline windows imge that we are working on.
It use DISM tool to and it will request administrator rights at starts, dont need to execute as administrator.
I already have a batch, only need to test it!
Hi!
@jenneh i update the my post! I made possible to add app in to Offline Windows image!
i update all batch. They will auto request administrator permission to start!
Check 3.1.
persona78 said:
Hi!
@jenneh i update the my post! I made possible to add app in to Offline Windows image!
i update all batch. They will auto request administrator permission to start!
Check 3.1.
Click to expand...
Click to collapse
I absolutely love these updates! I can't believe how much work you've completed today! I also love the fact that with technology, there is literally No End~! It is the infinite! Haha.
Hi!
@jenneh can you make me a favor?
I dont use VM, im a bit short of storage....
I create this ISO image and want to know how it works. I had apps ( notpad++, 7zip, a theme and a pdf reader, i eneble to HyperV and some other things that i can´t remeber...!
I had done a mod that i read here on XDA and want to know if works to. It supose to install directly on unsuported PC with out any script or regestry change.
System is Windows 11 PRO.
Can you test it???
ESD-ISO_W11_PRO_MOD.iso
Thanks
@persona78 sure thing~! I'm downloading it now. I am at a good point for a break. About to chain all my tools together now that I finally understand what they are all doing x.e
@persona78
Spoiler: ERROR
well idk what this error is but no troubleshooting settings works
actually I just remembered, nox turned off my hypervisor functionality, one sec lemme try turning that back on
jenneh said:
@persona78
Spoiler: ERROR
View attachment 5545611
well idk what this error is but no troubleshooting settings works
Click to expand...
Click to collapse
It can´t read productkey setting...! hmmmm...
i don´t know what can be. Probably that last mod to avoid tmp maybe...
it stoped there???
persona78 said:
It can´t read productkey setting...! hmmmm...
i don´t know what can be. Probably that last mod to avoid tmp maybe...
Click to expand...
Click to collapse
ahhh okay! yeah I had the same error with hypervisor on but I'll try again if you like when it's finished~!
@jenneh it stops there??? Or keep installing?
persona78 said:
@jenneh it stops there??? Or keep installing?
Click to expand...
Click to collapse
oh wait i lied one sec
When i get home i will rebuild again but with out the last mod.
Thanks

Categories

Resources