Skip to content
This repository has been archived by the owner on Dec 3, 2024. It is now read-only.

Commit

Permalink
Fixes and Registry feature added
Browse files Browse the repository at this point in the history
Fixes:
- Tried to improve detection on app load if device is plugged in already
- Fixed device info not being found for certain devices with Nokia branding
- Fixed issue where registry wouldn't mount due to some devices missing certain registry values by default
- Fixed issue with Updater telling user files need to be downloaded when the files are already downloaded

New feature:
- Added first test of a Registry tab allowing users to modify specific registry values. (This is WIP)
  • Loading branch information
Empyreal96 committed Jan 18, 2023
1 parent 76b7cf9 commit 69b8357
Show file tree
Hide file tree
Showing 7 changed files with 366 additions and 60 deletions.
41 changes: 1 addition & 40 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,40 +1 @@
# Windows 10 Mobile Toolbox

A desktop tool to help with various task and configurations with Windows Phones

<img src="1.png" width="400" height="225"> <img src="2.png" width="400" height="225">
<img src="3.png" width="400" height="225"> <img src="4.png" width="400" height="225">


### Updated:
Added:
- Backup your Phone's whole disk and/or MainOS,Data and EFIESP
- Convert WP8 FFU files to `.vhdx` (W10M FFUs not currently supported)

(NOTE: Disk reading is slow on my tests, I plan to look at improving this. Also there way be a few bugs, this is my first time using disk management.)


# What can it do?
### General:
- Manage booting into different states (Flash, Mass Storage and Normal)
- Push Updates to your device (10549 > 15254)

### Modify Device Settings:
- Windows Update
- Windows Firewall
- Page File
- Dev Mode
- Device Portal
- C:\ MTP Access
- Local Crash Dumps
- Flight Signing

More to be added

## Notes:

- Third party tools are used with this tool, all rights reserved to the owners.
- This tool includes "iutool" suite and "thor2.exe"
- WPInternals is required to automate various tasks, the latest will be downloaded through the app, and saved in the apps's data folder
- Uses DiscUtils nuget for vhd handling
- Uses WindowsAPICodePack for OpenFolder dialog
# Windows 10 Mobile ToolboxA desktop tool to help with various task and configurations with Windows Phones. Note this is currently *in development* software!<img src="1.png" width="400" height="225"> <img src="2.png" width="400" height="225"><img src="3.png" width="400" height="225"> <img src="4.png" width="400" height="225">### Updated:Fixes:- Tried to improve detection on app load if device is plugged in already.- Fixed device info not being found for certain devices with Nokia branding.- Fixed issue where registry wouldn't mount due to some devices missing certain registry values by default.- Fixed issue with Updater telling user files need to be downloaded when the files are already downloaded.New feature:- Added first test of a Registry tab allowing users to modify specific registry values. (This is WIP)(NOTE: Disk reading is slow on my tests, I plan to look at improving this. Also there way be a few bugs, this is my first time using disk management.)# What can it do?### General:- Manage booting into different states (Flash, Mass Storage and Normal)- Push Updates to your device (10549 > 15254)### Modify Device Settings: - Windows Update - Windows Firewall - Page File - Dev Mode - Device Portal - C:\ MTP Access - Local Crash Dumps - Flight Signing### Backup device- Seperate Partitions- Full EMMC backup### FFU Conversion- WP8.x FFU Conversion to VHD- W10M FFU Manifest/Viewable Info- W10M FFU Manifest/Viewable Info### Registry- Modify user selected values in HKLM\SYSTEM and HKLM\SOFTWAREMore to be added## Notes:- Third party tools are used with this tool, all rights reserved to the owners.- This tool includes "iutool" suite and "thor2.exe"- WPInternals is required to automate various tasks, the latest will be downloaded through the app, and saved in the apps's data folder- Uses DiscUtils nuget for vhd handling- Uses WindowsAPICodePack for OpenFolder dialog
Expand Down
4 changes: 4 additions & 0 deletions Windows 10 Mobile Toolbox/App.xaml.cs
Original file line number Diff line number Diff line change
Expand Up @@ -5,13 +5,17 @@
using System.Linq;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Threading;

namespace W10M_Toolbox
{
/// <summary>
/// Interaction logic for App.xaml
/// </summary>

public partial class App : Application
{

}

}
109 changes: 109 additions & 0 deletions Windows 10 Mobile Toolbox/MainWindow.xaml
Original file line number Diff line number Diff line change
Expand Up @@ -363,6 +363,115 @@
mah:ControlsHelper.FocusBorderBrush="#FF333337" Margin="10,160,676,173"/>
</Grid>
</TabItem>
<TabItem Header=" Registry " Name="RegistryTab"
Padding="5,5,5,5"
Background="#FF1E1E1E">
<Grid Background="#FF1E1E1E">
<mah:MetroHeader
x:Name="RegistryHeader"
Height="35"
Content=" Modify/Add Registry values on the device in Mass Storage Mode"
VerticalAlignment="Top" FontWeight="Normal" FontSize="20" Foreground="#FF4390DF" Margin="10,0,10,0"/>
<ComboBox x:Name="SelectHiveComboBox"
Height="46"
IsEnabled="False"
mah:TextBoxHelper.HasText="True"
mah:TextBoxHelper.ButtonContent="Select Hive"
SelectionChanged="SelectHiveComboBox_SelectionChanged"
VerticalAlignment="Top"
Margin="10,45,400,0"
Text="Select Hive"
Background="#FF333337"
BorderBrush="#FF686868"
Foreground="White"
FontFamily="Segoe UI"
FontSize="14" Tag="SelectHive" ToolTip="Select Hive" mah:TextBoxHelper.Watermark="Select Hive">
<ComboBoxItem x:Name="FirstCombo1" Content="HKLM\SOFTWARE"/>
<ComboBoxItem x:Name="SecondCombo1" Content="HKLM\SYSTEM"/>
<ComboBoxItem x:Name="ThirdCombo1" Content="Not Implimented Yet"/>

