Auto Wifi On Of - Windows Mobile Software Development

Oke,
I wanted to create a program that enables wifi when Internet Explorer is opened.
I found the mortscript scripts page, and I tried that program
Didn't work
I made myself one, with vjvolubilis, but that doesn't work either...
This are my codes:
Code:
While (1)
If WndExists "Internet Explorer"
Run "\Storage Card\Program Files\vijay555\VJVolubilis\VJVolubilis.exe" -wifion
Sleep 2000
If not WndExists "Internet Explorer"
Run "\Storage Card\Program Files\vijay555\VJVolubilis\VJVolubilis.exe" -wifioff
EndIf
EndIf
Sleep 2000
EndWhile
I tried to place -wifion between the ", but that didn't work either..
Now I made 2 shortcuts
pointing at "\Storage Card\Program Files\vijay555\VJVolubilis\VJVolubilis.exe" -wifioff
and
"\Storage Card\Program Files\vijay555\VJVolubilis\VJVolubilis.exe" -wifion
I called them WifiOn and WifiOff
They don't work either
I have a Qtek9100 with windows mobile 5.
Thanks!

try AEButton plus to switch wifi on and off
http://ae.inc.ru/aebpluscline.php

Do the VJVolublis wifi functions work normally, without mortscript?
It hasn't been updated for a LONG time, so I thought they didn't work these days.
V

Unzip and place the little app, you see as attachment, in "\device"...
Then this should work:
Code:
Runwait( "\Wifi.exe" )
Runwait( "\Windows\iexplore.exe" )
Runwait( "\Wifi.exe" )

thanks for helping me out

HTC TyTn II WM6
vijay555 said:
Do the VJVolublis wifi functions work normally, without mortscript?
It hasn't been updated for a LONG time, so I thought they didn't work these days.
V
Click to expand...
Click to collapse
Hello.
What would a script for WM6?

flaviopac said:
Unzip and place the little app, you see as attachment, in "\device"...
Then this should work:
Code:
Runwait( "\Wifi.exe" )
Runwait( "\Windows\iexplore.exe" )
Runwait( "\Wifi.exe" )
Click to expand...
Click to collapse
[off topic]
How made that exe?
I want to make it for another app like Opera, QuickGPS etc.
I tried to open it with ResHacker but it didn't worked.

Related

Applying registry changes in a .cab-file?

