Sorry, newbie question - Windows Mobile Development and Hacking General

Hi folks!
I'll make this short and sweet, because it's probably something that's so basic to you all it's hardly worth the effort
I am trying to write some software to basically create a backup of the registry and file system on a WM6 device (that was the easy part) and then being able to restore those settings and files in the event of a hard reset (this in itself will not be too hard).
My problem is that I don't know how to "get" to the place where I can execute the restore process (essentially before the operating system starts but so I can still access the registry and file system). I had considered simply using the startup folder on the Flask Disk but I'm not sure that I will be able to access all the files that I need to when the OS is fully up and running (sharing violations or read-only access or whatever).
Can anyone give me any pointers? I'm not fussy about what languauge I have to use. Just a nudge in the right direction would be helpful (and yeah, I know there's third party stuff out there for this).
Thanks!

Related

making roms

Hello All,
Firstly, I would like to say how great this website is and tip my hat off to all the people involved in maintaining this site.
I am very new to the whole XDA modification scene and have a ton of newbie questions. I know some of these questions have been asked before; however I still have not grasped the concepts fully. I have tried to restate the questions asked before so that I (and hopefully other newbie’s ) can fully understand how to modify XDA’s.
Any help anyone can provide will be greatly appreciated.
So here goes the questions:
When creating a customized ROM (using mkrom) my understanding is that one has re-create the initobj.txt and the Default.reg. Is it possible just to install all the applications you want, and then download the initobj.txt and the Default.reg and place them in the cfg directory for the custom ROM?
If this does not work, how does one know what to edit in these files?
When mkrom request a Rom image, is it requesting the backup ROM IMAGE? Will any image do?
When backing up a ROM, what option does one have to select to backup the operating system, settings and programs inside the ROM? Does CE do all of this?
What is CE, Boot, GSM stand for in the boot menu?
If one wants to just create a new boot image, what is the simplest way? Does one have to create a whole new ROM?
If one wants to just have the unlocking software, what is the simplest way? Does one have to create a whole new ROM?
When creating a Rom using RomKitchen, it asks you add Add your own ROM files? Is this your backup rom?
In RomKitchen one of the readme files asks for:
bootimage.bmp,_initobj.txt,_initdb.ini,_default.reg,xipchain
Is the default.reg and the initobj.txt in this directory have to be pre altered for the new programs one wants in the Rom like the way the mkrom wants them? Does the setup program create them for you?
Is the bootloader.nb0 file specific to the boot loader you have?
Very confused what is exactly needed in the /CFG directory.
In the CFG directory do you place your backup Rom dump?
Some ideas.
The most important issue is to know that you have to put the files you want to add int the folder files2 (up to 5 MB minus the amount in the folder directory) or in files1 (up to 900 KB).
The key is to manage default.reg (the registry of windows CE), you have to register the .exe's and dll's you want to use. It can be very useful for you the ssnap.exe (to show registry modifications by autoinstallabe programs) and a registry editor.
In initobj.txt, there are only links, but you should put links if you want to access to your programs in Start Menu-> Programs or in the Start Menu.
I suggest you to make different posts for each question, it would make easier to answer.
Regards.

Partitions and ROMs