</ComboBox>
<Button x:Name="LoadSelectedHiveBtn"
Click="LoadSelectedHiveBtn_Click"
Content="Select Hive"
IsEnabled="False"
Background="#FF2D2D30"
BorderBrush="#FF333333"
Foreground="#FFFBFBFB"
mah:ControlsHelper.FocusBorderBrush="#FF333337" Margin="417,47,269,286"/>
<TextBox x:Name="RegistryPathTextBox" Background="#FF2D2D30"
BorderBrush="#FF686868" Margin="10,107,354,235" Visibility="Visible" IsEnabled="False" Foreground="#FFFBFBFB"
mah:TextBoxHelper.Watermark="Path i.e ControlSet001\Control\CrashControl" FontSize="14"/>
<TextBox x:Name="RegistryValueTextBox" Background="#FF2D2D30"
BorderBrush="#FF686868" Visibility="Visible" IsEnabled="False" Foreground="#FFFBFBFB"
mah:TextBoxHelper.Watermark="Value" FontSize="14" Margin="10,153,584,189"/>
<ComboBox x:Name="SelectHiveTypeComboBox"
Height="31"
mah:TextBoxHelper.HasText="True"
mah:TextBoxHelper.ButtonContent="Value Type"
SelectionChanged="SelectHiveTypeComboBox_SelectionChanged"
VerticalAlignment="Top"
Margin="228,153,444,0"
Text="Value Type"
Background="#FF333337"
BorderBrush="#FF686868"
Foreground="White"
FontFamily="Segoe UI"
Visibility="Visible" IsEnabled="False"
FontSize="14" Tag="ValueType" ToolTip="Value Type" mah:TextBoxHelper.Watermark="Value Type">
<ComboBoxItem x:Name="FirstCombo2" Content="DWORD"/>
<ComboBoxItem x:Name="SecondCombo2" Content="String"/>
<ComboBoxItem x:Name="ThirdCombo2" Content="Extended String"/>
<ComboBoxItem x:Name="FourthCombo2" Content="QWORD"/>
<ComboBoxItem x:Name="FifthCombo2" Content="Multi String"/>
<!--ComboBoxItem x:Name="SixthCombo2" Content="Binary"/-->

</ComboBox>
<Button x:Name="RegistryApplyNewValueBtn"
Click="RegistryApplyNewValueBtn_Click"
Content="Apply"
Visibility="Visible" IsEnabled="False"
Background="#FF2D2D30"
BorderBrush="#FF333333"
Foreground="#FFFBFBFB"
mah:ControlsHelper.FocusBorderBrush="#FF333337" Margin="343,225,343,107"/>


<Button x:Name="MountRegBtn1"
Click="MountRegBtn1_Click"
Content="Mount Registry"
Background="#FF2D2D30"
BorderBrush="#FF333333"
Foreground="#FFFBFBFB"
mah:ControlsHelper.FocusBorderBrush="#FF333337" Margin="667,47,19,286"/>

<Button x:Name="UnMountRegBtn1"
Click="UnMountRegBtn1_Click"
Content="Unload Registry"
Background="#FF2D2D30"
BorderBrush="#FF333333"
Foreground="#FFFBFBFB"
mah:ControlsHelper.FocusBorderBrush="#FF333337" IsEnabled="False" Visibility="Hidden" Margin="667,47,19,286"/>
<TextBox x:Name="RegistryKeyName" Background="#FF2D2D30"
BorderBrush="#FF686868" Visibility="Visible" IsEnabled="False" Foreground="#FFFBFBFB"
mah:TextBoxHelper.Watermark="Key Name i.e: CrashDumpEnabled" FontSize="14" Margin="461,107,19,235"/>
<Button x:Name="RegHelpBtn"
Click="RegHelpBtn_Click"
Content="Help"
Background="#FF2D2D30"
BorderBrush="#FF333333"
Foreground="#FFFBFBFB"

mah:ControlsHelper.FocusBorderBrush="#FF333337" Margin="735,2,10,337"/>

<TextBlock x:Name="RegPageDisclaimer"
Text="Make sure to use the correct spelling and value when modifying the registry, incorrect changes can result in serious issues occuring.&#x0a;This page is very WIP at the moment please procede with caution and report issues."
Foreground="#FFFBFBFB" Margin="10,297,10,2"
FontSize="16"
TextWrapping="Wrap"/>

</Grid>
</TabItem>
</mah:MetroTabControl>

</Grid>
Expand Down
Loading

0 comments on commit 69b8357

Please sign in to comment.