Hi!
Is it possible to create a .cab-file which does not install anything, but only applies a number of registry changes? This way you would be able to "install" changes to the registry along with the other .cab-files running from the extended ROM after a hard-reset. How do I do that?
Any other ideas as to how to auto-apply registry changes are also very welcome Thanks..
/Joe72
No problem, just use WINCE Cab Manager. For learning purposes you should open some of the CAb-Files that came with the original ExtROM. Most providers split the registry settings to different files so that I reduced the size of my ExtROM by merging them (take those files, that just have 46kb, they only contain registry entries).
Open them with the above mentioned CAB Manager and look for a file named "platformxx", extract it, edit it, perform the desired changes (or mergers) and import to CAB Manager. Make sure that you remove the old "platformxx" and change the settings of the imported file so that it matches the settings of the deleted one (most times you have to make sure that the installation paths "hard coded" to the windows folder (edit the properties of the old file before and write them down).
unfortunately not all the flags for modifying the registry are supported by the wince cabloader.
full cab spec: http://msdn.microsoft.com/library/en-us/install/hh/install/inf-format_2v02.asp
wince cab spec:
http://msdn.microsoft.com/library/en-us/wcepb40/html/pbrefaddreg.asp
this is an example minimal cab.inf file:
Code:
[Version]
Signature = "$Windows NT$"
Provider = "testprovider1"
CESignature = "$Windows CE$"
[CEStrings]
AppName = "testappname1"
InstallDir = "%CE1%\installdir"
[Strings]
reg_path= "Software\testregpath"
[CEDevice]
ProcessorType = 2577 ; arm
UnsupportedPlatforms = "HPC","HPC Pro","Pocket PC"
VersionMin = 3.00
VersionMax = 4.99
[DefaultInstall]
Copyfiles=CopyToInstallDir
AddReg=RegSettings
[RegSettings]
HKCU,%reg_path%, "testdword",0x00010001,1
HKCU,%reg_path%, "teststring",0,"teststringvalue"
HKCU,%reg_path%, "testmultistring",0x00010000,"teststringvalue","second string", "third string"
HKCU,%reg_path%, "testbinary",1,44,45,46,47,48,49,4a
[SourceDisksNames]
1 = ,"All Files",,
[SourceDisksFiles]
"mktst.bat"= 1
[DestinationDirs]
CopyToInstallDir= 0, "%InstallDir%"
create the cab with:
Code:
Windows CE Tools\wce420\Pocket PC 2003\tools\cabwiz cab.inf /cpu arm /err caberrors.log
HTC has provided a more extensive install tool, with the CESetup.dll that is in all the cabs, this tool will import a 'platformxxx.reg' file if present in the .cab.
Hi
Thanks for the replies.
It seems like more work than I thought it would be..
In WinCE Cabmanager, there is a "Registry" fold-out in the left side menu similar to the one seen in Regedit.exe on Windows desktop or Remote registry from the Embedded C++ package. My initial plan was to import the registry into a cab-file and use this tool to change the things I want changed. This way, the cab-file would contain no files for installation, but a complete registry, modified to my needs. When running this cab-file on the WinCE device, I was expecting this registry to take the place of the old one.. Or would something else happen?
Thanks,
Joe72
I did it the easy way. I installed all my apps and stuff that I need and then made a backup of the registry, which I then flash installed into the extended ROM section of the phone.
So on a hard reset all my stuff gets installed, including of course a regedit program and hack to view extended rom. All I then do is open the regedit program and restore the registry in one go from the extended rom.
Used PHM Regedit for it.
where can i find the information that it is not visibly in the "remove programs"?
I want generate a programm that is not removable.
Thx for Your help
Snappy
What encoding should I use in platformxxx.reg to make parameters which contain non-latin characters displayed correctly? I tried Windows-1251, UTF-8, Unicode. In all cases russian text is not imported correcty. It is displayed in Western encoding.
P.S. When I use Registry branch in WinCE CAB Manager everything is ok, but if I import large enough .reg file the resulting cab becomes not working.
http://forum.xda-developers.com/viewtopic.php?t=31209
mobify registry
Element said:
http://forum.xda-developers.com/viewtopic.php?t=31209
mobify registry
Click to expand...
Click to collapse
Was it an answer?
My CABs are installed successfully.
Aftef hard reset the following is installed from ExtROM:
1. CAB which changes default codepage to russian (419)
2. CAB which translates some items into russian
So all I see instead of russian items is abracadabra.
But if I install only the first CAB from ExtROM and the second one is installed only from soft reset everething is displayed correctly.
So how to make it without soft reset?
Element said:
http://forum.xda-developers.com/viewtopic.php?t=31209
mobify registry
Click to expand...
Click to collapse
or Restorator
There IS an easy solution: Create .reg files by exporting from TRE, and u can re-apply them later by double clicking the reg file. See this post for doing it on the jasJar (will work on any XDA tho).
http://forum.xda-developers.com/viewtopic.php?t=30460
craigiecraigie4 said:
There IS an easy solution: Create .reg files by exporting from TRE, and u can re-apply them later by double clicking the reg file. See this post for doing it on the jasJar (will work on any XDA tho).
http://forum.xda-developers.com/viewtopic.php?t=30460
Click to expand...
Click to collapse
I do not need "clicking". The aim is to make it installing automaticly from ExtROM after hardreset.
priezz said:
I do not need "clicking". The aim is to make it installing automaticly from ExtROM after hardreset.
Click to expand...
Click to collapse
FYI, although this thread is quite outdated, I use regedit to import registry files from the command line...

Cooking ETEN Romz

Hi
can anybody please help with decomiling ETEN Romz so that we can customise it and tweak it like HTC romz.
reo
Try this attach
Usage:
prepare_imgfs_eten.exe temp.dat
then mamaich viewimgfs
Hi
thanks i have this file, and yes it does work to disassemble rom. but i had a problem reassembling.
i am still testing this, i will fill everyone in.
regards
reo
OK, continue
...modify "dump" directory as you need...
BuildImgfs.exe
make_imgfs_eten.exe temp.dat
hi
thanks, but my problem was actually this part. i should have been more clear. when i done a recompile with build the OS did not come out correct. it seems that it got damamged and when i loaded it to my phone it froze up on boot logo.
is there a limit on the amount of changes u can make in the OS part ? mayb it must not go higher than a certain file size ?
i however have successfully changed the startup logo, and extrom and created a new ROM. only the OS part has been a problem.
regards
reo
How Can I extract the ROM from Eten?
reo
These tools were tested on M500, M600, G500.
If you disassemble temp.dat to dump folder, and then built temp.dat without any changes in the dump folder, the resulting file temp.dat is working?
I tested this, but unfortunately after i reassemble it does not recombile identically. so when i compare there are differences.
however, i have noticed that if you do not have the PPM from itsme repository then you will get 652 files extracted, when you should actually recieve 1117 files
regards
reo
prepare and make imgfs works. when i open reassembled temp.dat again with prepareimgfs - viewimgfs extracts files normally (About 102mb). But comparing with hex editor, first 51,880,508 byte is ok then it changes. After every 513 bytes there is extra 7 bytes in orginal rom. I think Eten made some protection. For example in rom ver.230 bootscreen image (JPG) is located at first lines of rom. But every 512bytes of image there is FFFF FFFF. So i removed FFs and i got bootscreen image
uas, could you give me prepare_imgfs_eten source? i want to see how it works. i am not a programmer but i made a little perl code which adds FFFF every 512bytes of a file. For making bootimages for putting into rom.
Reo i couldn't start bootloader anymore after i made a modification on rom. Could you give me any suggesttions? Forgive my english if there is sth wrong....
All perl scripts for eten roms are in the Russian forum
http://forum.wce.by/viewtopic.php?p=78923#78923
(Registration required)
thanks very much..
can someone make a Eten G500 rom with a bigger page pool ?
UAS,
Thanks a lot for your tools. It works perfectly on my M600 and I am going to write up an tutorial how to customize the rom in detail
jackleung said:
UAS,
Thanks a lot for your tools. It works perfectly on my M600 and I am going to write up an tutorial how to customize the rom in detail
Click to expand...
Click to collapse
oh, please do.......i have been eagerly waiting for someone who are able to explain the extraction of eten rom in details, please jackleung.
sfliu said:
oh, please do.......i have been eagerly waiting for someone who are able to explain the extraction of eten rom in details, please jackleung.
Click to expand...
Click to collapse
My draft (not finished yet)
http://www5.discuss.com.hk/viewthread.php?tid=4127717&extra=page=1
jackleung said:
My draft (not finished yet)
http://www5.discuss.com.hk/viewthread.php?tid=4127717&extra=page=1
Click to expand...
Click to collapse
thank you very much for your effort, this really make my daylooking forward to your complete tutorial.
initflashfiles.dat you can get from the windows folder on your device.
It must be in Unicode but without the first two bytes FFFE Unicode sign.
Localized names must be like as:
Directory("\Windows"):-Directory("\x0428\x0440\x0438\x0444\x0442\x044B")
uas said:
initflashfiles.dat you can get from the windows folder on your device.
It must be in Unicode but without the first two bytes FFFE Unicode sign.
Localized names must be like as:
Directory("\Windows"):-Directory("\x0428\x0440\x0438\x0444\x0442\x044B")
Click to expand...
Click to collapse
But seem like Eten's PDA doesn't come w/ one. Use initflashfiles.dat from other as template and make one from scratch is quite time consuming and error prone (especially w/ Chinese rom w/ chinese file name and directory). For me, I just manually move the files and directories once. Do a SPB backup and use the backup files for initialization after ROM update.
How to custom build Eten Rom
Let me thanks UAS for the tools first
I put all require programs, and user.txt and default.txt (registry for *** Traditional Chiniese Rom ***) into a signle package. Here http://rapidshare.com/files/30073907/eten_rom_cook_package.zip.html
Steps
******************
U will find the steps are very similar to cooking Asus P525 here http://www5.discuss.com.hk/viewthread.php?tid=3788644&extra=page%3D2
***** Section 1: obtain the imgfs_raw_data.bin from the rom *****
1. Download my Rom edit and update package (addfile.exe, buildimgfs.exe .... etc.)
2. In File Explorer, put "%temp%" as address and it should bring you system temp directory probably "C:\Documents and Settings\<yr winodows user id>\Local Settings\Temp", U may want to do some clean up if lots of files there.
3. Run the Eten Rom update program (e.g.: EUU_M600_CHT_R22_101_0230HK_WinXP.exe)
4. No need to connect yr M600. Follow the update instructions step by step and you will eventually see a files: temp.dat (~73mb). Copy the Rom file (Temp.dat) to other folder and extract my package there.
5. create the imgfs_raw_data.bin file by "prepare_imgfs_eten.exe" ONLY
***** Section 2a (Modify Rom content by Add/Remove files) ******
This method is very easy and relative low risk
1. Remove files in the Rom by "Delfile.exe <file name in the rom>"
2. Add files to the Rom by "Addfile.exe <file in yr computer>" (If the program crash, the rom is probably full)
***** Section 2b (Modify Rom content by extract and re-package) *****
More complicate and BuildImgfs.exe take a long time to build a package. But this method ismore flexable and manageable.
1. extract the content by "viewimgfs.exe imgfs_raw_data.bin"
2. add/replace/remove files in the dump directory
3. package the content by back to imgfs_raw_data.bin by "BuildImgfs.exe" (take a shower then come back )
****** Section 3 (optional: Modify the registy content of the Rom file) ******
1. Get the default.hv and user.hv from 2b.1
2. do the following in DOS to convert the registry to readable format :
REM ****************************
SET _FLATRELEASEDIR=.
rgucomp -o default.hv -nologo > wwedefault.txt
rgucomp -o user.hv -nologo > wweuser.txt
REM ****************************
(note: If you are modifing Chinese Rom, rgucomp does not support Chinese Ouput and you need to manually fix the output file (or use mine in the package as yr template)
3. Add "REGEDIT4" in the beginning of the files, leave a blank line atthe end of the file and save the file as UTF-16 or Unicode format. (Ultra-Edit is very good editor for this)
4. Edit the files for registry setting
5. Do the following to replace the registy file w/ yr modification
REM *** Registry ****
Delfile.exe default.hv
Delfile.exe user.hv
attrib -h -s -r *.hv
SET _FLATRELEASEDIR=.
copy /y wwedefault.txt boot.rgu
RGUCOMP -b
copy /y boot.hv default.hv
Addfile.exe default.hv
copy /y wweuser.txt boot.rgu
RGUCOMP -b
copy /y boot.hv user.hv
Addfile.exe user.hv
REM *** Registry ****
******** Section 4 (Optional: Create Folders or copy files from \Windows to other directory)
1. initflashfiles.dat not present in Eten rom, U can create one and put it in the rom. But I can't make my M600 to boot properly w/ this
******* Section 5 Convert imgfs_raw_data.bin temp.dat***************
1. make_imgfs_eten.exe
******* Section 6 Update yr M600 w/ the modified rom***************
1. Copy the temp.dat and RUU.exe (from my package) back to %temp% directory
2. Connect yr M600 and wait for MS Activesync to connect first
3. Run RUU.exe and follow the instruction.
My customized M600 Hong Kong Rom
Don't ask me for M600+ rom since I don't have M600+, and I will not have time to customize build for others. So, take it or leave it (but I might do bug fix and update if there's any). Please feel free to give comment.
*** ROM based on Hong Kong 230 ROM (EUU_M600_CHT_R22_101_0230HK_WinXP.exe) ***
What's get removed from my customized rom:
1. Eten phone firewall (replaced by CALL SMS Blocker)
2. MSN & Msn messenger (replaced by MSN Live and Live Messenger)
3. Eten phone profile manager (Replaced by Pocketmax Phone alarm)
4. Calculator (replaced by Omega 1-Calc)
5. Pocket Excel (Install Softmaker Office if you need a REAL excel program)
6. Pocket Powerpoint
7. Mandarin Voice Command (replaced by Cantonese)
8. Error Reporting and Irda driver
9. Eten backup problem (Replaced by SMS backup Genius and SPB Backup)
10. Quick Link
11. Lots of other junks
What's buildin: (all the tricks I mentioned here: http://www5.discuss.com.hk/viewthread.php?tid=2505945&extra=page=1)
1. USB Host
2. Eten backup battery patch
3. Eten Skype Setting, and Skype
4. SPB Safe Mode and AltTab
5. AE Button Plus
6. Resco Audio Recoarder
7. Resco File Exploer 5.42
8. MemEmpty
9. Multipad.exe
10. No Plugins Today
11. TCPMP Player
12. Pocket Alarm
13. Resco Photo Viewer and screen capture
14. Task Manager
15. Celedial and CeleTask
16. WM5NewMenu
17. Wisbar Lite
(Not all the apps are registed or some of them registered under my name, you may need to look for the SN yrself)
To Install:
1. Follow instruction 6 on my previous post to load the rom
2. put the exe file on yr PDA and run it to have the needed files in place
Dowload link: http://rapidshare.com/files/30225309/eten.rar.html

[NEED HELP] How to execute an .exe from the CommManager?

Hello People
I've trying to make a new action with the CommManager. I want to add an option in the CommManager to execute "Poweroffwarning.exe"
How to make that an option execute this exe?
I've tried this:
Attempt 1: (i'm trying with the cell of the Data Disconection)
Code:
[HKEY_LOCAL_MACHINE\Software\HTC\CommManager\DataDisconnection]
@="Poweroffwarnig.exe"
Attempt 2: (i'm trying with the cell of the Data Disconection)
Code:
[HKEY_LOCAL_MACHINE\Software\HTC\CommManager\5]
"Execute"="\\Windows\\Poweroffwarnig.exe"
But nothing worked. Does anybody know how to do that?
Thaks a lot!
Pool.
Code:
[HKEY_LOCAL_MACHINE\Software\HTC\CommManager\DataDisconnection]
@="Poweroffwarning.exe"
[HKEY_LOCAL_MACHINE\Software\HTC\CommManager\5]
@="Power Off"
"Execute"="\\Windows\\Poweroffwarning.exe"
"ExecuteCommand"=""
Edit, it should work. Haven't tested it.
danny_and_2 said:
Code:
[HKEY_LOCAL_MACHINE\Software\HTC\CommManager\DataDisconnection]
@="Poweroffwarning.exe"
[HKEY_LOCAL_MACHINE\Software\HTC\CommManager\5]
@="Power Off"
"Execute"="\\Windows\\Poweroffwarning.exe"
"ExecuteCommand"=""
Edit, it should work. Haven't tested it.
Click to expand...
Click to collapse
I'll try it and I'll tell you if it works
It doesn't work. I did a softreset before the instalation and when I open the CommManager it shows me an error:
Code:
Comm Manager doesn't support "Power Off"
poool__13 said:
It doesn't work. I did a softreset before the instalation and when I open the CommManager it shows me an error:
Code:
Comm Manager doesn't support "Power Off"
Click to expand...
Click to collapse
Code:
REGEDIT4
[HKEY_LOCAL_MACHINE\Software\HTC\CommManager\PowerOff]
@="Poweroffwarning.exe"
[HKEY_LOCAL_MACHINE\Software\HTC\CommManager\5]
@="PowerOff"
"Execute"="\\Windows\\Poweroffwarning.exe"
"ExecuteCommand"=""
Lets try this instead.
danny_and_2 said:
Code:
REGEDIT4
[HKEY_LOCAL_MACHINE\Software\HTC\CommManager\PowerOff]
@="Poweroffwarning.exe"
[HKEY_LOCAL_MACHINE\Software\HTC\CommManager\5]
@="PowerOff"
"Execute"="\\Windows\\Poweroffwarning.exe"
"ExecuteCommand"=""
Lets try this instead.
Click to expand...
Click to collapse
Like before... Comm Manager doesn't support "Power Off"
Code:
REGEDIT4
[HKEY_LOCAL_MACHINE\Software\HTC\CommManager\5]
@="DataDisconnection"
"Execute"="\\Windows\\PowerOffWarning.exe"
Should work..
Install stock first then the other.
This should run it.
No one work... but this time there's no errors.
thanks also!
Nobody more can help me? Please, it's important

A simple script to Switch between TouchFlo and SPB Mobile Shell 3

Code:
#-----------------------------------------------------
# TouchFlo3D to SPBMobileShell Switch v1.2 by Firefox®
#-----------------------------------------------------
AlertSound="\Windows\2000Hz-80ms.wav"
TFRegKey="\Software\Microsoft\Today\Items\TouchFLO 3D"
SpbRegKey ="SOFTWARE\Spb Software House 2\Spb Mobile Shell"
SpbPath=RegRead("HKLM",SpbRegKey,"InstallDir")
WMStartUpFolder=RegRead("HKLM","\System\Explorer\Shell Folders","StartUp")
SpbStartUplnk=WMStartUpFolder \ "\SpbMobileShell.lnk"
SpbStartupBak=SpbPath \ "\SpbMobileShell.lnk"
If(FileExists(AlertSound))
PlaySound(AlertSound)
EndIf
If(Not FileExists(SpbStartupBak))
Copy(SpbStartUplnk, SpbStartupBak)
EndIf
if(ProcExists("Manila.exe"))
If(Question("Switch to SPB Mobile Shell?","Shell Switch v1.2","YesNo")=1)
RegWriteDWord("HKLM",TF3DToday,"Enabled",0)
Kill("Manila.exe")
if(Not FileExists(SpbStartUplnk))
Copy(SpbStartupBak, SpbStartUplnk)
EndIf
Run(SpbStartUplnk)
EndIf
Else
If(Question("Switch to TouchFlo3D Shell?","Shell Switch v1.2","YesNo")=1)
Run(SpbPath \ "\MenuLauncher.exe","-stop")
RegWriteDWord("HKLM",TF3DToday,"Enabled",1)
if(FileExists(SpbStartUplnk))
Delete(SpbStartUplnk)
EndIf
Run("\Windows\Manila.exe")
EndIf
EndIf
Copy this code into text file and save it as "Shell Switch.mscr" into a folder of your device.
If you like a beep alert extract the .wav file from .zip attached and copy it into \Windows folder (only 3,5 Kb).
Add a schortct to this script into TouchFlo Programs and into SPB Mobile Shell shortcut for fast switch between two shell.
Remember, to run this script you must install Mortscript, a very great freeware by Mirko Schenk http://www.sto-helit.de.
Enjoy
Thanks for this. Might come in handy.
Create a shortcut with icon
A simple way to create a shortcut (with icon) to my script is:
1) create a new text file on the desktop of your PC with Notepad
2) copy the next row and paste it into the text file:
\Windows\Shell Switch.mscr?shellres.dll,-13902
(if you put the script in \Windows folder, else modify the path according your script path)​
3) save the text file in .txt format (eg. Shell Switch.txt)
4) copy it into \Windows\Start Menu\Programs folder of your device
5) rename the .txt file as Shell Script.lnk
6) select it in the Menu applet of Windows Mobile Settings
Bye
Note: the icon numer 13902 can be changed as you like.
Thank you,
very useful, try it
question
how do I know which icon corresponds to changing the numbers?
Tks
not working 4 me...
Great script, thank you..
Do you have a script also for going to Windows Mobile default desktop from TouchFlo3D?
hknklbk said:
Great script, thank you..
Do you have a script also for going to Windows Mobile default desktop from TouchFlo3D?
Click to expand...
Click to collapse
You can check http://forum.xda-developers.com/showthread.php?p=3292482 if you want a cab that does that.
addeswe said:
You can check http://forum.xda-developers.com/showthread.php?p=3292482 if you want a cab that does that.
Click to expand...
Click to collapse
But this one is only 4 WM 6.1 not 4 WM 6.5....
addeswe said:
You can check http://forum.xda-developers.com/showthread.php?p=3292482 if you want a cab that does that.
Click to expand...
Click to collapse
matt_jackson said:
But this one is only 4 WM 6.1 not 4 WM 6.5....
Click to expand...
Click to collapse
& what about for WM 6.5.1 + HTC Sense-v2.5b1920.2525 ???
Great job on this script, Firefox®
With a few minor modifications, I got it working in WM6.5 with Sense UI..
Code:
#-----------------------------------------------------
# TouchFlo3D to SPBMobileShell Switch v1.2 by Firefox®
# minor edit by Christophocles for use with Sense UI
#-----------------------------------------------------
AlertSound="\Windows\2000Hz-80ms.wav"
TFRegKey="Software\Microsoft\Today\Items\HTC Sense"
SpbRegKey ="Software\Spb Software House 2\Spb Mobile Shell"
SpbPath=RegRead("HKLM",SpbRegKey,"InstallDir")
WMStartUpFolder=RegRead("HKLM","System\Explorer\Shell Folders","StartUp")
SpbStartUplnk=WMStartUpFolder \ "\SpbMobileShell.lnk"
SpbStartupBak=SpbPath \ "\SpbMobileShell.lnk"
If(FileExists(AlertSound))
PlaySound(AlertSound)
EndIf
If(Not FileExists(SpbStartupBak))
Copy(SpbStartUplnk, SpbStartupBak)
EndIf
if(ProcExists("Manila.exe"))
If(Question("Switch to SPB Mobile Shell?","Shell Switch v1.2","YesNo")=1)
RegWriteDWord("HKLM",TFRegKey,"Enabled",0)
Kill("Manila.exe")
if(Not FileExists(SpbStartUplnk))
Copy(SpbStartupBak, SpbStartUplnk)
EndIf
Run(SpbStartUplnk)
EndIf
Else
If(Question("Switch to TouchFlo3D Shell?","Shell Switch v1.2","YesNo")=1)
Run(SpbPath \ "\MenuLauncher.exe","-stop")
RegWriteDWord("HKLM",TFRegKey,"Enabled",1)
if(FileExists(SpbStartUplnk))
Delete(SpbStartUplnk)
EndIf
Run("\Windows\Manila.exe")
EndIf
EndIf
Or you can just simply use Touch Flo 3D, Titanium & SPB Shell Switcher.
Hmmmmmmmmm nice work guys ...... lets try it out

