Hi, Currently I'm building a further GUI (building on the one supplied with my CustomRUU) to enable people to cook their own ROMs in a much simpler way; so far I have completed interfacing with aChef and with Addfile and Delfile; permitting you to select multiple files to add and delete from the rom (rather than having to do it individually from the command prompt) and dumping the registry is also done.
Please do remember that this is beta software and as such, I have no guarantees that anything will work (although the interfaces from the original ROMBaker should work)
and a final note: all files etc must remain in the same directory; I realise this is quite a pain in the arse but I haven't found a way of dealing with that unfortunate issue yet.
BETA2:
this adds an IMGFS extraction button: note that the file *MUST* be called imgfs_raw_data.bin - this is intentional as it could cause issues for new users if they start farting around renaming that file and then wondering while addfile suddenly stopped working, although I'll probably end up implementing it so that it renames the file for you while you're dossing around (whilst also ensuring that the one with that name doesn't get deleted)
please note that the RGU issue is *NOT* solved, it simply won't crash the program any more... in fact, not much will crash it any more, so be aware, and CHECK it did what it was supposed to do
BETA2.1:
Fixed the Registry dumper
Beta2.5
AddFile and DeleteFile now works for any directory; code from DeleteFile is unchanged simply because the directorys are irrelevant for this tool anyway.
BETA3.0
Revised so you can now actually work stuff into any folder you like (it moves the files temporarily), also fixed a few things; next version will implement a treeview of your dump folder allowing you to add and delete files.
Beta3.1
Fixed the bug, changed layout to tabs... still need to do the TreeView
Great work. Post some screenshots!
V
Bring It On Mofo!!!
Good Work, we will give it a go!
I'd be happy to beta test too
pof said:
I'd be happy to beta test too
Click to expand...
Click to collapse
and I too!!!
I was just getting to this and then I saw your thread.
You can count me in....
Saves me the effort of doing it myself and allows me more time to hunt down and fix WM6 Issues!
OK, here it is; extract the folder somewhere and to start, all you technically need to dump is a OS.nb file in there.
if you want to edit the registry, obviously you're going to have to manually run the ViewImgFs tool yourself then select out the two .hv files.
However; as outlined in my Readme; when editing the registry, you don't need to fart around changing the encoding or add the REGEDIT4 header (although you can if you like) since the program will automatically add it for you.
ok, as I said, it's beta, so even though I just said it should do that... it might actually not, so the idea is for people to try stuff, examine if it worked and then have a good whine in here at me if it doesn't so I can fix it; I'm going to be on here for quite a good few hours more, so hopefully this can become fully working within the next 4 hours
Also, sorry for the delay; I was unaware of the UNICODE encoding requirement for rgucomp (and the REGEDIT4 header) and was resultantly farting around trying to figure out why I couldn't convert an RGU back, then after figuring it out, I decided to save others from suffering the same experience and coded ROMBaker to do those operations for you!
Special Note:
If you are a Trinity developer; DO NOT rebuild the NBH with this (unless you aren't including an ExtROM, then you're safe); but if you are including an ExtROM, use the version of ROM Baker supplied in the Trinity CustomRUU to avoid buggering up your phone.
Also, there is a cosmetic bug where I forgot to rename a button and both of them say "Dump ROM"; this feature is still perfectly safe to use (well, at least the code executed won't be affected anyway) so don't bother to post a bug on this, I've already resolved it
I know this isn't probably the feedback you're looking for as this app is not meant to be idiot-proof, but it crashes when you click "Browse" for registry file, and then cancel.
Code:
************** Exception Text **************
System.ArgumentException: The path is not of a legal form.
at System.IO.Path.NormalizePathFast(String path, Boolean fullCheck)
at System.IO.Path.GetFullPathInternal(String path)
at System.IO.FileInfo..ctor(String fileName)
at ROMBaker.Form1.Button18_Click(Object sender, EventArgs e)
I'm really curious, although I fear the "advanced newbie" I am might find it hard to understand how to use this interesting tool.
- The button to build the registry says "Dump" instead of "Build".
- If default.hv already exists on the Rom-Backer directory when building it crashes, have to remove it manually first.
- A button to dump with viewimgfs will be useful too
- You should add suport for working with files inside the "dump" folder, it's a PITA having to move them up and down the build folder manually
- A progress bar or a message telling you to wait until something is completed will be nice.
Still cooking a silly rom to test it, will report more things back when finished
hi there...
small bug:
clicked on ipl browse... selected nothing... then this cames:
See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.
************** Exception Text **************
System.ArgumentException: The path is not of a legal form.
at System.IO.Path.NormalizePathFast(String path, Boolean fullCheck)
at System.IO.Path.GetFullPathInternal(String path)
at System.IO.FileInfo..ctor(String fileName)
at ROMBaker.Form1.Button2_Click(Object sender, EventArgs e)
at System.Windows.Forms.Control.OnClick(EventArgs e)
at System.Windows.Forms.Button.OnClick(EventArgs e)
at System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.ButtonBase.WndProc(Message& m)
at System.Windows.Forms.Button.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
************** Loaded Assemblies **************
mscorlib
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.42 (RTM.050727-4200)
CodeBase: file:///C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll
----------------------------------------
ROMBaker
Assembly Version: 2.0.0.0
Win32 Version: 2.0.0.0
CodeBase: file:///C:/Documents%20and%20Settings/Steve/Desktop/ROMKitchen/ROMBaker-Beta/ROMBaker.exe
----------------------------------------
Microsoft.VisualBasic
Assembly Version: 8.0.0.0
Win32 Version: 8.0.50727.42 (RTM.050727-4200)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/Microsoft.VisualBasic/8.0.0.0__b03f5f7f11d50a3a/Microsoft.VisualBasic.dll
----------------------------------------
System
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.42 (RTM.050727-4200)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Windows.Forms
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.42 (RTM.050727-4200)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Windows.Forms/2.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System.Drawing
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.42 (RTM.050727-4200)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Drawing/2.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
System.Configuration
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.42 (RTM.050727-4200)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Configuration/2.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
----------------------------------------
System.Xml
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.42 (RTM.050727-4200)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Xml/2.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
System.Runtime.Remoting
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.42 (RTM.050727-4200)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Runtime.Remoting/2.0.0.0__b77a5c561934e089/System.Runtime.Remoting.dll
----------------------------------------
************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.
For example:
<configuration>
<system.windows.forms jitDebugging="true" />
</configuration>
When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.
I downloaded it and will test it tonight.
right, these exceptions you're getting are just silly; I've revised the file with a fix to stop that happening now, so any exceptions will be genuinely useful.
to Pof: I'll work on getting that dump folder working; it should be easy to do actually now I think about it.
sadly a progress bar is not do-able but a message instructing you to wait is, so I'll include that.
Also, all new revisions will be maintained on my first post; I'm just uploading a new one now so the old is getting deleted.
I can't seem to get the default.hv to dump to default.reg... I went to the dump folder, moved the default.hv up to the parent dir. and selected the dump registry option. Nothing happened.
I did set the env. variable _FLATRELEASEDIR=. in one cmd window, but, I'm not sure if that's the issue anyways.... Any ideas?
Oh, using the commands manually rgucomp.... worked.
I love the serial # prompt.. Good thing I had a keygen lying around for it!
w4r3z are cool!
odd... I can BUILD the reg. from a .reg file -> .hv, but I can't make .hv -> .reg.
LegolasTheElf said:
odd... I can BUILD the reg. from a .reg file -> .hv, but I can't make .hv -> .reg.
Click to expand...
Click to collapse
my mistake; it was using an absolute rather than relative path, uploading the revised one now.
oli, under vista i'm always getting: (as output in the regfile..)
DisplayHiveFileAsText: (RGUComp) !ERROR unable to mount hive file "default.hv"
Click to expand...
Click to collapse
and i thought it was my fault because i played around with rgucomp a while..
it doesnt even work from the commandline...
Code:
c:\xda-dev>set _FLATRELEASEDIR=.
c:\xda-dev>rgucomp.exe -o default.hv
Microsoft (R) RGUComp Version 1.0.000
Registry file processor and hive builder.
Copyright (C) 2004 Microsoft Corporation All Rights Reserved.
built: Nov 19 2004 15:17:13
DisplayHiveFileAsText: (RGUComp) !ERROR unable to mount hive file "default.hv"
rgucomp.exe and default.hv are in the same directory.. used to work on xp.. damn
dutty said:
oli, under vista i'm always getting:
and i thought it was my fault because i played around with rgucomp a while..
it doesnt even work from the commandline...
Code:
c:\xda-dev>set _FLATRELEASEDIR=.
c:\xda-dev>rgucomp.exe -o default.hv
Microsoft (R) RGUComp Version 1.0.000
Registry file processor and hive builder.
Copyright (C) 2004 Microsoft Corporation All Rights Reserved.
built: Nov 19 2004 15:17:13
DisplayHiveFileAsText: (RGUComp) !ERROR unable to mount hive file "default.hv"
rgucomp.exe and default.hv are in the same directory.. used to work on xp.. damn
Click to expand...
Click to collapse
hmm... a stab in the dark, but firstly; download my new kitchen, and secondly, try setting the permissions on the folder to allow Everyone full access... just a stab in the dark
Related
I've searched the whole wiki and most of the forum about the pro's and con's regarding upgrading my TyTN from WM5 to WM6. I'm very tempted, but...
Upgrading seems very straightforward but I still have a few unanswered questions:
1) What's KITL?
2) How can I check if my device is SuperCID?
3) I have a "Dutch" TyTN (hermes), can I put the LVSW edition on it even if it is not SuperCID?
4) Is it possible to revert the LVSW update by installing the "HTC TyTN ROM Update v1.18.254.104 Nederlandstalig (ZIP, 47.5MB)"
(the original dutch upgrade rom, provided by the official Dutch import/support firm of HTC devices) - just in case?
And the ultimate question for someone who has never done this before:
Upgrading with this LVSW edition is really this simple?
If one of my questions was answered in the wiki or somewhere on the forum I apologize in advance for not searching well enough...
Check out the guides in my signature
Thanks bkbroil!
So after installing HardSPL it is that simple
I kept thinking that it was harder than it was also....I finally found those guides with screenshots and it eased my mind... I just hope it helps someone else out...
Beware...you'll be flashing all the time now!
Thanks for posting this. I've been reading the forums like crazy about updating radio and OS. Anyone that is new to this will encounter tons of suggestions to read the forum and read the wiki...but neither place sums it up neatly like the linked guides do.
What I fail to understand, though, is why OS and ROM updates are ActiveSync centric. It's like asking someone to use a second computer to update their first. There are instructions now to perform some upgrades without a PC...
see this thread:
http://forum.xda-developers.com/showthread.php?t=295735
But obviously you can't install Hard-SPL that way since the ActiveSync installer asks you what version is currently installed.
I guess this is how the Windows world ends up selling more computers (by requiring everyone to have at least two--desktop and mobile) and more copies of the OS (one for the desktop and one for the mobile).
ieee1394 said:
But obviously you can't install Hard-SPL that way since the ActiveSync installer asks you what version is currently installed.
Click to expand...
Click to collapse
You can do _everything_ without activesync installed, you just need to get a better understanding of what the RUU does.
The RUU sends "EnterBootloader.exe" to the device via activesync, this puts the device in bootloader mode, then it kills activesync and does not use it at all anymore.
Custom RUUs have "EnterBootloader.exe" replaced by "SSPL-HERM.exe", so SSPL is executed on the device. Both exe files put your device in bootloader mode, you can copy them to your hermes and click them, has the same effect as having the RUU pushing them through activesync.
Also you can flash without a PC (and without windows), just put the NBH file on a fat32 formated SD card and name it "HERMIMG.nbh". If the file is not signed, use SSPL-HERM.exe, if the file is signed, just put the device in bootloader mode, and if you use HardSPL, you don't need SSPL at all.
If you know really understand this, you'll realize activesync is just a bugger
lextendo said:
1) What's KITL?
Click to expand...
Click to collapse
http://wiki.xda-developers.com/index.php?pagename=Hermes_Resets
click on the link "more info".
2) How can I check if my device is SuperCID?
Click to expand...
Click to collapse
http://wiki.xda-developers.com/index.php?pagename=Hermes_UpgradeFAQ#Q16
Read where it says "If you want to know which CID your device has,...."
3) I have a "Dutch" TyTN (hermes), can I put the LVSW edition on it even if it is not SuperCID?
Click to expand...
Click to collapse
yes
4) Is it possible to revert the LVSW update by installing the "HTC TyTN ROM Update v1.18.254.104 Nederlandstalig (ZIP, 47.5MB)" just in case?
Click to expand...
Click to collapse
yes
error in bootloader
I am unable to install Hard SPL. While in bootloader i plugin usb into tytn, my notebook does not synchronize with it, gave error. in normal mood notebook synchronize properly without error. I tried ignoring this error and move further to steps given on this link
http://www.mrvanx.myzen.co.uk/wmxl/guide/HardSPL.html
But i get error and fail to install hard spl.
Any ideas?
So you checked which SPL version you have correct??
Then you reset your device and connected to activesync??
THEN you ran the updater for HardSPL v2??
@mrvanx, congratulations for shared your 'Hermes Upgrade Guide v2', GREAT JOB
error in bootloader
So you checked which SPL version you have correct??
Then you reset your device and connected to activesync??
THEN you ran the updater for HardSPL v2??
Yes exactly followed it twice, did not tried thrid time with a fear of bricking my device.
So, what can be error and how to fix it?
deailed error message
I got this error after i tried again.
Unhandled exception has occurred in your application. If you click continue, the application will ignore this error and attempt to continue. If you click Quit, the aplication will close immediately.
Access to the path c:\Documents and settings\Waqar Bashir\My Documents\Computer\Pocketpc\Softwares\Hard-SPL\RomupgradeUt.exe is deined.
Detailed Error Message
See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.
************** Exception Text **************
System.UnauthorizedAccessException: Access to the path 'C:\Documents and Settings\Waqar Bashir\My Documents\Computer\Pocketpc softwares\Hard-SPL\RomUpgradeUt.exe' is denied.
at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
at System.IO.File.Delete(String path)
at RUUWrapper.Form1.button1_Click(Object sender, EventArgs e)
at System.Windows.Forms.Control.OnClick(EventArgs e)
at System.Windows.Forms.Button.OnClick(EventArgs e)
at System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.ButtonBase.WndProc(Message& m)
at System.Windows.Forms.Button.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
************** Loaded Assemblies **************
mscorlib
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.42 (RTM.050727-4200)
CodeBase: file:///C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll
----------------------------------------
RUUWrapper
Assembly Version: 1.0.0.0
Win32 Version: 1.0.0.0
CodeBase: file:///C:/Documents%20and%20Settings/Waqar%20Bashir/My%20Documents/Computer/Pocketpc%20softwares/Hard-SPL/RomUpgrade.exe
----------------------------------------
System
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.42 (RTM.050727-4200)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
zip
Assembly Version: 0.0.0.0
Win32 Version: 1.0.0.0
CodeBase: file:///C:/Documents%20and%20Settings/Waqar%20Bashir/My%20Documents/Computer/Pocketpc%20softwares/Hard-SPL/RomUpgrade.exe
----------------------------------------
RUUWrapper
Assembly Version: 1.0.0.0
Win32 Version: 1.0.0.0
CodeBase: file:///C:/Documents%20and%20Settings/Waqar%20Bashir/My%20Documents/Computer/Pocketpc%20softwares/Hard-SPL/RomUpgrade.exe
----------------------------------------
System.Windows.Forms
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.42 (RTM.050727-4200)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Windows.Forms/2.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System.Drawing
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.42 (RTM.050727-4200)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Drawing/2.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.
For example:
<configuration>
<system.windows.forms jitDebugging="true" />
</configuration>
When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.
pof said:
You can do _everything_ without activesync installed, you just need to get a better understanding of what the RUU does.
Click to expand...
Click to collapse
Yes I understand that you can copy an nbh (renamed to HERMIMG.nbh) onto a fat32 sd card and then flash from there. The part I don't understand is why is everyone so concentrated on using ActiveSync when it isn't necessary at all? Is the idea that it just supplies a wrapper to make things a little bit safer for those that....well, don't have any understanding of what they are doing?
The other part I don't understand is specific to HardSPL in that the installer asks which SPL you currently have installed. Obviously, if you load from sd card directly you will not be prompted by any questions. Correct? I guess it is really a question for Oli?
ieee1394 said:
The part I don't understand is why is everyone so concentrated on using ActiveSync when it isn't necessary at all? Is the idea that it just supplies a wrapper to make things a little bit safer for those that....well, don't have any understanding of what they are doing?
Click to expand...
Click to collapse
It pushes EnterBootloader.exe which is SSPL renamed, so you can flash unsigned code. People does'nt seem to notice much about it, but the RUU is hacked to do so... if not, you'd have to run SSPL manually (and disable activesync because it takes the USB port) and then do the flash, so for comodity they use activesync (although is not needed).
ieee1394 said:
The other part I don't understand is specific to HardSPL in that the installer asks which SPL you currently have installed. Obviously, if you load from sd card directly you will not be prompted by any questions. Correct? I guess it is really a question for Oli?
Click to expand...
Click to collapse
Because the RUU for SPL 1.11 is different, the common base has changed and the bootloader commands are not the same. So it asks you which SPL you have, in order to unpack the right RUU for you.
@reliance
Try the new version of HardSPL using my updated guide, also can you check that the .net framwork on your PC is up-to-date as it may be something gone awry with that!?
Thanx to Mr Vanx and LVSW
After reading the wiki and -the replies on- this forum I had enough 'courage' to go where many have gone before....
Though I was a little nervous about the 'white screen' issue! It might be a 'little' problem to the senior members on this forum, but for a 'newbie flasher' it's not.
I followed Mr Vanx's guide to the letter and flashed the LVSW edition on my HERM200 without any problem.
So if you are a dummy (regarding upgrading your Hermes) like me, I guess my advise would be:
1) read the forum and the wiki over and over again. 'The forum' will answer most of your questions (hint: use the search option!!!)
2) do not try to flash the newest version of a rom, just wait a few days for the dust to settle
3) When you made a choice on what rom you want to flash, search for a detailed guide for that particular rom (though I guess they will not differ much from rom to rom)
And if any moderator might look into this post: I think Mr Vanx's guide is real wiki stuff. Its far more detailed than the current wiki entry Hermes_Upgrade For Beginners
Mr Vanx's step to install Hard-SPL is a important step I mis in the wiki entry.
Introduction
Kheb allows you to see exactly what changes any software makes on your Pocket PC. It works by taking complete snapshots of your PPC's state, and creating a diff file that shows the changes between snapshots.
Kheb is a useful tool for software developers, ROM chefs, and advanced users.
Examples of useful stuff Kheb can do
• Shows you where an application places its files - for example, sometimes the executable and shortcuts are placed in obscure locations, with Kheb you can always find them.
• Security – See for yourself if dubious applications install sneaky registry settings to auto-load, or if they leave traces behind after being uninstalled.
• Helps create a custom CAB or OEM package based on an existing CAB, even if the CAB uses setup.dll to run code during installation. Great for aspiring ROM Chefs.
• Gives you a deeper understanding of how system settings work under the hood.
• Tells you exactly where an application hides its "registration information" after you enter a valid serial number. It can help you avoid going through annoying registration schemes over and over. Note that Kheb isn’t a hacking tool – you still need to properly register first, though Kheb could be used to easily create pre-registered releases.
• Helps you learn – if you’re a software developer, studying real-life examples of registry changes will let you find interesting and useful hooks into the system that you can use in your own software.
UPDATE New version 1.1 released.
Notes
• Requires .NET Compact Framework 3.5
• Please read the help file accessible through the menu for usage instructions.
• A complete snapshot of your device can take several minutes, so be patient...
• If you have network mapped storage, you will probably want to exclude the network directory in kheb.ini.
• I’d like to hear about your experience using Kheb - bug reports, feature requests, usability suggestions are all appreciated.
• If you create a release using Kheb, I'd appreciate it if you mention the program. Thank you!
This free software is provided AS IS, and you, its user, assume all risks when using it.
If you find Kheb useful, and want to support my efforts, please consider a small donation:
Changelog
v1.1
• Improved storage card detection algorithm.
• Improved error reporting - info about the exact problematic registry key\file is written to error.log file.
• Improved error handling - Kheb recovers from most IO problems (permissions, unconnected network filesystems, etc) and continues running.
• New icon
• "Generate OEM from diff" item is only enabled if there are existing diffs.
• Latest diff is auto selected
• More entries in kheb.ini
v1.0
• Initial public release
Ideas for a future version
• gui editor for kheb.ini file
• ability to pause\abort Kheb operation
• ability to run in the background with lowered priority
• Separate kheb.ini into 2 files to allow retaining user setting when upgrading version
• Real time monitoring of registry modifications and filesystem changes
• Ability to add description to diffs
• XDA_UC compatible .reg
• Ability to name snapshots, not just diffs
Elemris
Getting error while taking snapshot
I am getting error whil taking snapshot below are errors if that can help you look into issue.
This happend twice on my first run and second run
I do see files in SC\kheb folder for registry and dirlist but look like dirlist is not completed.
An unexpected error has occurred in Kheb.exe.
Select Quit and then restart this program, or select Details for more information.
Click to expand...
Click to collapse
Kheb.exe
DirectoryNotFoundException
at System.IO.Directory.InternalGetFileDirectoryNames(String fullPath, Boolean file)
at System.IO.DirectoryInfo.GetDirectories(String searchPattern)
at Kheb.FileDirList.WalkDirectoryTree(DirectoryInfo root, FileVisitorHandler fileVisitor, List`1 ExcludedPaths)
at Kheb.FileDirList.WalkDirectoryTree(DirectoryInfo root, FileVisitorHandler fileVisitor, List`1 ExcludedPaths)
at Kheb.FileDirList.WalkDirectoryTree(DirectoryInfo root, FileVisitorHandler fileVisitor, List`1 ExcludedPaths)
at Kheb.FileDirList.WalkEntireFileSystem(FileVisitorHandler fileVisitor, List`1 ExcludedPaths)
at Kheb.Kheb.SnapshotDirlist(String outputFilename)
at Kheb.Kheb.TakeSnapshot(String snapshotsName, Boolean doRegistry, Boolean doDirlist)
at Kheb.KhebForm.buttonSnapshot_Click(Object sender, EventArgs e)
at System.Windows.Forms.MenuItem.OnClick(EventArgs e)
at System.Windows.Forms.Menu.ProcessMnuProc(Control ctlThis, WM wm, Int32 wParam, Int32 lParam)
at System.Windows.Forms.Form.WnProc(WM wm, Int32 wParam, Int32 lParam)
at System.Windows.Forms.Control._InternalWnProc(WM wm, Int32 wParam, Int32 lParam)
at Microsoft.AGL.Forms.EVL.EnterMainLoop(IntPtr hwnMain)
at System.Windows.Forms.Application.Run(Form fm)
at Kheb.Program.Main()
Click to expand...
Click to collapse
v3patel, thank you for the detailed error report, I'm looking into it.
Update: There is some specific directory on your device that Kheb can't handle - perhaps a temporary directory or one that is used by other apps. Posted a new version that should handle the problem, please try it as I can't reproduce the issue. It might be possible to see which directory is causing the problem by looking at where the dirlist file stopped.
also errors right after start
HTC Leo, ROM 1.66.479.2 (76641) WWE
Code:
Kheb.exe
IOException
at System.IO.__Error.WinIOError(Int32 errorCode, String str)
as System.IO.Directory.InternalCreateDirectory(String fullPath, Sting path)
at System.IO.Directory.CreateDirectory(String path)
at Kheb.Kheb.FetchDirectoryListing(String directory)
at Kheb.Kheb.FetchSnapshotList()
at Kheb.KhebForm.RefreshForm()
at Kheb.KhebForm..ctor()
at Kheb.Program.Main()
PS. anyone knows how could I copy the above error report instead of having to retype it from device?
p107r0 said:
also errors right after start
HTC Leo, ROM 1.66.479.2 (76641) WWE
Code:
Kheb.exe
IOException
at System.IO.__Error.WinIOError(Int32 errorCode, String str)
as System.IO.Directory.InternalCreateDirectory(String fullPath, Sting path)
at System.IO.Directory.CreateDirectory(String path)
at Kheb.Kheb.FetchDirectoryListing(String directory)
at Kheb.Kheb.FetchSnapshotList()
at Kheb.KhebForm.RefreshForm()
at Kheb.KhebForm..ctor()
at Kheb.Program.Main()
PS. anyone knows how could I copy the above error report instead of having to retype it from device?
Click to expand...
Click to collapse
This error means Kheb tries to create the "\Storage Card\Kheb\Snapshots" directory and the operation fails due to an IO error.
Could you try creating the directory manually, then running Kheb and telling me what happened? the directories are named:
"\Storage Card\Kheb\snapshots"
"\Storage Card\Khed\diff"
Also is your storage card named "Storage Card" ? Kheb should recognize the storage regardless of name, but it could be a problem.
use http://mymobiler.com/
p107r0 said:
also errors right after start
HTC Leo, ROM 1.66.479.2 (76641) WWE
PS. anyone knows how could I copy the above error report instead of having to retype it from device?
Click to expand...
Click to collapse
if you are using active sync then use my mobiler http://mymobiler.com/
I use it not just copy paste but for screen shot and many other things
Elemris said:
Could you try creating the directory manually, then running Kheb and telling me what happened? the directories are named:
"\Storage Card\Kheb\snapshots"
"\Storage Card\Khed\diff"
Also is your storage card named "Storage Card" ? Kheb should recognize the storage regardless of name, but it could be a problem.
Click to expand...
Click to collapse
Card is indeed named "Storage Card", created both dirs as advised:
Storage Card\Kheb\Snapshots
Storage Card\Kheb\diff
the same error pops up
v3patel said:
use my mobiler
Click to expand...
Click to collapse
thanks!! I have it, played with it, liked it, yet somehow it never occured to me I could use it with some purpose...
Erro again
Elemris said:
v3patel, thank you for the detailed error report, I'm looking into it.
Update: There is some specific directory on your device that Kheb can't handle - perhaps a temporary directory or one that is used by other apps. Posted a new version that should handle the problem, please try it as I can't reproduce the issue. It might be possible to see which directory is causing the problem by looking at where the dirlist file stopped.
Click to expand...
Click to collapse
it errored again
last files in dirlist are
\Windows\eT9DisInput.dll 129197743296870237
\Windows\eT9ime.dll 129197743296870237
Click to expand...
Click to collapse
next file in list is eT9MyWords.exe hopefully this may help.
v3patel, p107r0 - I'm contacting you privately to figure these issues out. It's amazing how different each device can be. Thanks for your help!
Amazing program! Useful to every kind of user; power-user, programer etc..
Thank you very very much,
Keep it up!
Hi,
the snapshot function crashes, error log is attached.
with friendly greet
starbase64
It likes very interesting. Will test for some days and report back here.
So far...
Running on HTC Imagio with stock ROM runs fine.
Installed with no errors to storage card, runs off storage card.
I did a snap shot, then waited and then I did a diff and it very properly found a diff in the sync'ing status.
I like this idea of knowing what's changing in the registry when installing software.
have touch hd..with 6.1 stock rom .....
Kheb v1.0 ..working very, very smooth ..no errors
this is really a very" usefull tool ".... a must have ?
thank you
willcor
I could do the Snapshots & Diff but Help produces the following error:
Code:
Kheb.exe
Win32Exception
at System.Diagnostics.Process.StartWithShellExecuteEx(ProcessStartInfo startInfo)
at System.Diagnostics.Process.Start()
at System.Diagnostics.Process.Start(ProcessStartInfo startInfo)
at Kheb.KhebForm.menuItemHelp_Click(Object sender, EventArgs e)
at System.Windows.Forms.MenuItem.OnClick(EventArgs e)
at System.Windows.Forms.Menu.ProcessMnuProc(Control ctlThis, WM wm, Int32 wParam, Int32 lParam)
at System.Windows.Forms.Form.WnProc(WM wm, Int32 wParam, Int32 lParam)
at System.Windows.Forms.Control._InternalWnProc(WM wm, Int32 wParam, Int32 lParam)
at Microsoft.AGL.Forms.EVL.EnterMainLoop(IntPtr hwnMain)
at System.Windows.Forms.Application.Run(Form fm)
at Kheb.Program.Main()
Kheb is installed on SDCard.
Really nice job! I already have SK Tracker, but I like the way this tool dumps the registry and the full device directory with each snapshot. The OEM option is also really handy-it's great having the reg keys dumped directly to one file.
illi said:
I could do the Snapshots & Diff but Help produces the following error:
Code:
Kheb.exe
Win32Exception
at System.Diagnostics.Process.StartWithShellExecuteEx(ProcessStartInfo startInfo)
at System.Diagnostics.Process.Start()
at System.Diagnostics.Process.Start(ProcessStartInfo startInfo)
at Kheb.KhebForm.menuItemHelp_Click(Object sender, EventArgs e)
at System.Windows.Forms.MenuItem.OnClick(EventArgs e)
at System.Windows.Forms.Menu.ProcessMnuProc(Control ctlThis, WM wm, Int32 wParam, Int32 lParam)
at System.Windows.Forms.Form.WnProc(WM wm, Int32 wParam, Int32 lParam)
at System.Windows.Forms.Control._InternalWnProc(WM wm, Int32 wParam, Int32 lParam)
at Microsoft.AGL.Forms.EVL.EnterMainLoop(IntPtr hwnMain)
at System.Windows.Forms.Application.Run(Form fm)
at Kheb.Program.Main()
Kheb is installed on SDCard.
Click to expand...
Click to collapse
Thanks for the report. "Help" opens the kheb.html file in your browser. If that doesn't work on your device, you can just look at the kheb.html manually, it's in the Program Files\Kheb directory.
Is it possible you don't have a browser installed? Or perhaps no program is defined to handle html files?
starbase64 said:
Hi,
the snapshot function crashes, error log is attached.
with friendly greet
starbase64
Click to expand...
Click to collapse
Thanks, the error means a specific registry key is causing problems. I'll look into it. Meanwhile, your can try the snapshot and diff for the file system only, by unchecking "Registry" in the "Storage Sites" menu.
Elemris said:
Thanks for the report. "Help" opens the kheb.html file in your browser. If that doesn't work on your device, you can just look at the kheb.html manually, it's in the Program Files\Kheb directory.
Is it possible you don't have a browser installed? Or perhaps no program is defined to handle html files?
Click to expand...
Click to collapse
I have IE in ROM but the default browser, Opera Mobile 10, is installed on SDCard. I think there is a problem with my ROM; clicking the html files returns an error saying that there is no application associated... I still get an error even if I force open by these two browsers. So it is not your apps problem.
Thank you for sharing.
Suggestion for .reg export file
This will come in handy for me (and others) who use the XDA_UC ability of custom ROMs. Instead of the current outputted .reg file where at the top of the file it says 'REGEDIT4' It would be beneficial to put it in the XDA_UC form with 'Windows Registry Editor Version 5.00' and 2 blank lines at the end (So it can be read from the file after flashing) Just a thought though. Great app!
I updated the phone with the J16 update through odin and set up the one click root on the computer. I dont get the window when I connect the phone to the computer, but I do get the noise that its connected. The one click program comes on and I click the window to root and get an error message that says this;
See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.
************** Exception Text **************
System.ComponentModel.Win32Exception (0x80004005): The system cannot find the file specified
at System.Diagnostics.Process.StartWithShellExecuteEx(ProcessStartInfo startInfo)
at System.Diagnostics.Process.Start()
at System.Diagnostics.Process.Start(ProcessStartInfo startInfo)
at WindowsApplication1.Form1.Button1_Click(Object sender, EventArgs e)
at System.Windows.Forms.Control.OnClick(EventArgs e)
at System.Windows.Forms.Button.OnClick(EventArgs e)
at System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.ButtonBase.WndProc(Message& m)
at System.Windows.Forms.Button.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
************** Loaded Assemblies **************
mscorlib
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.1 (RTMRel.030319-0100)
CodeBase: file:///C:/Windows/Microsoft.NET/Framework/v4.0.30319/mscorlib.dll
----------------------------------------
Galaxy One Click Root
Assembly Version: 1.0.0.0
Win32 Version: 1.0.0.0
CodeBase: file:///C:/Users/owner/Desktop/one%20click%20root/Galaxy_One-Click_Root.exe
----------------------------------------
Microsoft.VisualBasic
Assembly Version: 10.0.0.0
Win32 Version: 10.0.30319.1 built by: RTMRel
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/Microsoft.VisualBasic/v4.0_10.0.0.0__b03f5f7f11d50a3a/Microsoft.VisualBasic.dll
----------------------------------------
System.Windows.Forms
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.1 built by: RTMRel
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System.Drawing
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.1 built by: RTMRel
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
System
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.1 built by: RTMRel
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Runtime.Remoting
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.1 (RTMRel.030319-0100)
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Runtime.Remoting/v4.0_4.0.0.0__b77a5c561934e089/System.Runtime.Remoting.dll
----------------------------------------
************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.
For example:
<configuration>
<system.windows.forms jitDebugging="true" />
</configuration>
When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.
If I try to root anyway the phone never goes into download mode.
Whats up?
Maybe try it via the OCLF app in the market? If I remember correctly it has a root option also.
Also
The one click root program - doesn't it require the phone to be in usb debug mode? - dumb question but is it?
yes its in debug mode
I used ryans app, worked great.
I had a problem with the lag fix the last time I used it. should I use ryans with the J16 update?
rbcamping said:
I used ryans app, worked great.
I had a problem with the lag fix the last time I used it. should I use ryans with the J16 update?
Click to expand...
Click to collapse
you should share with everyone your solution so the same question doesn't get created in a new thread. Im having the same problem. what exactly did you do to get root? Please let me know
Any reason to just not download the update.zip and flash it via stock recovery?
s15274n said:
Any reason to just not download the update.zip and flash it via stock recovery?
Click to expand...
Click to collapse
That method doesn't work. The superuser icon shows up but it doesn't give you root access. I've only ran into this problem when running J16. Maybe there is a new method for root because samsung changed some things up with J16
^ actually, you are incorrect. Me and many others have used this method and I can assure you my JI6 rooted just fine. I'm running bionix now...
It works well for me.
I flashed the JI6 stock with Odin.
s15274n said:
^ actually, you are incorrect. Me and many others have used this method and I can assure you my JI6 rooted just fine. I'm running bionix now...
Click to expand...
Click to collapse
I am using the Odin OTA for J16.. i think they've blocked root for the method we use. I guess I'll figure it out.
^ again, no they did not.
I flashed via Odin yesterday. I could not get the update.zip to work (tried through recovery 4 times). Not sure why, eventually I got root via ocla in market...
i did the J16 update using Kies and was able to do the OCLF, lag is fine but when i rooted through the OCLF app i can explore files via root explorer but it dosent allow me to delete even with r/w mounted. it will say that the file has been deleted but it actually remains (.apk, .odex....etc) i cant seem to get the stock applications off of the phone.
When I initially updated to JI6 using Odin, I tried to root using the update.zip in stock recovery and encountered the same problem - the program ran but I kept getting errors. FCs and apps requiring root saying I didn't have it. The problem was that I updated to JI6 straight from JI2.
Once I flashed the original stock ROM and then flashed JI6 over that, the update.zip worked fine in stock recovery.
I used ryans lag and root app from the market and it worked fine.
The phone still has lag even with the fix. the qaudrant scores are in the 2000s and the GPS still sucks
Shrivel said:
When I initially updated to JI6 using Odin, I tried to root using the update.zip in stock recovery and encountered the same problem - the program ran but I kept getting errors. FCs and apps requiring root saying I didn't have it. The problem was that I updated to JI6 straight from JI2.
Once I flashed the original stock ROM and then flashed JI6 over that, the update.zip worked fine in stock recovery.
Click to expand...
Click to collapse
Something is fishy... I flashed ji6 over original stock and am having the same problems. One click root and update.zip don't work... Anyone 'smart' have any ideas what's going on? Seems like a lot of different variables are having problems...
I updated my phone to JI6 using Odin and then applied the one click root and then applied the one click lag fix, works fine for me.
************ UPDATE *****************
update.zip flashable for DSC and DSC PDroid can be found at
openssl 1.0.1e update for DSC/407
*****************************************
Hello,
you may have heard of the badly choosen default ssl ciphers (1) in gingerbread.
Gingerbread devices use outdated encryption algorithms for ssl communication.
That problem effects also gingerbread based roms like 407 or dsc. You can check this by sending
your default browser (or for example nakedbrowser) to a ssl browser test-server (2)
You will get a result like in attachment 1 ciphers_original: We are using the RC4-SHA without perfect forward secrecy. That is problematic cause of the Lucky 13 attack agains this encryption (3)
With some patch in core.jar in our framework (attachment ciphers_reorder.patch) I got DHE-RSA-AES128-SHA which is considered more secure and also supports perfect forward secrecy. (attachment ciphers_pfs)
You can get my core.jar from http://ge.tt/api/1/files/1MKLbUv/0/blob?download. Install it into /system/framework and rebuild your dalvik-cache.
I can't support TLSv1.1 or TLSv1.2 yet, because it would need to recompile a more recent version of libssl.so.
Users of Opera get even DHE-RSA-AES256-SHA in their connection (attachment ciphers_opera) which is considered state-of-the art cryptography. But even than, other android apps will use the badly choosen systems default. So it is a good idea even for opera
users, to update core.jar.
Can please someone confirm my findings, and install core.jar in a 407 or dsc rom and check your browser on (2)
(1) http://op-co.de/blog/posts/android_ssl_downgrade/
(2) https://cc.dcsec.uni-hannover.de/
(3) http://www.isg.rhul.ac.uk/tls/Lucky13.html
@hunderteins,
Thanks for the post.
I am on currently BB407, PCM ROM. Should I do this too?
How is it, which one to choose? Copy your given "core.jar" and paste to "/system/framework" and rebuild your dalvik-cache... OR flash " ciphers_reorder.patch" ?
Ops, sorry I don't know how to handle file.patch... how is it?
Attached are test run using Firefox and Opera.
I have also run using STOCK browser, BOAT browser, and ONE browser. Result same as you shown in your post's 1st picture.
Dell Streak | InnerSD 8GB | ExternalSD 32GB | Custom ROM
Razak RK said:
I am on currently BB407, PCM ROM. Should I do this too?
Click to expand...
Click to collapse
don't know pcm rom. Can you checksum your /system/framework/core.jar ?
For example
Code:
$ sha1sum /system/framework/core.jar
126bad1df158f1af179d353ecd9e781501a30c73 /system/framework/core.jar
$ md5sum /system/framework/core.jar
1b1c955e837b4413fcbeead0a54cd4b7 /system/framework/core.jar
If you get the same values as above, it's safe to copy my core.jar into
your /system/framework/ and rebuild dalvik-cache (for example with a restart).
If you have other checksum values, you would need to decompile (smali) your core.jar, apply the patch-file and compile (smali) it again and replace classes.dex in your core.jar.
Razak RK said:
Attached are test run using Firefox and Opera.
I have also run using STOCK browser, BOAT browser, and ONE browser. Result same as you shown in your post's 1st picture.
Click to expand...
Click to collapse
Well thank your for the confirmation. Firefox seems also immune. The others use the default android classes.
There is one thing in firefox though. It is able to use TLSv1.2 on the desktop. I wonder if this would work on the mobile version also. Go into about:config and set security.tls.version.max from 1 to 3. Reconnect to the test-server. You should see a nice 'This connection uses TLSv1.2'
Good luck,
hunderteins
Thank you Hunderteins!
How about kernel 3.0?
Are you still working on it?
Regards...
hunderteins said:
don't know pcm rom. Can you checksum your /system/framework/core.jar ?
For example
Code:
$ sha1sum /system/framework/core.jar
126bad1df158f1af179d353ecd9e781501a30c73 /system/framework/core.jar
$ md5sum /system/framework/core.jar
1b1c955e837b4413fcbeead0a54cd4b7 /system/framework/core.jar
If you get the same values as above, it's safe to copy my core.jar into
your /system/framework/ and rebuild dalvik-cache (for example with a restart).
If you have other checksum values, you would need to decompile (smali) your core.jar, apply the patch-file and compile (smali) it again and replace classes.dex in your core.jar.
Well thank your for the confirmation. Firefox seems also immune. The others use the default android classes.
There is one thing in firefox though. It is able to use TLSv1.2 on the desktop. I wonder if this would work on the mobile version also. Go into about:config and set security.tls.version.max from 1 to 3. Reconnect to the test-server. You should see a nice 'This connection uses TLSv1.2'
Good luck,
hunderteins
Click to expand...
Click to collapse
~•~•~•~•~
@hunderteins,
Thank you for your reply.
Here is the checksum I get when I run in Terminal Emulator:-
$ export PATH=/data/local/bin:$PATH
$sha1sum /system/framework/core.jar
1291fcce44f4be036e2209ccb46d3313b65bdfdc /system/framework/core.jar
$md5sum /system/framework/core.jar
19bd48b8eac1bb123a823d039415a344 /system/framework/core.jar
$
So, they are NOT the same.
I don't have knowledge of how to decompile (smali) of core.jar, applying the patch-file, compile (smali) it again and replace classes.dex in my core.jar. Nope... I'm stuck to go further.
As for Firefox mobile on my Streak PCM7, I have check the menu and settings, here is NO option as per you mention.
Reason I'm interested to know is to set my Streak at best.
BTW, I'm currently installing and testing all the Streak Custom ROMs in XDA, trying to find a ROM that would probably best for my daily use = Performance+Save Power+Other Features. I probably end up having to learn to mix some ROMs into my own personal use...if I got the time to do it though...
Dell Streak | InnerSD 8GB | ExternalSD 32GB | Custom ROM
Razak RK said:
I don't have knowledge of how to decompile (smali) of core.jar, applying the patch-file, compile (smali) it again and replace classes.dex in my core.jar. Nope... I'm stuck to go further.
Click to expand...
Click to collapse
basically you need http://code.google.com/p/smali/downloads/list
a good tutorial how the framework is decompiled/updated can be found at
http://forum.xda-developers.com/showthread.php?t=1084850
for how to apply a patch to a source-file consult the manpage of patch
back to topic. I updated core.jar http://ge.tt/api/1/files/7F3UKbv/0/blob?download
Now DHE-RSA-AES256-SHA is included in the list of useable ciphers.
This way in stockbrowser/nakedbrowser the same encrpytion is used as in opera/firefox
look into attached image.
Patch is also included for thoose who find it useful.
Have a nice weekend,
hunderteins
sinan33 said:
How about kernel 3.0?
Are you still working on it?
Click to expand...
Click to collapse
didn't post in that thread, did I?
hunderteins said:
didn't post in that thread, did I?
Click to expand...
Click to collapse
Sorry dude; just eagerness
Confirmed working on Traveller DSC. ROM updates will be coming shortly.
Flashable zip for core.jar patch suitable for DSC and Traveller DSC: MediaFire | Mega
Elliptic curve Diffie–Hellman Key exchange
Hello,
the libssl 1.0.0a on the streak supports elliptic curve Diffie–Hellman key exchange.
With the right server, this speeds up https compared to normal Diffie–Hellman key exchange.
So I had to change the core.jar again to support these cyphers.
With this update I removed the know weak ciphers (export, 56bit etc)
I attached a openssl command for the commandline, to check libssl.so for features. It might
be useful elsewhere.
Have fun,
hunderteins
TLSv1.1 and TLSv1.2 protocol
Hello,
SSLv3/TLSv1.0 are known to be problematic with stream ciphers (the cbc ones) and
as mentioned before, I had to compiled a more recent version of libssl to support
the modern TLS variants.
Attached are the openssl binary and the libssl.so and libcrypto.so of openssl 1.0.1e.
They work on my streak and I get a clean https TLSv1.2 connection to the testserver.
Next step is, to modify core.jar again to get the modern GCM streaming methods
and SHA384 hashes.
Have a nice evening,
hunderteins
GCM streaming, sha384 hashes and server name indication (SNI)
Hello,
as mentioned before, I modified core.jar to match the ciphers from libssl 1.01e. So we get modern ciphers like ECDHE-RSA-AES256-GCM-SHA384 which are considered strong cryptographie. That's even more recent than Android 4.4 KitKat.
But Android Gingerbread has another serious flaw: SNI (server name indication) is not supported with Apache Http Client. Google fixed this *tada* in Honeycomb.
I looked into that problem, but we have to change framework.jar for that, too.
I attached the patches against the backsmalied core.jar and framework.jar. Together with openssl 1.0.1e I get a very beautiful https connection to the testservers (attached screenshots): ECDHE-RSA-AES256-GCM-SHA384 with TLS V1.2 and SNI - in stock android 2.3 browser.
Please confirm my findings. I'll try to make an streakmod compatible update.zip to spread that little security to the masses. If you point me to your core.jar/framework.jar I will consider to integrate your rom into that update.zip.
Have fun,
hunderteins
So if I understand how you put the update.zip together, the update patches the files rather than simply copying a new version of the file over the existing one?
BTW, the PDroid version is working perfectly.
Strephon Alkhalikoi said:
So if I understand how you put the update.zip together, the update patches the files rather than simply copying a new version of the file over the existing one?
BTW, the PDroid version is working perfectly.
Click to expand...
Click to collapse
Thank you for your feedback.
Update.zip deploys openssl 1.0.1e into /system/lib and /system/bin. It replaces classes.dex inside framework.jar and core.jar when the sha1_check is correct. That is mostly like replacing the files itself, because classes.dex is the main ingredient.
An elegant way would be to baksmali/smali on the device itself, but that didn't work because of memory constraint.
have fun,
hunderteins
openssl 1.0.1g for android 2.3
Hello,
you may have heard of the heartbleed bug [1] before. The 1.0.1e version of openssl I did build for the Dell Streak last autumn is affected. So I made an updated package and attached it. Just put the files into your /system/bin and /system/lib and reboot.
Good luck,
hunderteins
[1] http://heartbleed.com/
hunderteins said:
Hello,
you may have heard of the heartbleed bug [1] before. The 1.0.1e version of openssl I did build for the Dell Streak last autumn is affected. So I made an updated package and attached it. Just put the files into your /system/bin and /system/lib and reboot.
Good luck,
hunderteins
[1] http://heartbleed.com/
Click to expand...
Click to collapse
I'll make a flashable zip for this shortly as well as release an update to Traveller DSC.
hunderteins said:
you may have heard of the heartbleed bug before. The 1.0.1e version of openssl I did build for the Dell Streak last autumn is affected.
Click to expand...
Click to collapse
I stand corrected. The 1.0.1e version was build with -DOPENSSL_NO_HEARTBEATS. So it was not affected at all. Tested it with the stock browser and naked browser against pacemaker [1].
Anyway, 1.0.1g is not affected, too.
warning: Stock browser on Android 4.1.1 is affected.
[1] https://github.com/Lekensteyn/pacemaker
Regardless, the upgrade to 1.01g should improve performance slightly, shouldn't it?
Strephon Alkhalikoi said:
Regardless, the upgrade to 1.01g should improve performance slightly, shouldn't it?
Click to expand...
Click to collapse
I don't think so. As of today in 1.0.1-versions of openssl there are only bugfixes. New, improved features are in 1.0.2. [1]
The changelog between 1.0.1e and 1.0.1g shows detailed bugfixes:
Code:
Changes between 1.0.1f and 1.0.1g [7 Apr 2014]
*) A missing bounds check in the handling of the TLS heartbeat extension
can be used to reveal up to 64k of memory to a connected client or
server.
Thanks for Neel Mehta of Google Security for discovering this bug and to
Adam Langley <[email protected]> and Bodo Moeller <[email protected]> for
preparing the fix (CVE-2014-0160)
[Adam Langley, Bodo Moeller]
*) Fix for the attack described in the paper "Recovering OpenSSL
ECDSA Nonces Using the FLUSH+RELOAD Cache Side-channel Attack"
by Yuval Yarom and Naomi Benger. Details can be obtained from:
http://eprint.iacr.org/2014/140
Thanks to Yuval Yarom and Naomi Benger for discovering this
flaw and to Yuval Yarom for supplying a fix (CVE-2014-0076)
[Yuval Yarom and Naomi Benger]
*) TLS pad extension: draft-agl-tls-padding-03
Workaround for the "TLS hang bug" (see FAQ and PR#2771): if the
TLS client Hello record length value would otherwise be > 255 and
less that 512 pad with a dummy extension containing zeroes so it
is at least 512 bytes long.
[Adam Langley, Steve Henson]
Changes between 1.0.1e and 1.0.1f [6 Jan 2014]
*) Fix for TLS record tampering bug. A carefully crafted invalid
handshake could crash OpenSSL with a NULL pointer exception.
Thanks to Anton Johansson for reporting this issues.
(CVE-2013-4353)
*) Keep original DTLS digest and encryption contexts in retransmission
structures so we can use the previous session parameters if they need
to be resent. (CVE-2013-6450)
[Steve Henson]
*) Add option SSL_OP_SAFARI_ECDHE_ECDSA_BUG (part of SSL_OP_ALL) which
avoids preferring ECDHE-ECDSA ciphers when the client appears to be
Safari on OS X. Safari on OS X 10.8..10.8.3 advertises support for
several ECDHE-ECDSA ciphers, but fails to negotiate them. The bug
is fixed in OS X 10.8.4, but Apple have ruled out both hot fixing
10.8..10.8.3 and forcing users to upgrade to 10.8.4 or newer.
[Rob Stradling, Adam Langley]
It is sad, that on regular android devices, these bugfixes never see the light. Basically you can take these known bugs and rig most of the android 4.x devices.
reg. hunderteins
[1] http://www.openssl.org/news/changelog.html
Regardless, it's not a bad thing to have the latest version.
This is my first Windows App written in Visual C#. I've had no previous experience with this language (just C++ and Java) This was a blast learning how to code!
Pre-req's: You will need .NET 4.0 installed to work
You may need to install a different BusyBox version if it does not connect to device!!!
ADB not needed, comes packaged with AndroidLib.dll <- Embedded in application (thanks to regaw_leinad)
Does not work with Windows XP or lower
This app is for Windows that will quickly grab a:
-Logcat log : { Verbose, Debug, Info, Warning, Error, Fatal, App Force Close, Custom Filter }
-dmesg log
-last_kmsg log
To use this App effectively, you will need to grab the log AFTER the problem has occured!
Also will copy to your clipboard so you can just paste it to your favorite site or file!
Nothing fancy or elegant about this but it gets the job done! Help out our devs by getting them the Logs they need!
For screenshots check the screenshots tab at the top (DevDB Black Bar ^)
Credit also goes to @regaw_leinad for the AndroidLib.dll
Feedback is needed as this is my first Windows application!
Also, if anybody can come up with a better name for this app, I will gladly change it!
Credit goes to [insert xda-member handle here] for renaming this app to "[insert new name of application]"
Downloads can be found here: http://forum.xda-developers.com/devdb/project/?id=1462#downloads
================================================
Code:
v1312 (Windows 8 beta)
+Added debugging to find these Windows 8 bugs
v1311_v2
+More fixes in code, improved device handling when rebooting device.
v1311
+Fixed a bun in AndroidLib Library.
+Re-factored Reboot Sequence; Now devices will auto connect after a
reboot has been initiated.
+Massive code overhaul and speed improvements.
v1310
+Added Reboot Sequence {Recovery, Fastboot}
+Fixed NullReferenceException, if object is not initialized.
v1308-Beta
+New Filtering Option "Custom Filter" This will allow you to filter for what
specific log types you want.
+Removed "Silent" filtering for obvious reasons.
v1308
+New Filtering Option "App Force Close" This will allow you to only grab
the error message when an app force closes.
v1307
+UI change (not released)
v1306
+Kills all threads if any are running upon exit, small other optimizations.
v1305:
+Fixed two small bugs that caused crashes.
v1300:
+Another overhaul in code, thanks again to regaw_leinad for the help
+AndroidLib.dll is no longer needed ^
+ADB is now properly killed when closing the application ^
v1200:
+Cleaned up code, ui, added a logcat filtering option
{ Verbose, Debug, Info, Warning, Error, Fatal, Silent }
v1100:
+Added save log feature, changed up the UI a tiny bit
v1004:
+Major overhaul to code, now speedier! (thanks to regaw_leinad for the help)
v1003:
+Updated App again: Now should support ANY device :)
v1002:
+Cleaned up code, more aesthetics !
v1001:
+New Release, Cleaned up some things and added some device info !
v1000:
+Initial Release
XDA:DevDB Information
[Windows] AndroidFileUtils | Grab the Logs you need!, a Tool/Utility for the HTC Droid DNA
Contributors
.torrented, http://forum.xda-developers.com/member.php?u=3766545, regaw_leinad
Version Information
Status: Stable
Current Stable Version: AFU - v1311_v2
Created 2013-11-06
Last Updated 2014-02-14
Awesome, man! Just to let you know, you say that the user needs ADB to be installed for it to work, but AndroidLib actually has that built it. If you're really trying to access the adb binary itself, look for the ResourceFolderManager class in the library, and adb.exe exists at runtime in the "AndroidLib" folder.
regaw_leinad said:
Awesome, man! Just to let you know, you say that the user needs ADB to be installed for it to work, but AndroidLib actually has that built it. If you're really trying to access the adb binary itself, look for the ResourceFolderManager class in the library, and adb.exe exists at runtime in the "AndroidLib" folder.
Click to expand...
Click to collapse
Cool I didn't know that!
.torrented said:
Cool I didn't know that!
Click to expand...
Click to collapse
Just tried out the application. Works great!
One thing that might help the user experience:
Look into using a BackgroundWorker or the async/await combination to process all of the logcat data. This will make it so the app doesn't freeze temporarily while it's collecting the data. Also, you could do that same thing on the application startup while AndroidLib loads it's resources and starts the adb server.
Oh and one more thing, I'm not sure you called the "Dispose" method on the AndroidController object when the app closes. If you haven't already, go ahead and put that in. It stops the adb server and frees up all resources used by AndroidLib
The only reason that I say this is because adb was still running after I had closed the program.
regaw_leinad said:
Oh and one more thing, I'm not sure you called the "Dispose" method on the AndroidController object when the app closes. If you haven't already, go ahead and put that in. It stops the adb server and frees up all resources used by AndroidLib
The only reason that I say this is because adb was still running after I had closed the program.
Click to expand...
Click to collapse
You mean this? Does it matter where in my code it goes?
Code:
private void Form1_FormClosed(object sender, FormClosedEventArgs e)
{
android.Dispose();
}
.torrented said:
You mean this? Does it matter where in my code it goes?
Code:
private void Form1_FormClosed(object sender, FormClosedEventArgs e)
{
android.Dispose();
}
Click to expand...
Click to collapse
Hmm, is that already in there? Maybe put it in the FormClosing event handler. Your code should work however.
Updated to v1200!
New options for easier to read logs!!!
.torrented said:
Updated to v1200!
New options for easier to read logs!!!
Click to expand...
Click to collapse
Great update man, it's way more smooth!
If anyone could please test my Beta release and let me know if you have any issues with it Detecting the Device.
Thanks .torrented!
Downloaded beta dated today. I have my HTC Rezound plugged in as wired hotspot for PC, so I know the PC reads it, but application cannot find the device. Also tried with DNA plugged in, no go. Running Windows 7 with all the correct drivers.
The program has a huge window on my 1080p setup. it fills the screen and goes a little under my start menu.
Side note: Since it is a log grabbing program, wouldn't as name like "Android Log Master" be a better name?
Playing a little more with program. Tried running as admin, and now it will not go passed "warming CPU" been stuck there for 10+ minutes. attatched image for view of oversized window.
Edit: closed program and reopened under regular permissions (not admin) and the windows error window popped up. below code box is what the error entailed. is this normal?
Edit 2: now older version will not go passed "warming CPU". Window is fine though, doesn't go under start menu from being too large like beta.
Code:
See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.
************** Exception Text **************
System.ComponentModel.Win32Exception (0x80004005): Access is denied
at System.Diagnostics.Process.StartWithShellExecuteEx(ProcessStartInfo startInfo)
at RegawMOD.Command.RunProcessNoReturn(String executable, String arguments, Boolean waitForExit)
at RegawMOD.Android.Adb.ExecuteAdbCommandNoReturn(AdbCommand command)
at RegawMOD.Android.Adb.KillServer()
at RegawMOD.Android.AndroidController.CreateResourceDirectories()
at RegawMOD.Android.AndroidController.get_Instance()
at AndroidFileUtils.MainForm.acLoadWorker_DoWork(Object sender, DoWorkEventArgs e)
at System.ComponentModel.BackgroundWorker.WorkerThreadStart(Object argument)
************** Loaded Assemblies **************
mscorlib
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.18052 built by: FX45RTMGDR
CodeBase: file:///C:/Windows/Microsoft.NET/Framework64/v4.0.30319/mscorlib.dll
----------------------------------------
AndroidFileUtils
Assembly Version: 1.3.5114.1674
Win32 Version: 1.3.0.8
CodeBase: file:///C:/ruu_log/AndroidFileUtils.exe
----------------------------------------
System
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.18044 built by: FX45RTMGDR
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Windows.Forms
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.18047 built by: FX45RTMGDR
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System.Drawing
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.18021 built by: FX45RTMGDR
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
AndroidLib
Assembly Version: 1.5.2.0
Win32 Version: 1.3.0.8
CodeBase: file:///C:/ruu_log/AndroidFileUtils.exe
----------------------------------------
AndroidLib
Assembly Version: 1.5.2.0
Win32 Version: 1.3.0.8
CodeBase: file:///C:/ruu_log/AndroidFileUtils.exe
----------------------------------------
AndroidLib
Assembly Version: 1.5.2.0
Win32 Version: 1.3.0.8
CodeBase: file:///C:/ruu_log/AndroidFileUtils.exe
----------------------------------------
AndroidLib
Assembly Version: 1.5.2.0
Win32 Version: 1.3.0.8
CodeBase: file:///C:/ruu_log/AndroidFileUtils.exe
----------------------------------------
AndroidLib
Assembly Version: 1.5.2.0
Win32 Version: 1.3.0.8
CodeBase: file:///C:/ruu_log/AndroidFileUtils.exe
----------------------------------------
************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.
For example:
<configuration>
<system.windows.forms jitDebugging="true" />
</configuration>
When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.
Uzephi said:
Downloaded beta dated today. I have my HTC Rezound plugged in as wired hotspot for PC, so I know the PC reads it, but application cannot find the device. Also tried with DNA plugged in, no go. Running Windows 7 with all the correct drivers.
The program has a huge window on my 1080p setup. it fills the screen and goes a little under my start menu.
Side note: Since it is a log grabbing program, wouldn't as name like "Android Log Master" be a better name?
Playing a little more with program. Tried running as admin, and now it will not go passed "warming CPU" been stuck there for 10+ minutes. attatched image for view of oversized window.
Edit: closed program and reopened under regular permissions (not admin) and the windows error window popped up. below code box is what the error entailed. is this normal?
Edit 2: now older version will not go passed "warming CPU". Window is fine though, doesn't go under start menu from being too large like beta.
Code:
See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.
************** Exception Text **************
System.ComponentModel.Win32Exception (0x80004005): Access is denied
at System.Diagnostics.Process.StartWithShellExecuteEx(ProcessStartInfo startInfo)
at RegawMOD.Command.RunProcessNoReturn(String executable, String arguments, Boolean waitForExit)
at RegawMOD.Android.Adb.ExecuteAdbCommandNoReturn(AdbCommand command)
at RegawMOD.Android.Adb.KillServer()
at RegawMOD.Android.AndroidController.CreateResourceDirectories()
at RegawMOD.Android.AndroidController.get_Instance()
at AndroidFileUtils.MainForm.acLoadWorker_DoWork(Object sender, DoWorkEventArgs e)
at System.ComponentModel.BackgroundWorker.WorkerThreadStart(Object argument)
************** Loaded Assemblies **************
mscorlib
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.18052 built by: FX45RTMGDR
CodeBase: file:///C:/Windows/Microsoft.NET/Framework64/v4.0.30319/mscorlib.dll
----------------------------------------
AndroidFileUtils
Assembly Version: 1.3.5114.1674
Win32 Version: 1.3.0.8
CodeBase: file:///C:/ruu_log/AndroidFileUtils.exe
----------------------------------------
System
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.18044 built by: FX45RTMGDR
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Windows.Forms
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.18047 built by: FX45RTMGDR
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System.Drawing
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.18021 built by: FX45RTMGDR
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
AndroidLib
Assembly Version: 1.5.2.0
Win32 Version: 1.3.0.8
CodeBase: file:///C:/ruu_log/AndroidFileUtils.exe
----------------------------------------
AndroidLib
Assembly Version: 1.5.2.0
Win32 Version: 1.3.0.8
CodeBase: file:///C:/ruu_log/AndroidFileUtils.exe
----------------------------------------
AndroidLib
Assembly Version: 1.5.2.0
Win32 Version: 1.3.0.8
CodeBase: file:///C:/ruu_log/AndroidFileUtils.exe
----------------------------------------
AndroidLib
Assembly Version: 1.5.2.0
Win32 Version: 1.3.0.8
CodeBase: file:///C:/ruu_log/AndroidFileUtils.exe
----------------------------------------
AndroidLib
Assembly Version: 1.5.2.0
Win32 Version: 1.3.0.8
CodeBase: file:///C:/ruu_log/AndroidFileUtils.exe
----------------------------------------
************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.
For example:
<configuration>
<system.windows.forms jitDebugging="true" />
</configuration>
When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.
Click to expand...
Click to collapse
No that's not normal, The problem I have is it freezes when I use my DNA, but works fine when I use my Nexus 7.
I really can't see what's going on here, that is really just strange. I wonder if it has anything to do with A/V?
Thanks for trying.
Update: ever since that error I cannot have the program start up (as admin or normal) without that error and app hanging, even with no devices hooked up. Tried with both HTC phones and the Motorola Droid X2 and none. Still get same error. I know I have .NET 4.0, the error log shows it is running with your loaded modules also. Both HTC phones are S-off, Rezound running stock hboot and DNA on ENG, though I do not think that matters.
Sent from my DNA using my mind.
Update! This program may not work if you don't have a good version of busybox installed to your device! I've installed with 1.21.1 and this program works correctly!
Edit* Added v1310!
two things really quick
1. is it ppossible to just have the app run busybox in the device via temp to stop that issue
2. i tried downloading the torrent and seeding it so it is readily available but download wouldnt start but thats ok
t1gartist said:
two things really quick
1. is it ppossible to just have the app run busybox in the device via temp to stop that issue
2. i tried downloading the torrent and seeding it so it is readily available but download wouldnt start but thats ok
Click to expand...
Click to collapse
1)That could be possible I didn't have time to experiment before I left. I will when I get back home in a week, on vacation right now.
2)I don't think xda 's torrent feature works I just use direct download it's only like 2 megabytes (1mb compressed)
Does the application at least work for you?
Sent from my HTC6435LVW using XDA Premium HD app
New Version Up
v1311
Major changes!
.torrented said:
New Version Up
v1311
Major changes!
Click to expand...
Click to collapse
I'd be interested to see the AndroidLib refactor
regaw_leinad said:
I'd be interested to see the AndroidLib refactor
Click to expand...
Click to collapse
Re-worded my changelog, sorry I wish I was better at optimizing code. (After all that is what I am going to school for is a CS/SE degree)
Did not see the option, has this been tested on Windows 8.0 ? I have Busybox on Rails v1.21.1 installed on my Moonshine S-Off DNA. Running Santod's KitKat sense 5.5 rom. TWRP 2.6 Beta. When trying to run program it just sticks at the Warming CPU screen. Note: Windows 8.0 has .Net 4.5 installed and I have turned on all options.
I'm getting this error message....
See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.
************** Exception Text **************
System.ArgumentNullException: Value cannot be null.
Parameter name: input
at System.IO.BinaryReader..ctor(Stream input, Encoding encoding, Boolean leaveOpen)
at RegawMOD.Extract.Resources(Object obj, String outDirectory, String internalFolderPath, String[] fullPathOfItems)
at AndroidFileUtils.MainForm.acLoadWorker_DoWork(Object sender, DoWorkEventArgs e)
at System.ComponentModel.BackgroundWorker.WorkerThreadStart(Object argument)
************** Loaded Assemblies **************
mscorlib
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.18051 built by: FX45RTMGDR
CodeBase: file:///C:/Windows/Microsoft.NET/Framework64/v4.0.30319/mscorlib.dll
----------------------------------------
AndroidFileUtils
Assembly Version: 1.3.1.1
Win32 Version: 1.3.1.1
CodeBase: file:///C:/android/AndroidFileUtils.exe
----------------------------------------
System
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.18045 built by: FX45RTMGDR
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Windows.Forms
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.18046 built by: FX45RTMGDR
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------