[Windows Mobile Software Development] serfer222:
01/04/2010 update - program can read list of modules from text file.

download link: http://www.4shared.com/file/255038195/c2b5de9b/RecModFolder_04.html

mirror: http://narod.ru/disk/19297102000/RecModFolder_04.zip.html

how to use

1. create text file RecModFolder.txt,

2. write list of modules to this file, for example:

SYS\MediaOS\wmpocx.dll

SYS\OS\dw.exe

SYS\OS\dwui.dll

SYS\OS\DwXfer.dll

3. pass RecModFolder.txt as a parameter:

RecModFolder.exe RecModFolder.txt

that's it.

and, of course, you can convert all modules in folder like this

RecModFolder.exe SYS\AdobeFlash

RecModFolder.exe SYS\AdobeFlashCodecs

there are sample RecModFolder.txt and cmd file that I use with OSBuilder

cmd file is executed from the root of my kitchen, program is in the tools\RecMod subfolder

====================================================

old post:

I developed small tool which helps me to update my kitchen with new OS build.

My device has wm6.1 kernel and I get tired with "too many modules" problem.

I know I can use RecMod to convert modules to files, but it's so slow and inconvenient:

find folder with module,

drop it on recmod.exe,

get new file out of this folder,

delete folder,

move file back,

find, drop, get, delete, move...

find, drop, get, delete, move...

GRRR!!!! =)

My tool will do all these steps for me.

I just select parameters:

1. Folder - folder with modules, for example SYS\21872,

2. Mask (optional) - any mask that is valid in windows is acceptable,

(common masks are *.dll, *.cpl, *.exe, *.mui), no mask means "*".

3. Count (optional) - how many modules to convert, no count means "convert all".

[new in v0.3] If Count is 0, program will only display all modules matching the mask,

and do not change your files.

=======================================

Example 1:

>RecModFolder.exe c:\xda\v1\SYS\21054

means - RecMod all modules in c:\xda\v1\SYS\21054 recursive

=======================================

Example 2:

>RecModFolder.exe c:\xda\v1\SYS\21054 *.exe

means - RecMod all exe modules in c:\xda\v1\SYS\21054 recursive

=======================================

Example 3:

>RecModFolder.exe c:\xda\v1\SYS\21054 *.dll 10

means - RecMod first 10 dll modules in c:\xda\v1\SYS\21054 recursive

=======================================

Algorithm

read parameters from command line
find all modules in given folder (recursive) using given mask
for each module folder
{
call RecMod
create temporary unique file name (GUID for safety reason)
move new file to parent folder and assign it temporary name
delete module folder (with all files)
rename new file, give it real module name
if (count >= requested count)
{
stop
}
}

=======================================

Installation

make sure you can run RecMod from console, add its folder to PATH or drop RecModFolder.exe to the same folder.

That's it.

=======================================

Tips

You can create shortcut to RecModFolder and drop folders on it from explorer or Total Commander. RecModFolder will convert all modules in that folder to files.

Backup your files. This tool doesn't ask any questions,

it just informs you in case of error and stops immediately.

Save log file and check it for errors.

This is console application - you can use it in bat files.

You can save output of this program to text file - add >fileName.txt to your command line.

example:

RecModFolder.exe c:\xda\v1\SYS\21054 *.dll 10 >log.txt

this command will call RecMod first 10 dll modules in c:\xda\v1\SYS\21054 recursive

and save its output to log.txt.

Do not open folders you want to delete (replace with files) in explorer (or Total Commander, FAR, etc.) while this program works.