[UC]XDA_UC V2.RC1, Automated & Silent User & Cook, Configuration Service[14/05/10]

[UC]XDA_UC V2.RC1, Automated & Silent User & Cook, Configuration Service[14/05/10]
V2.RC1 Update,... New AutoShortcut Commands, new SDConfig.txt Commands, Manual and Storage Card install folders added, Extra parameters for Cooks.
I'll be updating all documentation accordingly later today.​
Another (The?) new way to implement User Customization and Cooking.
This Thread is meant for Rom Cooks.
Users should take a look at the User To User Tips, Tricks ideas and issues thread.
What the XDA UC service does, is silently install (or not so silently if needed by User), .cab, .xdas, .xml, .reg, .mscr, copy over user manila files, install files from SDconfig.txt if wanted and then a few extra's for the freaks like copying folders or creating shortcuts from specific registries. This happens either at first or second boot depending on the existence of either RunCC.exe or Autorun.exe in rom.
It's all Mortcsript so it's very easy to get a grasp of it and change the behaviour and or Chip in adjustments/improvements.
But no knowledge of mortscript is needed to implement
It Uses DotFred's Taskmanager to parse and implement the .reg and .xml files. But it can also be used to disable or enable services or register DLL files.
More Information about the XDA Type Files at:
http://wiki.xda-developers.com/index...ename=XDA_file
My Shout out for this Two Year Long Evolving Collaborating Endeavour go to:
Bengalih (that has a very similar UC variant called Sashimi and helped with some of the early scripts I was trying to do with mort while cooking, I wish I could have collaborated more with him, it would have saved time re-inventing the wheel), RoryB for bouncing back ideas, supplying new scripts and perfecting older ones, serfer222 For making the script compacter, jmckeejr, Ameet & the whole Digital XDA SPC Cooking Crew, bbobeckyj, CLHatch, Scinor, Mort, Sleuth255, McCune, DotFred, MrVanx, danny_and_2, Cmonex, utak3r, Laurentius26, Radimus, and the Whole Original SPC Crew for accepting my obsessions.
For Knowingly helping me get the information, unknowingly helping me get the information or motivated me in keep going on in my Quest resulting in this.
If I Forgot you, Forgive me.
If you feel that certain information that has been used originated by you give me a holler and I will credit you if this is so.
Before you consider buying me a beer. Please consider Donating to XDA to help out with the maintenance of the forum and get cool stars next to your Nickname showing your appreciation. Then there are always the people that without their apps this wouldn't have been possible at all that you can consider showing some love. Mort, DotFred & Sleuth255 All of whom made Apps Seemingly simple But oh so useful for the whole XDA and PocketPC community.
Download and Info in next Post
What this version of the XDA UC service does, is silently install and execute (listed in the order the items get installed)
Run the Users customisations of course.
User side information here...
Run Cook.mscr in Windows folder(For Cooks Only)
More Cook info coming.
Add native support for .mscr, .mortrun, .xda, xdai, xdas & .xdaz files
(Where in "\Storage Card\" is read from HKLM\System\StorageManager\Profiles\SDMemory For MultiLanguage Support)
Requirements
The Rom should have the security relaxed in HKLM\Security\Policies\Polices by setting the value 0000101a to a 1.
So unsigned installations and Mortscript do not give a security error.
If you have a different language then English, don't forget to change the path in the initflashfiles.txt/app.dat file (if your using legacy kitchen )
The rest of the script should dynamcliy get the correct variable for the storage location.
In the end the process it comes down to the device starting after flashing and not needing any reboot while silently installing Cook and User configurations.
On the User end and cook end no SDConfig.txt ort config.txt file is needed.
Attached the OEM Package and a Sample Package for SD.
(Klaxon.Cab, GoogleMaps.xdas, two .reg files, two xml files, my.tsk, and a test mortscript)
The Control factors of the Sample SD Package is that is should install
HKLM\Software\XDA\Test\Reg 1 Parsed=1
HKLM\Software\XDA\Test\Reg 2 Parsed=1
HKLM\Software\XDA\Test\xml1parsed=1
HKLM\Software\XDA\Test\xml2parsed=1
These are the tweaks present in those files.
In addition everything installed will be found under
HKLM\Software\XDA\UC\
And the Morscript in the sample SD Card Package should give a message to confirm it was executed "Mort UC From SD Working"
Cab Files and XDAS files should eventually just be in the startMenu Programs.
G-Alarm is there because it needs User interaction and that will pop up when it needs your attention.
At the end of it all you get a message Installations have finished.
When using SDConfig.txt be sure to add a blank line at the end of it.
Disclaimer:
Please be aware that the XDA_UC script contains a disclaimer, not to post errors with it to the Mortscript forums, and the usual this **** cloud be dangerous to your phones health.
For Standalone version, place XDA_UC folder from "User_Storage Card" on Storage Card.
Then run "\Storage Card\XDA_UC\Install\XDA_UC.exe"
Information about the SDAutorun.exe V2 UC can be found here:
http://forum.xda-developers.com/showthread.php?t=366337
Information about SDConfig.txt & .xml user setup can be found here:
http://forum.xda-developers.com/showthread.php?p=5011285
Changelog:
V 1.0.01
Changed Sleep to start UC to 50 seconds for full device Boot before UC starts.
Changed "XDA UC Service Start" title to "customization" to match the old one.
Changed sleep before completion message to ten second in case the last cab needs user input and the Completion message pops up to early.
Changed Sleep at while for Theme installation to 2 seconds.
V 1.0.02:
Added Copy1 to Copy2 by reading from registry settings
[HKLM\Software\XDA\DirCopy]
"\\Storage Card\\Some Folder"="\\My Documents\\Some Folder"
Added Disabling Manila from Homescreen then Copying files from "\Storage Card\XDA_UC\manila" to Windows, The checking for existence of wallpaper_TF3D.png or wallpaper_TF3D.jpg and adding that to
[HKCU\Software\HTC\Manila]
"HomeBackgroundPath"="\\Windows\\wallpaper_TF3 D.jp g"
Import registry files from "\Storage Card\XDA_UC\manila\manila.reg"
Re-enable Manila on Homescreen and redraw it.
If not present do nothing.
Added RoryB's Complete SDAutorun.exe replacement/SDConfig.txt parser script.
Check for existence of Autorun.exe or RunCC.exe to automatic determine which method/bootcount to use.
There is no longer the need for two separate XDA_UC versions let alone a third.
.reg and .xml files will no be sent to renamed taskmanager "FS_TaskMgr.exe"
Added checking for cab files in "\Storage Card\XDA_UC\SD\", for those that don't have the luxury of changing the install paths in a cab file to hardcode these to Storage Card. So you get full user input to choose on these cabs.
V 1.0.03:
Todo's
Add Support For Diamond Internal Storage Need Someone with a Diamond to Test.
V 1.0.04:
Added Support for PimPackup files *.pib & .cer files.
Moved Disclaimer to the beginning and added an option to reset ad the end.
V 1.1.00:
Added extra Runs for Diamond and Samsung Internal Storage.
V 1.1.1B2:
Applied script improvements to reduce code used and make script a bit faster.
Removed Manila folder copy and replaced it with more general Copy2Root function/folder.
Added recognition of "REG: " command in SDConfig.txt parsing.
Added recognition of "CER: " command in SDConfig.txt parsing.
Testing:
Code:
If( FileExists( "\" & SDF & "\Cabs\pim.vol" ))
Kill("cprog.exe")
EndIf
During SDConfig.txt just before cpy1, cpy2 function.
V 1.1.1B3:
Mayor overhaul by new script from Serfer222
And then I started adding more crap and messing the new clean code up.
XCP1 & XCP2 commands for SDConfig.txt (Folder Copy with SDConfig.txt)
MCAB command for SDConfig.txt (Cabs that you want manual input for during SDConfig.txt)
SCAB command for SDConfig.txt (Cabs that you want installed to SD SemiAutomaticly during SDConfig.txt)
SC1 & SC2 commands for SDConfig.txt (Shortcut creation with SDConfig.txt)
KILL command for SDConfig.txt (Kill a running .exe/process)
EXEC: command for SDConfig.txt (Was already present but i removed the checking if the file is a .exe so anything can be executed and)
Del: Command for SDConfig.txt
.PROVXML now also get parsed in XDA_UC folder
Changed Serfer222's fix to parse mail xml files before PimBackup to "*mail*.*xml" so now if there's a file containing mail anywhere or is a .provxml get's parsed before PimBackUp.
RESET command for SDConfig.txt
WR1: & WR2: commands to write files using SDConfig.txt
Parse File containing "WiFi in it's name" Early like MyHomeWiFi.xml or MyHomeWiFi.provxml
Add a script to run and add XDA_UC to rom's without it.
"Manual" Folder in XDA_UC folder for Full Manual .cab Installs
"Storage Folder in XDA_UC folder for Semi Silent .cab installs to Storage
Early "*wifi*.*xml" parsing from XDA_UC for quick Wifi connecting.
Eauh maybe i forgot some stuff....
Bug Tracker for last Beta.
Wrong code for the WR1: & WR2: commands (Updated Beta Download with Fixed Script)
WR1: command needs a delete or else the next time it is run it will add text to the file instead of write a new one. Working on Fix. Fix Updated in original Download.
Changed XCP1: XCP2: commands into MOV1: & MOV2: to avoid confusion with CPY1: & CPY2: (TNX RoryB good one) Updated in original Beta Download.
Other Updates I'm looking into All Beta:
Changed Manila/Sense Script so it now Checks for manila.reg @ "\Storage Location\XDA_UC\Copy2Root\Windows\manila.reg" and runs the reg from there.
Test everything again
More optimisation of the code suggested by Serfer222
Call for Sashimi & PresetInstaller, so having Making an XDA UC Rom doesn't force users switching their preferred UC Setup.
Add DELT: command
Config.txt for Cooks (May not be included as it is partly redundant)
SDAutorun replacement without SDAutorun.exe
Information will be added about this in the future.
Some more changes to my method I thought I would share.
Run the items in SDConfig.txt without using SDAutorun. I do not have any tsk to run, but it would work the same. I put copy first since some EXECs like xcopy need to be copied before execution.
Code:
###############################
# SDConfig without SDAutoRun
###############################
; Wait 10 seconds to start to be sure SDCard can be accessed
Sleep( 10000 )
If( FileExists( "\Storage Card\SDConfig.txt" ))
xcount = ReadLine( "\Storage Card\SDConfig.txt" )
While( IsEmpty( xcount ) = FALSE )
If( SubStr( xcount, 1, 5 ) eq "CPY1:" )
xcopy1 = SubStr( xcount, 6 )
xcount = ReadLine( "\Storage Card\SDConfig.txt" )
If( SubStr( xcount, 1, 5 ) eq "CPY2:" )
xcopy2 = SubStr( xcount, 6 )
Copy( xcopy1, xcopy2, TRUE )
EndIf
ElseIf( SubStr( xcount, 1, 5 ) eq "CAB: " )
RunWait( "\windows\wceload.exe", "/nodelete /silent " & [COLOR=blue]"""" & [/COLOR]SubStr( xcount, 6 ) [COLOR=blue]& """" [/COLOR])
While( ProcExists ( "wceload.exe" ))
sleep( 3000 )
endwhile
Else[COLOR=red]if[/COLOR]( SubStr( xcount, 1, 5 ) eq "EXEC:" )
If( SubStr( xcount, -[COLOR=red]3[/COLOR] ) [COLOR=red]eq[/COLOR] [COLOR=black]"[/COLOR][COLOR=red]exe[/COLOR][COLOR=black]"[/COLOR] )
Run( SubStr( xcount, 6 ))
EndIf
[COLOR=red] ElseIf( SubStr( xcount, 1, 5 ) eq "XML: " )[/COLOR]
[COLOR=red] RunWait( "\windows\TaskMgr.exe", "/provxml " & SubStr( xcount, 6 ))[/COLOR]
[COLOR=red] While( ProcExists ( "TaskMgr.exe" ))[/COLOR]
[COLOR=red] sleep( 3000 )[/COLOR]
[COLOR=red] endwhile[/COLOR]
[COLOR=red] ElseIf( SubStr( xcount, 1, 5 ) eq "TSK: " )[/COLOR]
[COLOR=red] RunWait( "\windows\cusTSK.exe", SubStr( xcount, 6 ))[/COLOR]
[COLOR=red] While( ProcExists ( "cusTSK.exe" ))[/COLOR]
[COLOR=red] sleep( 3000 )[/COLOR]
[COLOR=red] endwhile[/COLOR]
[COLOR=red]Else[/COLOR]
EndIf
xcount = ReadLine( "\Storage Card\SDConfig.txt" )
EndWhile
EndIf
I have a mortscript I call user_C.mscr for some customizations that I used EXEC to run, but thought this way people could have multiple scripts.
Code:
If( DirExists( "\Storage Card\SDAUTO" ))
ForEach xscriptfile in Files( "\Storage Card\SDAUTO\*.mscr" )
CallScript( xscriptfile )
sleep( 3000 )
EndForEach
EndIf
Lastly, I have this final folder to hold cab files I want to install with user input. It also has a script to cleanup a few things from the cab install.
Code:
If( DirExists( "\Storage Card\SDAUTO\Final Files" ))
ForEach xcabfile in Files( "\Storage Card\SDAUTO\Final Files\*.cab" )
Runwait( "\Windows\wceload.exe", "/nodelete " & [COLOR=blue]"""" & [/COLOR]xcabfile [COLOR=blue]& """"[/COLOR] )
While( ProcExists ( "wceload.exe" ))
sleep( 3000 )
endwhile
EndForEach
ForEach xscriptfile in Files( "\Storage Card\SDAUTO\Final Files\*.mscr" )
CallScript( xscriptfile )
sleep( 3000 )
EndForEach
EndIf
I had to set config.txt to hide the overlay image and not lock the screen to allow seeing the messages and responding to them. Eventually I see this changing to have the first script copied to start up folder by an initflashfile and not even need AutoRun. Currently config.txt starts the mortscript and does nothing else.
Cook.mscr
If your cooking and want your own mortscript to also be run at first boot just name it cook.mscr and put it into Windows folder.
Update: From Version 1.2.0 Cook.mscr will be executed at the same moment as the rest of XDA_UC, so this is depended on if RunCC or Autorun is used.
Suggestion:
install the cabs in a known order, perhaps alphabetically, so that we can name the files in the order to install like so
10_MSVC.CAB
20_PIMBackup.Cab
etc means we can control the install order.
Reason I chose not to use the known "Cabs" folder is not to screw with that configuration.
(XDA_UC is backwards compatible with SDAutorun v2 SDConfig.txt)
Cabs will be automatically be parsed alphabetically that's a default when more cab's are being processed.
At least I think so
It's using MortScripts ForEach File command.
Almost Everything processed will be written to registry under.
HKLM\Software\XDA\UC
And no more hassle with cabs that need user interaction.
You just interact when they come up.
If it's a good idea I could also make it check for a present Welcomehead.png or the Existence of a TF3D folder to copy over personal TF3D files.
Uploaded the OEM and a Sample SD Test Package.
is there a way this could be done without removing the RUNCC?
Yes there is.
There's a few different solutions.
I have added your request to the first Posts.
It runs at second boot and skips a few things that RunCC takes care of like installing cabs present in the windows folder.
This way you can keep everything is with RunCC and the welcome.lnk in initflashfiles.dat
Personally I prefer the First method with no reboots at all but it does require some extra meddling in the Rom.
Hello,
I have some questions...
Noonski said:
(This Method is under Review as it seems the latest RunCC accepts config.txt files from SD)
Click to expand...
Click to collapse
Noonski said:
This didn't work in earlier versions i had my hands on.
Click to expand...
Click to collapse
Which version is this? 1.0.9.0?
RunCC can execute the same commands in config.txt? (EXEC, TSK, XML, CAB...)
I have yet to get a hold of the version l3v5y's using.
Yes RunCC can but it needs configuration. Now for a cook that isn't any problem. But for Simple users all they need to do is drop some cabs and tweaks they have collected throughout the forum into a folder not be annoyed by.
I posted a rom already that has runcc installing from sdcard's config.txt. Not too difficult at all, wonder why more cooks don't figure it out.
Because Earlier releases of RunCC from leaked roms did not except these commands.
I have just extracted a version of it from an official Rom and it's got the same version i was using before 1_0_9_0
So weird that it is now accepting it.
But looking back i did not use the addrun("RunExtra"
I did try the Run customer, and default tho.
(Slaps in his forehead)
But it's still not the same as i'm trying to offer here.
Noonski said:
Because Earlier release of RunCC from leaked roms did not except these commands.
I have just extracted a version of it from an official Rom and it's got the same version i was using before 1_0_9_0
Click to expand...
Click to collapse
Noonski said:
So weird that it is now accepting it.
But looking back i did not use the addrun("RunExtra"
I did try the Run customer, and default tho.
(Slaps in his forehead)
But it's still not the same as i'm trying to offer here.
Click to expand...
Click to collapse
What you're trying to offer here is IMHO a far better solution!
Sorry for not getting you my tweaked package, though you seem to have managed without...
I think having a complete solution, with automated install of all cabs in a folder would be great.
Well i also needed to Scour the new Roms for some updated OEMS and i needed to know for sure that welcomehead.192.png was named that way to add it to the process.
And maybe even a Copy User Preferred Manilla files from SD to device if present. There must be some other good ideas from people that like flashing, but are tired of installing their preferred skins, settings and Apps.
Unfortunately i found that the newer package of Connectionsetup asks for a reset where my previous VGA reskinned package did not.
All the Regs are te same (Except for two new unrelated ones).
I like the old non rebooting version better.
I know that a reboot isn't needed but i can see users unkowingly agree to that reboot. (But that's another subject)
I think i will change the package this weekend So it is only one method.
By default it is set to run at second boot, but it can easily be changed by the cook to run at first boot if that is the setup that one would prefer.
Also i'm still tinkering out the exact form of the XDA files.
But nice to hear i'm not on an island, l3v5y.
Noonski said:
Well i also needed to Scour the new Roms for some updated OEMS and i needed to know for sure that welcomehead.192.png was named that way to add it to the process.
And maybe even a Copy User Preferred Manilla files from SD to device if present. There must be some other good ideas from people that like flashing, but are tired of installing their preferred skins, settings and Apps.
Click to expand...
Click to collapse
Noonski said:
Unfortunately i found that the newer package of Connectionsetup asks for a reset where my previous VGA reskinned package did not.
All the Regs are te same (Except for two new unrelated ones).
I like the old non rebooting version better.
I know that a reboot isn't needed but i can see users unkowingly agree to that reboot. (But that's another subject)
I think i will change the package this weekend So it is only one method.
By default it is set to run at second boot, but it can easily be changed by the cook to run at first boot if that is the setup that one would prefer.
Also i'm still tinkering out the exact form of the XDA files.
But nice to hear i'm not on an island, l3v5y.
Click to expand...
Click to collapse
I think the "EXEC:" command waits for the process to close? If yes, then an application that runs some mortscripts could wait till all the mortscripts are run before continuing, so it can be run at first boot within RunCC. That saves the issue of an extra reboot...
Welcomehead.192.png is the file for VGA/WVGA devices, welcomehead.96.png is for QVGA devices, though it's actually set in the registry, so that could be checked at load time? (I'll find the registry key at some point...)
Something I've just thought of:
If there were a way for ROM cooks to block things that are known not to function or are included already, that would be quite useful. E.G. I include PIMBackup in ROMs, so why would anyone install an extra cab to do the same?
You could add a check for a specific .Cab name.
And if present change the extension.
Repeat and Rinse a few times.
Then at the end rename all .cabxx back to .cab
I think in general, not a lot of people change their cab names.
Unless like that previous post, someone likes to add numbers to them to control the order.
But in this Silent install method i can see that having one app being installed first could be useful as there's small pauses build into the script so the device isn't slow as hell the first minutes it boots.
I think it might get more error prone if it gets executed through RunCC.
With all the processes that get proccesed through the script.
It's using and starting, cusTSK.exe, TaskMgr.exe, wceload.exe and mortscript. But when Mortscript exitst it should be finished.
I would need to test this style to feel confident it doesn't reboot while there's still work in progress.
I Agree that getting it into the No Reboot style might be some extra work for cooks. And maybe i'm seeing this to much from my own perspective where i always remove and convert OEM configurations to straight forward packages.
Noonski said:
You could add a check for a specific .Cab name.
And if present change the extension.
Repeat and Rinse a few times.
Then at the end rename all .cabxx back to .cab
Click to expand...
Click to collapse
Noonski said:
I think in general, not a lot of people change their cab names.
Unless like that previous post, someone likes to add numbers to them to control the order.
But in this Silent install method i can see that having one app being installed first could be useful as there's small pauses build into the script so the device isn't slow as hell the first minutes it boots.
I think it might get more error prone if it gets executed through RunCC.
With all the processes that get proccesed through the script.
It's using and starting, cusTSK.exe, TaskMgr.exe, wceload.exe and mortscript. But when Mortscript exitst it should be finished.
I would need to test this style to feel confident it doesn't reboot while there's still work in progress.
I Agree that getting it into the No Reboot style might be some extra work for cooks. And maybe i'm seeing this to much from my own perspective where i always remove and convert OEM configurations to straight forward packages.
Click to expand...
Click to collapse
I personally hate having cabs installed, so in theory my ROMs should be good to go without the reset.
Based on what you said, it might be best if the number of complications are minimal, and device compatibility as great as possible. RunCC probably would make things more complex and error prone, so yes, I agree not having it as a dependency makes sense.
A mortscript could always recognise *cabname.cab, so even using an order flag at the front should work.
Silent install sounds like it could be great, although some of the cabs need user intervention... Also, having a flag settable somewhere that makes (or stops) a message box with "auto install is complete" would be useful...
At the moment i have G-Alarm in my SD folder for that User intervention.
It just pops up at the moment after it's install i know at first i waited for it, no i grab a beer and tap it when i arive but the script continues with the rest of the files present so it's not waiting on that user interaction.
The possible Pop up message would in theory come up at the moment the last cab is just starting to install but it should be possible to add a check if wceload is still active before it pops up.
Which reminds me i still need to contact some of the people that actually helped out a lot without knowing.
"Installation has Finished, if your in a good mood and were planning to get beer from the fridge choose yes to reset the device, If your not in the mood and need to actually use your phone right now, press no to reset whenever you feel like it"
Do you think that would fit in the screen

Categories

Resources