I have unlocked the ExtROM and am using it, I have no need for the Orange customisations.
In the registry this is called HKLM\System\StorageManager\Profiles\TRUEFFS_DOC1 and can be unlocked, renamed, written to and even (by Buzz) erased and the space added to ... Main storage or \.
What about TRUEFFS_DOC and TRUEFFS_DOC2?
Which parts of the system are they?
DOC is typed as imgfs, which I imagine is the 128MB ROM that contains the OS, flashed in working state during a ROM upgrade.
DOC2 is FAT and could be the \ partition?
If we could make the DOC partition read/write (yes, very dangerous), even temporarily, could we overwrite the OS installed files with our own instead of taking up space in the \ memory?
Overwriting stuff in the 128MB partition seems more sensible than keeping the original file and using the valuable 64MB that HTC skimped on.
I know that you can cook a ROM to do this, but that is a long and involved process that isn't for the faint hearted. I'm tearing my hair out at the registry creation part, going through the posts here trying to make sense of them before asking another question in an already long thread. Renaming a few files and putting them in the expected places seems like a quick fix solution that if done properly shouldn't be too dangerous.
Universal DOC2 visible
In search for a find today, I'll post here how to make the DOC2 partition visible.
This registry adjustment allows you to see a new partition called 'ShadowROM' (saw it in the registry somewhere > the name I've given it last format). It contains all data, *.vol databases etc.. THE Windows basic replication folder. All your new/user data, as of the last install.
First things first: BACK UP YOUR DEVICE.
What you do with this is for your own purpose. Incorrect use and you loose all your data!
Open Notepad and copy/paste the following into a reg file which you can simply open on your device.
[HKEY_LOCAL_MACHINE\System\StorageManager\AutoLoad\TRUEFFS_DOC2]
"Bootphase"=dword:00000001
change this to:
"Bootphase"=dword:00000002
to make the partition active in normal operation, being bootphase 2.
[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\TRUEFFS_DOC2]
"Folder"="ShadowROM"
To give the little beast a name.
Notice the extra screenshots I posted for oddities!
This is interesting... What are the pro & cons of keeping files and apps here vs external storage?
Is it just saving space for the apps that must be installed internally?
Are there performance or ram gains for the universal?
Thanks.
leaving the registry this way, I can delete files within that partition, or copy a (several megabyte in size even)file. Consequence of such an operation: next soft reset = hard reset. No 'buts'. Straight to 'OUT'.
I've been fiddling with other registry keys in the neighbourhood which seem to have some effect.
The use however... finding that there are several directories "Windows" and "Program Files" and so on... these events take up processing time, i/o operations, some of which have caused and probably will cause performance issues.
This looks more like a mess then 'user friendlyness'. If for instance backup or dataloss purposes are reasons for these... leave the device without charging for a couple of days.....
epicus, thanks for the sharing... Looks like I'd still need to wait a little bit before I venture into this.

real simple request for all developers out there...

So i fall a little short in developing, and was wondering if someone could make a quick exe... Here is what i am looking for: I need a simple exe to run off of my wm6 phone that will copy the file PalmMsgV001 from the Windows directory to my storage card in a folder with the current date.. to be more specific something like this:
copy \Windows\PalmMsgV001 to \Storage Card\Back_up\Palm_back\110807 (the date using the format 11/08/07)
Maybe you could make it customizable for other people as well... but im just looking for a quick exe to throw on my card that will make it real easy to back it up
shogunmark said:
So i fall a little short in developing, and was wondering if someone could make a quick exe... Here is what i am looking for: I need a simple exe to run off of my wm6 phone that will copy the file PalmMsgV001 from the Windows directory to my storage card in a folder with the current date.. to be more specific something like this:
copy \Windows\PalmMsgV001 to \Storage Card\Back_up\Palm_back\110807 (the date using the format 11/08/07)
Maybe you could make it customizable for other people as well... but im just looking for a quick exe to throw on my card that will make it real easy to back it up
Click to expand...
Click to collapse
And how much do you pay for it?
Here it is...
shogunmark said:
So i fall a little short in developing, and was wondering if someone could make a quick exe... Here is what i am looking for: I need a simple exe to run off of my wm6 phone that will copy the file PalmMsgV001 from the Windows directory to my storage card in a folder with the current date.. to be more specific something like this:
copy \Windows\PalmMsgV001 to \Storage Card\Back_up\Palm_back\110807 (the date using the format 11/08/07)
Maybe you could make it customizable for other people as well... but im just looking for a quick exe to throw on my card that will make it real easy to back it up
Click to expand...
Click to collapse
Here it is...
The applications is a command line application an works with 2 paramenters. 1º is the full path of the file or files patter that want to copy, in your case "\Windows\PalmMsgV001", other examples could be "\Test\log*" or "\*.txt". 2º is the full path of the destination directory without the date directory, in your case "\Storage Card\Back_up\Palm_back".
In the attached zip I include the application (CopyBackUp.exe) and the shortcut (.lnk) with the parameters required for your case ('CopyBackUp.exe \Windows\PalmMsgV001 "\Storage Card\Back_up\Palm_back"').
Just extract the .exe to the root folder ("\") and the .lnk wherever you want (ie. "\Windows\Start Menu").
Any small donation would be appreciated.
Enjoy...
finthamoussu said:
Here it is...
The applications is a command line application an works with 2 paramenters. 1º is the full path of the file or files patter that want to copy, in your case "\Windows\PalmMsgV001", other examples could be "\Test\log*" or "\*.txt". 2º is the full path of the destination directory without the date directory, in your case "\Storage Card\Back_up\Palm_back".
In the attached zip I include the application (CopyBackUp.exe) and the shortcut (.lnk) with the parameters required for your case ('CopyBackUp.exe \Windows\PalmMsgV001 "\Storage Card\Back_up\Palm_back"').
Just extract the .exe to the root folder ("\") and the .lnk wherever you want (ie. "\Windows\Start Menu").
Any small donation would be appreciated.
Enjoy...
Click to expand...
Click to collapse
This worked perfectly.. and am more than happy to kick you a small donation!!! pm me and let me know where to send it!
and also as i am looking at the shortcut, it appears that in theory you could make this little exe copy whatever you want, just would have to edit the short cut.. interesting...
shogunmark said:
and also as i am looking at the shortcut, it appears that in theory you could make this little exe copy whatever you want, just would have to edit the short cut.. interesting...
Click to expand...
Click to collapse
Yes, it tried to make it a bit more generic that what you were asking for, so maybe it could be usefull to somebody else
CopyBackUp V1.1
Attached is the new version of the application.
The changes are:
The first 2 parameters still being the same.
The next parameters are optional, and works as follow:
New commands:
·-kb[List of processes to Kill Before the backup is made]
Kills the specified list of processes before the backup
·-rb[List of processes to Run Before the backup is made]
Runs the specified list of processes after the backup
·-ka[List of processes to Kill After the backup is made]
Kills the specified list of processes before the backup
·-ra[List of processes to Run After the backup is made]
Runs the specified list of processes after the backup
·-noui
Runs the application without showing windows messages (only “Invalid Arguments” is showed)
These commands can be used multiple times, are case insensitive, and before backup commands and after backup commands are executed as they appears.
Sample:
copybackup.exe “/Directory with spaces/*.log” /Test –rb /test/test.exe /test2.exe –ka test2.exe –kb aaa.exe –NoUI –ra “/dir dir/bb.exe” –KA b.exe
This will
1.1. Run /test/test.exe
2.2. Run /test2.exe
3.3. Kill aaa.exe
4.4. Perform the backup of “/Directory with spaces/*.log” to /Test/[Date]
5.5. Kill test2.exe
6.6. Run “/dir dir/bb.exe”
7.7. Kill b.exe
All this without Windows UI messages
The application will fail only if some of the processes to run is not found, It won’t fail it some process to kill is not found.
Enjoy.
well i did find error.. maybe..
If i use:
\CopyBackUp.exe \Windows\PalmMsgV001 "\Storage Card\Back up\Palmbackup"
Then it does as mentioned before...
If i manually kill messagingapp.exe first and use this then it works, it will copy the file and run the app:
\CopyBackUp.exe \Windows\PalmMsgV001 "\Storage Card\Back up\Palmbackup" -ra messagingapp.exe
But if i leave messagingapp.exe running it will not kill it or copy the file, just throws up an error box that says "error":
\CopyBackUp.exe \Windows\PalmMsgV001 "\Storage Card\Back up\Palmbackup" -kb messagingapp.exe
and i did verify that the process is running
shogunmark:
Are you sure that have extracted both files in the same directory?
This problem looks like copybackup.exe is not finding in the same directory OpenNETCF.dll.
This dll is needed when you use -kb or -ka, as is used to enumerate running processes.
I have made the test copybackup.exe /*.log /test -kb iexplore.exe and it works perfectly (Kills Internet Explorer before)
Can you cheek this?
Cheers
Hi finthamoussu,
Your application sounds really cool. I can appreciate the running processes fuctionality as that is a little bit tricky in .net. Good work!
Regards,
Slither2006.
I think this is a really useful app. Forgive my ignorance but where do you run the exe on the PC or on the device?
If on the device do we need to copy OpenNETCF.dll there as well? Which folder?
Thanks
gekkkko said:
I think this is a really useful app. Forgive my ignorance but where do you run the exe on the PC or on the device?
If on the device do we need to copy OpenNETCF.dll there as well? Which folder?
Thanks
Click to expand...
Click to collapse
Hi, you need to copy both files to the device (to any folder you want).
An to use it just call the exe with the parameters you need (look at previous post).
Enjoy

dummy.exe needed

Hello,
could I ask any of the developers here to create very simple exe file for me that would actually do nothing.
Just two features needed:
1. system will recognize it as executable
2. will terminate itself immediately.
I just need to replace real application with it on some occasions by script.
I tried all other options to conditionally block the autorun but this seems to be my last option and I was not able to find one on the internet.
Many Thanks
hmmm, Im not a expert in EXE files, but wont a empty text file renamed to .exe do the trick?
This seems like it will do what you want. VS2005 project attached. It includes a compiled file for WM2003, which seems to run on WM6Pro fine. So, this ought to work on anything from WM2003 to WM6.1Pro.
…fantastic. This is exactly what I need.
Many Thanks!
not the right place to post.
READ THE RULES
thank you

[DEV] ROM Tools

Hi,
I'm currently working on a few tools, and want to know what features would be liked by cooks/users or anyone really.
The first tool is an exe generator for hot fixes. Simply put, you plug some files into it, and it generates an exe that can be run on the target device which will do all the hot fixes.
The advantages it gives:
No more cabs!
Can use a custom icon for the exe if desired
Things like messing around with setup.dll files doesn't need to happen, and an application can be launched after install if wanted
Files can be deleted
File properties can be changed
Can use XMLs
Can edit registry
Can install files
Since it's written in native C++, it should run without a hitch on WM5+ devices, whether or not they have .Net whatever...
The second tool is an AutoRun/UC/whatever like system that simply searches through a folder, finds all cabs/xmls/provxmls and then installs them. This means there's no reliance on autorun for parsing config files, or any other requirements. Again, it's written in native C++ so is better
Any suggestions/ideas would be welcome!
Oh, and once I've got slightly further, both these will be released as open source. Probably.
l3v5y said:
Hi,
I'm currently working on a few tools, and want to know what features would be liked by cooks/users or anyone really.
The first tool is an exe generator for hot fixes. Simply put, you plug some files into it, and it generates an exe that can be run on the target device which will do all the hot fixes.
The advantages it gives:
No more cabs!
Can use a custom icon for the exe if desired
Things like messing around with setup.dll files doesn't need to happen, and an application can be launched after install if wanted
Files can be deleted
File properties can be changed
Can use XMLs
Can edit registry
Can install files
Since it's written in native C++, it should run without a hitch on WM5+ devices, whether or not they have .Net whatever...
The second tool is an AutoRun/UC/whatever like system that simply searches through a folder, finds all cabs/xmls/provxmls and then installs them. This means there's no reliance on autorun for parsing config files, or any other requirements. Again, it's written in native C++ so is better
Any suggestions/ideas would be welcome!
Oh, and once I've got slightly further, both these will be released as open source. Probably.
Click to expand...
Click to collapse
Wow, this sounds very very promising. Can't wait!
dwizzy130
yeah some user friendly and easy to understand specialy editing the rom or making add/remove programs EASILY is the best specialy to noobs like me when cooking ROMS all in one tool with advance AI for error checking
Sounds very attractive. go on my friend.....
Sounds good mate
I'm looking for a tool to easily make a setup.dll. Like setup.dll maker/generator/wizard.
Seems the only tools I can ever found is from e-pocketsetup, but that company was sold to another company and the product was never available since then.
I know cooks hate a cabs with a setup.dll. But seems without setup.dll a cab installer can not execute some little complicated actions. And it is impossible to make a setup.dll without grasp a computer language like c++.
Edit: Found another one: setupdllcreator , but it's not strong enough and not freeware.
Edit: If these can be realized, a setup.dll maker is much less needed:
No more cabs!
Can use a custom icon for the exe if desired
Things like messing around with setup.dll files doesn't need to happen, and an application can be launched after install if wanted
Files can be deleted
File properties can be changed
Can use XMLs
Can edit registry
Can install files
Click to expand...
Click to collapse
But we need above mentioned fubctionalities to be DYNAMIC, like:
Can detect availability of certain reg entries or installed apps, base on the result to decide which variants of install files to be installed, or whether some supporting apps like netcf or mortscript to be installed. Or can detect device id, resolutions, drivers to decide what to do.
Otherwise it still can not completely replace setup.dll.
But if dynamic actions can be executed, wow that's a dream of developers & hackers and even common users can benefit from that, a real revolution !
woww can wait for realese
l3v5y said:
Any suggestions/ideas would be welcome!
Click to expand...
Click to collapse
So I'm posting my requests again, the idea is this: It will be much helpful if I can know what is happening/changed in the registry after I did anything to my WM devices. So maybe you can develop a tool to monitor & log the real-time changes of registry. Or at least we can have a registry-comparision tool on ppc.
Another thing is it seems we don't have a file structure viewer on ppc, not the stuff like total commander etc., want to export the file structure to a file like .txt or .jpg.
Update: Now my idea is clearer for this, what I suggest would be a System Snopshot program to realize this:
Can make a system snapshot to record the registry content, file structure, ram usage etc.
The snapshot can be initialized in the similiar way of CapSure screen capture program, i.e., a hardwre button, a fixed time, a screen tap, a program launch, etc., defined by user.
Can choose a full system snapshot or only on selected part of registr, file system etc.
Can generate a file containing the recorded system condition.
Can compare any two system snapshot result and generate a comparision chart/change log.
So I've posted my requests as per your request, whether or not you'll do it is not my business lol.
Update: Found SK Tracker, cost EUR9.95, so forget this one. Why I did not know it in the past?!

Categories

Resources