Related
OK, I am editing Vodafone D2's CM-Entries.xml file which I got from the Vodafone customization CAB. I come up against registry values like this:
<characteristic type="Vodafone Web">
<parm name="DestId" value="{ADB0B001-10B5-3F39-27C6-9742E785FCD4}" />
Click to expand...
Click to collapse
I cross referenced with another file just to check - This is the same section but from the O2 globe settings file:
<characteristic type="myGlobe Internet">
<parm name="DestId" value="{AB1BD8BA-2A18-4486-8A29-ABBB57CBDC44}" />
Click to expand...
Click to collapse
The DestID values are different. Now I know that these aren't just random alphanumeric texts, they must mean something. So what do they mean? When I develop my CM_Entries files I know that I should not leave these values the same because a Vodafone DE user might want to use Vodafone DE settings AND my settings
What is a good way to assign registry values??
Thanks
Follow up question:
How do I make these installers non destructive?
what do I mean? here is an example:
I installed the vodafone DE customizations on my Siemens SX66. My Cingular MMSC information got wiped! My GPRS info is still there (under network connections), but in my messenging MMS section, only the vodafone MMSC is there, not the cingular one.
I would like to have my cabs be non destructive.
Hi
This is exactly what I'm trying to do. If the destID value does not correspond correctly with the characteristic type the cab does not install properly. Unfortunately without knowing the algorithm to compute the value from the characteristic name I'm a bit stuck (and there seems to be no information on this available). Furthermore cutting and pasting any of the xml code for the other characteristic types from the Pocket PC 2003 API Reference into CM_Entries file causes the cab not to install properly either, even though I assumed the destID values supplied in the example xml would be correct. I'm now making the assumption that there has to be corresponding information in the Platformxxx.reg file included with the cab which is written to the registry to make this stuff work properly, but again I can't find any information on it.
Is there ANYONE here that can shed a bit more light on this problem?
So there you are; in the heat of the kitchen, adding your favourite ROM ingredients ... pinch of this, sprinkle of that. Like all good chefs, you decide to take a taste of your preparation before serving to others - nothing is more embarrassing than a meal gone wrong.
So you try it ... wait! you say, something is not right. You're positive you added the ingredients but it's not right. Could it be that a darn .PROVXML didn't get processed in a package? Which one? Time to look at the .PROVXML and check if the entries made it ... what happens if you have a hundred or more .PROVXML's in your kitchen .\PACKAGES or .\EXT folder?
Well, here's a few quick tips for those who love/hate those .PROVXML's
Tip #1: dotFred (FdcSoft) Task Manager 3.1
dotFred Task Manager includes an option to install Provision(er) .XML files. To use it however, you need to make sure that an .XML header appears as the first line of your .PROVXML file. Additionally, you'll need to temporarily rename the .PROVXML to .XML before copying to your device for testing with dotFred Task Manager.
Code:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
Once you've confirmed that all is well with your .XML, remove the .XML header and rename the file back to .PROVXML ... you're done.
URL: http://www.dotfred.net/TaskMgr.htm
Tip #2: Log .PROVXML Processing
Another handy little trick, is to add the following code to the end of your .PROVXML file. Place the code at the end of the .PROVXML file - just before/above the </wap-provisioningdoc> statement. This way, the characteric is the last item processed if all is well with the contents of the .PROVXML file.
Place your logging registry value in the OEM registry sub-key; for example, HKLM\Software\OEM\PROVXML ... same place as the MASD sub-key where package version information usually appears. Saves having to look all over the device registry.
Code:
<wap-provisioningdoc>
...
<!-- Add Registry Entry To Log PROVXML (XDADevelopers DD.MM.YYYY) -->
<characteristic type="Registry">
<characteristic type="HKLM\Software\OEM\PROVXML">
<parm name="[COLOR=blue]<SIMPLENAME>[/COLOR]" datatype="string" value="[COLOR=blue]<PROVXMLFileName>[/COLOR]" />
</characteristic>
</characteristic>
</wap-provisioningdoc>
<SIMPLENAME>
Simple friendly registry (REG_SZ) value name; stick with the basics: a-z, A-Z, 0-9. For example, if your .PROVXML file is entitled mxip_Package_MyApp_0_0_0_0, you could set the [SIMPLENAME] to: MyApp0000
<PROVXMLFileName>
Actual .PROVXML filename; that's what it's all about right? What's the point of adding something meaningless. For example, if your .PROVXML file is entitled mxip_Package_MyApp_0_0_0_0, you would set <PROVXMLFileName> to: mxip_Package_MyApp_0_0_0_0.provxml.
Tip #3: RAPICONFIG
Another method to test .PROVXML file is to use the RAPICONFIG utility. XDA members cruiserrr and kheechun report that RAPICONFIG is a quick (and painless) way to test .PROVXML files. Copy the RAPICONFIG (and other utilites) to your kitchen, connect your mobile device via ActiveSync, prepare an .XML file with the registry keys to upload/download, and submit the .XML via RAPICONFIG.
URL: http://forum.xda-developers.com/showthread.php?p=1899755#post1899755
URL: http://msdn.microsoft.com/en-us/library/bb737283.aspx
Tip #4: ANSI or Not To ANSI. And If Not, UTF-8 with/without Signature
Well that is the question, and frankly, i'm not sure there's a right or wrong answer. For example, some Microsoft forum/blog entries seem to elude to ANSI being the preferred choice if the .PROVXML will contain certificate information.
Other forum/blog entries and seasoned chefs will tell you to save them as UTF-8 with Unicode BOM Signature. Others yet, will recommend UTF-8 ... no signature.
So, that is the question indeed ...
Understanding Provisioning
http://msdn.microsoft.com/en-us/library/aa456234.aspx
Metabase Settings
http://msdn.microsoft.com/en-us/library/bb737493.aspx
Provisioning for Windows Mobile-Based Devices
http://msdn.microsoft.com/en-us/library/ms894922.aspx
Configuration Service Provider Reference for Windows Mobile-Based Devices
http://msdn.microsoft.com/en-us/library/ms889539.aspx
Thanks for sharing, these are all good suggestions.
In my case, when I want to know if my provxml is going to work, I usually just put the file into an installable cab and run it on the phone. If setup was successful, then at least I've confirmed that the syntax was good.
You have to rename the *.provxml file to _setup.xml and then insert it into a cab with:
Code:
MAKECAB _setup.xml InstallCabFile.cab
Another tool to check syntax is the free Microsoft XML editor.
Best regards,
-boggsie
boggsie said:
Another tool to check syntax is the free Microsoft XML editor.
Click to expand...
Click to collapse
XML Notepad 2007
http://www.microsoft.com/DownLoads/...49-787d-4118-ba5f-4f30fe913628&displaylang=en
IMHO the most "easyer" way to know if the syntax is OK is to rename the provxml to .xml and double click it:
If properly written, Internet Explorer (IE) will launch and display the full text
If not, IE will display where it stopped reading (where the error is) and the provxml will not be displayed
Other important aspect is the "file operations":
A provxml will not execute a file operation on a non-existing directory (folder), so the whole provxml contents won't be executed
my 2 cents and congrats for all your great tuts hilaireg
Very, very nice info indeed. HUGE thanks for sharing these tips!
gtrab said:
Other important aspect is the "file operations":
A provxml will not execute a file operation on a non-existing directory (folder), so the whole provxml contents won't be executed
Click to expand...
Click to collapse
This is virtually always what trips me up - forgetting to make a dir before doing something.
With regards to ANSI/UTF-8 etc. I always save as UTF-8 (no signature) and don't have any issues. If I mistakenly save as something else (perhaps by copying the xml into a new file) then I have problems with it not running.
I use all the methods commented here but I am missing another one: rapiconfig.exe lets you download the registry part you want as xml and as well upload it. Combining this with ceregeditor and a dump key like described above it is easy to see if things happened. In fact, rapiconfig can download the answer to a file as well.
Very useful for the start menu, hardkeys, owner, etc.
indeed, I found that RAPICONFIG.exe is the BEST so far, really made my life much easier OP if possible please include that to the top post
It would be my pleasure to add that to the first post. I haven't personally tried this method ... would you mind writing up the steps/procedures and any tips? If you have some links, it would be helpful to have them as well in case other members need the tools.
Cheers,
hilaireg said:
It would be my pleasure to add that to the first post. I haven't personally tried this method ... would you mind writing up the steps/procedures and any tips? If you have some links, it would be helpful to have them as well in case other members need the tools.
Cheers,
Click to expand...
Click to collapse
here you will find a great post with a nice how-to-do.
http://forum.xda-developers.com/showthread.php?p=1899755#post1899755
Yup, found it via the above link as well, it contains instructions on how to extract binary data into XML/provisional XML for UC.
However if you want to test your XML/PROVXML, just use the command
rapiconfig.exe /p <file.xml>
It'll feedback if there is any error in the XML.
However to make a postivie confirmation, you still have to check your file system/registry to see if the actions are taken.
Here is the official information:
http://msdn.microsoft.com/en-us/library/bb737283.aspx
Provisioning overview and Rapi~ Utilities
What can be 'provisioned' for phones?
1 Server provisioning
2 User provisioning
3 Mobile subscriber provisioning
4 Mobile content provisioning
5 Internet access provisioning
Provisioning Mobile Devices an introduction/article about 'provisioning'.
Windows Mobile Provisioning Samples some samples provided by Microsoft
Understanding Provisioning This is the main concept
Here my RapiUtils;
- RapiAttr: Modifies a file's attributes
- RapiCopy: Copies a file between the desktop and a connected device
- RapiDir: Create or remove a directory on the device
- RapiExists: Determines if a file exists
- RapiMove: Move or delete a file on the device
- RapiProc: List and terminate processes on the device
- RapiReg: View and modify registry keys on the device
- RapiStart: Launches an executable on the device
- RapiSync: Sync files from a directory to the device
- RapiTime: View and modify a file's timestamp
- RapiTree: Produces a "dir" like output of a directory.
- RapiGrab.bat: Uses RapiCopy to take a screen shot of the device and copy it to the desktop
- BatteryMon.exe: Desktop utility to present a simple graph showing battery charge for a connected device.
- CeKeyboard2.exe: Desktop utility to copy keyboard keys from the desktop to a connected device.
.NET XML PowerToys:
Generating XML Documents from XML Schemas
The XML Diff and Patch GUI Tool
Using the XML Diff and Patch Tool in Your Applications
Using the XSD Inference Utility
XML Tools Update
Power Toys for .NET Compact Framework 3.5
&
NETCFv35.Messages.EN.wm.cab
MSXML SDK
Would it not be great when we have a Bootstrapping Server here on XDA-Developers ? Converting our _setup.xml via makecab into *.CPF (CAB Provisioning File) and upload 'm to our (future) OMA DM server <g>
Understanding Bootstrapping
Have a nice read and rapi-config-battle,
Edit:
While surfing the net I stubmled upon Mobile Profiler (freeware) and it does a nice job for me; creating on the fly wap-provisioningdocs
-=[ extract downloaded *.exe with Universal Extractor to obtain the *.cab without using ActiveSync ]=-
Mobile Profiler (slightly edited) description;
Mobile Profiler is a tool for creating and restoring system states in XML based snapshots.
It is specialized to save and restore network settings like proxy servers and connection entries. Though there is more..
Whenever you switch a phone profile, Mobile Profiler restores the assigned snapshot.
There is a stand alone mode available for users without phoneAlarm (not free) or for manual switching. \o/
Many things can be stored into a snapshot ;
system settings,
registry keys,
file operations.
The snapshots are simple XML document which can be manipulated with any unicode aware editor.
Have fun,
Senax
I also had a problem with my .provxml and sometimes I wonder if the file itself was missed.. are there any standard naming of .provxml files? I had my .provxml configuration files in "Sources\Devices\HTC Raphael\OEM Packages\HTC Raphael Packages\OperatorPkg" am using osKitchen by the way..
I really don't see any errors in my .provxml but you can take a look at it and tell me if I missed something.
-update-
oh and I got to ask, I read here somewhere in this thread that if the reg key does not yet exists, it will not read my specific reg entry? Is there anyway that I can create this key using .provxml?
Nullstring said:
I also had a problem with my .provxml and sometimes I wonder if the file itself was missed.. are there any standard naming of .provxml files?
Click to expand...
Click to collapse
Assuming you have looked at the links in Post #1 (Tip 4), I haven't found much more on the subject.
I had my .provxml configuration files in "Sources\Devices\HTC Raphael\OEM Packages\HTC Raphael Packages\OperatorPkg" am using osKitchen by the way..
I really don't see any errors in my .provxml but you can take a look at it and tell me if I missed something.
Click to expand...
Click to collapse
Other than the header not having been removed as noted in Post #1 (Tip 1), the rest of the file looks fine to me. Have you tried using FDC Task Manager to import the .PROVXML?
oh and I got to ask, I read here somewhere in this thread that if the reg key does not yet exists, it will not read my specific reg entry?
Click to expand...
Click to collapse
AFAIK, the registry key should be created automatically - providing of course that the key path is valid.
Is there anyway that I can create this key using .provxml?
Click to expand...
Click to collapse
I make use of .provxml files extensively in my Raphael Kitchen; feel free to download it and examine the operator packages.
@hilaireg
thank you for that wonderful information! After fixing these xmls in VS IDE, they finally worked.. I just removed these comments and extra blank lines and put all these reg entries in one node <characteristic type="Registry"> they all seems to work now.
1 last question. in my OperatorPkg folder, I have 10 .provxml files and they were named mxiupdate_oemoperators_###.provxml + 1 mxiupdate_OEMVERSION_###.provxml
is it ok to just add my own .provxml? If I try to name it not in standard way like my_own_settings.provxml, is that ok?
Nullstring said:
@hilaireg
thank you for that wonderful information! After fixing these xmls in VS IDE, they finally worked.. I just removed these comments and extra blank lines and put all these reg entries in one node <characteristic type="Registry"> they all seems to work now.
1 last question. in my OperatorPkg folder, I have 10 .provxml files and they were named mxiupdate_oemoperators_###.provxml + 1 mxiupdate_OEMVERSION_###.provxml
is it ok to just add my own .provxml? If I try to name it not in standard way like my_own_settings.provxml, is that ok?
Click to expand...
Click to collapse
You should be able to add your .provxml to those that appear, observe the file naming convention however. Some .provxml only run when the device goes through a full reinitialization (first-time run), others run whenever the device is reset/soft initialized.
REF: http://msdn.microsoft.com/en-us/library/bb737493.aspx
Lastly, I usually create my "operator" package which contains all of the .provxml I need.
Cheers,
Provxml sequence: 1.) mxipcold*, 2.) mxip_* 3.) mxipupdate
Basically a copy of what I just wrote to the OSB thread, however technically it belongs better here:
You know that there are not many methods to debug this early phase of boot when the provxml execute, so I supplied a dedicated trace at the end of each provxml:
Code:
<!-- trace execution begin
*** change the [B][COLOR=Red]<filename>[/COLOR][/B].traced below to the name of
*** the .provxml where you copy this at the end.
Purpose: Utilize the creation of a shortcut
to get a system timestamped artifact in the context
of the current provxml execution.
After Cold Boot (Hard Reset), you can sort the
directory \Windows\ProvXml\ by file date and
you have the sequence of .provxml execution listed.
-->
<characteristic type="FileOperation">
<characteristic type="%CE2%\ProvXmlTrace" translation="install">
<characteristic type="MakeDir" />
<characteristic type="[COLOR=Red][B]mxipupdate_windowslive_1[/B][/COLOR].traced" translation="install">
<characteristic type="Shortcut">
<parm name="Source" value="%CE2%\solitare.exe" translation="install"/>
</characteristic>
</characteristic>
</characteristic>
</characteristic>
<!-- end of trace activity -->
Result was that from all executed provxml (their names were timestamped traced in the \windows\ProvXmlTrace directory) the sequence is this:
all mxipcold* in the relative sequence of their packages.sof
mxip_* others (also mxip_cold_* which is something that the HtcInit may care about later) in the relative sequence of their packages.sof
all mxipupdate* in the relative sequence of their packages.sof
Mind that the name of the package in the name of the provxml file is the reason to pick it like above, not the directory it is stored in! So no matter where you store the *.provxml in your kitchen path, it is only the name and the highest priority match it has for execution above.
I noticed this because I had a file "mxipcold_smartfon_TB.provxml" put last in the sequence row of my packages (some Z_OEM_my settings), also had the *.DSM set correctly and likewise the packages.sof definition. However there was also a file "mxipcold_smartfon_1.provxml" which was part of the \SYS\CommonNonEA package and this was further up the list in packages.sof. Still it was not at the top of the list, where only other mxip_* and mxipupdate packages were located. So for sure it is that first come all mxipcold*, then all mxip_* and finally all mxipupdate packages. It is also sure that mxip*<packagename>*.provxml will be executed at highest place in priority no matter by which <guid>.dsm in the packages.sof it has been elevated there.
You must note that HTC (others maybe as well) have an additional method to initialize the device. You may find a driver "htcinit.dll" in the OEM drivers section which will then call a "HtcColdBoot.exe". This may have additional capabilities and put the mxip*.provxml in possibly another sequence.
Since this is part of the OEM and the native Windows mobile has their own coldboot treatment (via coldinit.exe) their worksplit and alignment requires dedicated attention if you want to keep the OEM part.
Above findings come from the pure Windows Mobile treatment (i.e. without htcinit.dll driver).
You can trace sequence with above listed method in your own environment.
hi guys,
having issues with a 6.5 kitchen...
image files arent being associated with any program...
does anyone know how i can revert to the default HTC pimg.exe (image viewer) or even HTC album
this will be for .jpg / jpeg / .bmp / .gif files
if someone can help me with cooking this into my rom it'll be muchly appreciated
cant believe no one is willing to help
ryousuke said:
cant believe no one is willing to help
Click to expand...
Click to collapse
try this here
thanks for the reply but i'm hoping to do this via registration @ OS install rather than through software post wm6.5 setups...
any one else able to create a reg to implement it?
i can not belive
nobody willing to help you
you can fix it yourself !!!
if you just used the "search button"
for bug correcting
1. correct the bug
2. open an reg editor
3. save the key that you need as name.reg
4. add it to your kitchen
also you can add metadata folder to sys
REGEDIT4
[HKEY_CLASSES_ROOT\jpegfile]
@="JPEG Image"
[HKEY_CLASSES_ROOT\jpegfile\DefaultIcon]
@="\windows\HTCAlbum.exe,-300"
[HKEY_CLASSES_ROOT\jpegfile\Shell]
[HKEY_CLASSES_ROOT\jpegfile\Shell\Open]
[HKEY_CLASSES_ROOT\jpegfile\Shell\Open\Command]
@="\windows\HTCAlbum.exe "%1""
this is the patch for you
fo the same for all picture extensions
or you can just edit
Album_3_2_19193429_0\files\mxipupdate_MASD_zzzHTCAlbum_RegKey.provxml
<characteristic type="HKCR\jpegimage\DefaultIcon" translation="filesystem">
<parm name="" datatype="string" value="HTCAlbum.exe,-300" translation="filesystem"/>
</characteristic>
to
<characteristic type="HKCR\3gpfile\DefaultIcon" translation="filesystem">
<parm name="" datatype="string" value="HTCAlbum.exe,-300" translation="filesystem"/>
</characteristic>
all this with just an simple search
i did search here and in google all wkend...
tried first method with the reg editing still not working...
will try the 2nd method tomorrow when i have some time...
htc album often has a provxml that fixes the file associations for album. find the packages from mega and edit the provxml to be pimg instead of album. provxml gets installed at first boot without the need for auto run. that would be the sure way to fix your problem.
i'll check the provxml file when i get home (will comment the fields out)
thing even if i dont install HTC album the files arent associated...
and i recall the provxml file already 'trying' to add associate to htc (obviously not working) as when i added it to enrivus kitchen the software works but as mentioned above no link in file explorer / titanium pictures.
thanks for the help
Hello,
I've got some windows mobile 5 handhelds that I'm running in kiosk mode. One of the applications that can be run from the kiosk has the ability to access Internet Explorer. I want to be able to disable internet explorer so even when the user tries to access this feature, IE will not pop-up.
From what I've seen while searching on google, there is no direct way to remove PIE or even disable it. I've searched ways to black list programs and found this link here: http://www.satter.org/2007/03/lets_shell_some.html. This seems like it would work. It's a registry fix but I can't seem to get the .CPF file to update the configuration on the handheld. The error I get is 'your device settings cannot be changed by Test.cpf'. I assume I need to sign the .CPF file but I am unsure how to do this exactly...
Any thoughts if this will work or other methods???
Thanks!
Zac
Ok so after looking into this further I learned the certificates in the WM5 and 6 SDK folders are outdated. I downloaded newer certificates and installled the updated certs.sdk to the handheld but the cpf file still will not work. The error now is: 'The program or setting could not be installed because it is not digitally signed with a trusted certificate.' The updated certs I got are all trusted (I think). The cert I am using is SDKSamplePrivDeveloper.pfx.
Nevermind, got it to work. I didn't need to do any signing at all, just needed to remove some not needed XML in my _setup.xml file.
For what it's worth, here's the XML to blacklist an application (in this case PIE):
Code:
<?xml version="1.0" encoding="utf-8" ?>
<wap-provisioningdoc>
<characteristic type="Registry">
<characteristic type="HKLM\Security\Policies\Shell">
<parm name="DisallowRun" value="1" datatype="integer" />
</characteristic>
<characteristic type="HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\DisallowRun">
<parm name="1" value="iexplore.exe" datatype="string" />
</characteristic>
</characteristic>
</wap-provisioningdoc>
Well done, solved your problem yourself, and in the mean time a new guide generated for people who wanted to do this.
Thansk
madnish30.
hi,
thanks for this tweak very interesting but i'm on WM 6.5.5 Titanium Energy Rom and there is no _setup.xml, can not find it so can not do this tweak or i missed something , could you help, be more explicit...
Second question, is there a possibility to know exactly witch applications, process are launch when windows start?
Thanks
V.
MakeCab Tutorial
voyd said:
hi,
thanks for this tweak very interesting but i'm on WM 6.5.5 Titanium Energy Rom and there is no _setup.xml, can not find it so can not do this tweak or i missed something , could you help, be more explicit...
Second question, is there a possibility to know exactly witch applications, process are launch when windows start?
Thanks
V.
Click to expand...
Click to collapse
Hello,
You create an XML file on your PC called _setup.xml and use makecab.exe that comes with the WM5/6 SDK from the command line to create a CAB file.
But, to make life simpler, I've attached this zip file which has makecab.exe, my _setup.xml, and also a task manager program you can run on WM that I've downloaded (it has a registry editor built into it too, which is convenient ).
To use:
1) Make any changes you need to _setup.xml
2) Run makecab.exe from the command line with this syntax: "makecab _setup.xml <'filename'.cab>"
3) Install this on the handheld, reboot device, run the program you've blacklisted and enjoy the access denied pop up!
Blacklist _setup.xml:
Code:
<?xml version="1.0" encoding="utf-8" ?>
<wap-provisioningdoc>
<characteristic type="Registry">
<characteristic type="HKLM\Security\Policies\Shell">
<parm name="DisallowRun" value="1" datatype="integer" />
</characteristic>
<characteristic type="HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\DisallowRun">
<parm name="1" value="iexplore.exe" datatype="string" /> <!-- change 'value' to whatever program you want blacklisted -->
<!-- <parm name="2" value="ANOTHER_PROGRAM.exe" datatype="string" /> -->
<!-- <parm name="3" value="YET_ANOTHER_PROGRAM.exe" datatype="string" /> -->
</characteristic>
</characteristic>
</wap-provisioningdoc>
Disable Backlist _setup.xml:
Code:
<?xml version="1.0" encoding="utf-8" ?>
<wap-provisioningdoc>
<characteristic type="Registry">
<!-- Disable DisallowRun -->
<characteristic type="HKLM\Security\Policies\Shell">
<parm name="DisallowRun" value="0" datatype="integer" />
</characteristic>
</characteristic>
</wap-provisioningdoc>
To answer your second question, most startup programs will be listed under the /Windows/StartUp folder.
Hope this helps!
madnish30 said:
Well done, solved your problem yourself, and in the mean time a new guide generated for people who wanted to do this.
Thansk
madnish30.
Click to expand...
Click to collapse
Thank you! Glad to help out!
another alternative
Hello people,
Here's another alternative which does not involve making cab files / fiddling with the registry (not all devices support this, since they are ROM_hardcoded);
WM5/6 command DONOTHiNG.EXE copy to device make shortcut link to Program Files
http://www.stephan-brenner.com/?p=190
Rename iexplore.exe to *.bak
Copy donothing.exe to \Windows\
Rename donothing.exe to iexplore.exe
done
Of course there are 101 other wonderfull 'solutions' to think of using donothing.exe
ThanX a ton for these wonder full wapprovisioning xml
FYC:
WinCE CAB Analyzer (MSCEInf): .CAB extraction
ExtenDir CABS .CAB creation (PgDn a bit) (optionally ExtenDir should be switched off if you're not using it!! )
Converting packages or your favorite tweaks to a setup cab was never so easy!
o/~
Senax said:
Hello people,
Here's another alternative which does not involve making cab files / fiddling with the registry (not all devices support this, since they are ROM_hardcoded);
WM5/6 command DONOTHiNG.EXE copy to device make shortcut link to Program Files
http://www.stephan-brenner.com/?p=190
Rename iexplore.exe to *.bak
Copy donothing.exe to \Windows\
Rename donothing.exe to iexplore.exe
done
Of course there are 101 other wonderfull 'solutions' to think of using donothing.exe
Click to expand...
Click to collapse
This method does work, the only concern I had with this was what if an administrator needs to get have access to that program that is overwritten? In my case if I overwrote iexpore.exe then I'd have no way of accessing the internet or downloading any vital programs (unless they were already installed before hand). My device had no way to USB connect and bluetooth file transferring was becoming a pain to get to work so that's why I used the CAB method downloading them first through PIE from a virtual directory then disabling PIE.
But hey, if you're sure you won't need PIE or any other program you want disable this method works great!
Thanks!
Or Batch iT
Why not make a batch file? Use a standard ASCII editor like Notepad.exe and copy + paste the following code (assuming running from C drive). Make sure Word-Wrap = OFF (always while editing (source))!
Code:
@ECHO OFF
@REM renaming of blacklisted application(s) back to original so one can operate executables as expected
C:
CD\
CD Windows\System32\
@REM Remember the short 8.3 filename (stick to that within batch files).
REN YourExecutable.exe donothin.exe
@REM Assuming you renamed original *.exe to *.e_e
REN YourExecutable.e_e Depends.exe
@REM Need to switch drives/partition? Just type its letter D: [ENTER] CD\ [so windows its current PATH is the root of the current drive].
:END
EXiT
Online DOS_Batch handbook
Senax said:
Why not make a batch file? Use a standard ASCII editor like Notepad.exe and copy + paste the following code (assuming running from C drive). Make sure Word-Wrap = OFF (always while editing (source))!
Code:
@ECHO OFF
@REM renaming of blacklisted application(s) back to original so one can operate executables as expected
C:
CD\
CD Windows\System32\
@REM Remember the short 8.3 filename (stick to that within batch files).
REN YourExecutable.exe donothin.exe
@REM Assuming you renamed original *.exe to *.e_e
REN YourExecutable.e_e Depends.exe
@REM Need to switch drives/partition? Just type its letter D: [ENTER] CD\ [so windows its current PATH is the root of the current drive].
:END
EXiT
Online DOS_Batch handbook
Click to expand...
Click to collapse
Nice! Very simple to use!
While cooking my ROM for testing under emulator, i create a directory called "MyTweeks" and copy it under sys folder.
That directory includes the following files:
1- "mytones.mp3".
2- "initflashfiles.txt" --> empty.
3- "option.xml" --> contents are not necessary.
4- "7fd5181e-f7fc-4404-908a-7f71e2568c53.rgu"
The .RGU file includes:
REGEDIT4
;
; Set Default RingTone
;
[HKEY_CURRENT_USER\ControlPanel\Sounds\RingTone0]
"Script"="apr"
"Sound"="\\Windows\\mytones.mp3"
After the ROM boots-up, i found the .MP3 file copied successfully to \windows directory, but the registry tweak is not there
can any one tell me what's wrong with this .RGU?
Also, any registry entry is missing....
You should post this to the respective kitchen thread to get an answer.
you better check for duplicated GUID(number) or post your whole rgu contents. do you have enter(empty line) at its end?
eventually - another guid has priority because of overall number rule(thus your tweak is overwritten by another rgu).
and ignore posts like above...it's typical here;/(you know +1 to posts count, but 0 help given).
pupakota said:
you better check for duplicated GUID(number) or post your whole rgu contents. do you have enter(empty line) at its end?
eventually - another guid has priority because of overall number rule(thus your tweak is overwritten by another rgu).
and ignore posts like above...it's typical here;/(you know +1 to posts count, but 0 help given).
Click to expand...
Click to collapse
Your comment sounds good for me.
I already post all the content of the .RGU file as above, nothing more in the file.
Yes, i entered a blank line just before the end of the file.
There is no other GUID with the same name in the whole project at all, it is actualy unique number like this:
7fd5181e-f7fc-4404-908a-7f71e2568c53.rgu
How can i give this .RGU a priority? or make the changes after all other changes?
if this question couldn't be answer here, where exactly should i post (whitch Threads)?
higher number has higher priority(at last in normal kitchens), so ffxxxxxx- will overwrite 7fxxxxxx-.
just do search for HKEY_CURRENT_USER\ControlPanel\Sounds\RingTone0 on whole kitchen(UNICODE search) to determine, if that reg entry is doubled/tripled etc...also, make another search(ascii search) for same reg entry regarding provxmls(as it's another way of reg import, and this is overwriting all rgu's eventually).
on the other hand i wonder about mp3 as ringtone, are you sure, if that file is ok(i mean, if it really work as ringtone on your actual rom)? sometimes system sets ringtone to default, if file set is let's say..bad.
btw, do not make guid by yourself, use tool for this:
www.guidgen.com
ahhh, another thought:
try to add
"DefaultSound"="\\windows\\xxx.xxx"
to your reg.
|
v
Code:
REGEDIT4
[HKEY_CURRENT_USER\ControlPanel\Sounds\RingTone0]
"Script"="apr"
"DefaultSound"="\\Windows\\mytones.mp3"
pupakota said:
higher number has higher priority(at last in normal kitchens), so ffxxxxxx- will overwrite 7fxxxxxx-.
just do search for HKEY_CURRENT_USER\ControlPanel\Sounds\RingTone0 on whole kitchen(UNICODE search) to determine, if that reg entry is doubled/tripled etc...also, make another search(ascii search) for same reg entry regarding provxmls(as it's another way of reg import, and this is overwriting all rgu's eventually).
on the other hand i wonder about mp3 as ringtone, are you sure, if that file is ok(i mean, if it really work as ringtone on your actual rom)? sometimes system sets ringtone to default, if file set is let's say..bad.
btw, do not make guid by yourself, use tool for this:
www.guidgen.com
ahhh, another thought:
try to add
"DefaultSound"="\\windows\\xxx.xxx"
to your reg.
|
v
Code:
REGEDIT4
[HKEY_CURRENT_USER\ControlPanel\Sounds\RingTone0]
"Script"="apr"
"DefaultSound"="\\Windows\\mytones.mp3"
Click to expand...
Click to collapse
1- MP3 as a ringtone is working fine if i manually change it. why you're wondering about that?
2- I tried to do the registry manually after booting, it works great. but in kitchen it isn't.
3- I tried many time to Generate a UUID by the help of the site you sent me with no success.
4- I did a search in the project and found the following:
Search "RingTone0" (4 hits in 4 files)
G:\HTC-HD2\Work\SYS\OS\mxipupdate_metabase_001.provxml (1 hits)
Line 1: <?xml version="1.0"?><wap-provisioningdoc><characteristic type="Metabase"><characteristic type="FileOperation\%CE2%\MenuUpArrowDisabled.bmp\*" translation="install"><parm name="datatype" value="string" /><parm name="semantic-type" value="file" /><parm name="rw-access" value="3" /><parm name="access-role" value="88" /></characteristic><characteristic type="FileOperation\%CE2%\MenuUpArrowBackground.bmp\*" translation="install"><parm name="datatype" value="string" /><parm name="semantic-type" value="file" /><parm name="rw-access" value="3" /><parm name="access-role" value="88" /></characteristic><characteristic type="FileOperation\%CE2%\MenuUpArrow.bmp\*" translation="install"><parm name="datatype" value="string" /><parm name="semantic-type" value="file" /><parm name="rw-access" value="3" /><parm name="access-role" value="88" /></characteristic><characteristic type="FileOperation\%CE2%\MenuSelector.bmp\*" translation="install"><parm name="datatype" value="string" /><parm name="semantic-type" value...
G:\HTC-HD2\Work\SYS\Phone\2a6583ff-6047-46cc-b9be-b7deca1152c3.rgu (1 hits)
Line 125: [HKEY_CURRENT_USER\ControlPanel\Sounds\RingTone0]
G:\HTC-HD2\Work\SYS\Shell\mxip_system.vol (1 hits)
Line 71:
G:\HTC-HD2\Work\SYS\zzz_MyTweeks\ffe8dc40-7d63-11e0-a411-0800200c9a66.rgu (1 hits)
Line 17: [HKEY_CURRENT_USER\ControlPanel\Sounds\RingTone0]
5- I tried "DefaultSound" with no success.
Thanks.
You didn't mention a .dsm. I suspect you need to create one with the same guid as the .rgu.
Farmer Ted said:
You didn't mention a .dsm. I suspect you need to create one with the same guid as the .rgu.
Click to expand...
Click to collapse
I used "totalfire" to create one but the same problem still there.
also, if i removed it from the folder, the BuildOS creates a dummy one with the same results.
really, i fed-up, but i'm thanking all of you whom tried to help
I just need any one of whom success to apply his own registry tweaks in his cooked ROM to tell me how he did it..
As Simple As this....
edit.. I attached the files that i need it to be installed...
ok, this may be weird what i am gonna write, but have you tried to place your ringtone in proper place designed for additional ringtones by initflashfiles?
here's catch - some things WONT work when not COPIED while first boot.
i have no time for explaining this, but try to edit initflashfiles to copy this ringtone to proper place, than edit reg to match.
and another interesting thing: try to rename Mytones to mytones.
before this - check one thing with rom that was not working earlier - make sr, and go into windows to see, if your file became..folder.
there's small chance of getting weirdness with files with capital letters in name, sometimes.
and finally - did you make softreset before checking, if ringtone is set after flash(do NOT check this before first softreset)?
and postfinally - convert your file to something native for WM(weak advice, but...).
btw, skip dsm for this, it is useless for such things.
@pupakota
I tried but still something wrong.
I have no problems with the file copy, the file copied successfully.
The problem with the registry entries... any registry entries within the .RGU file didn't applied after flashing the ROM or even First Softreset after first boot.......
There are nothing changed in the emulator registry for any of the registry entries.
one thing, you are making this for emulator(Oo)?
have you checked your pack on real device?
you shouldn't take emulator behaviour as sure mirror of real thing...
You should try putting another registry key into that .rgu; it could just be a dummy key (like hklm\software\test). Then see if it is parsed during cooking. It's starting to sound more like a provxml is over-writing your values during bootup.
Farmer Ted said:
You should try putting another registry key into that .rgu; it could just be a dummy key (like hklm\software\test). Then see if it is parsed during cooking. It's starting to sound more like a provxml is over-writing your values during bootup.
Click to expand...
Click to collapse
That's exactly what happened.
The Dummy was not posted.
So, Whitch provxml is over writing my REG? or how i could come over this prob?.
robekia1 said:
That's exactly what happened.
The Dummy was not posted.
So, Whitch provxml is over writing my REG? or how i could come over this prob?.
Click to expand...
Click to collapse
Search for all provxml in oem, and go through them!