This is how pattern for GUID is listen in my xml schema file.
Code:
<xs:simpleType name="GUID">
<xs:restriction base="xs:string">
<xs:pattern value="([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})|(\{[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}\})"/>
</xs:restriction>
</xs:simpleType>
And this works if GUID is in the following format: D04992F8-1D4D-46E4-AB4A-B1A276473DA5
However, originally my GUID is in this format: D04992F8.1D4D.46E4.AB4A.B1A276473DA5
How can specify this pattern (dots instead of dashes) in my xml schema file instead? I tried to modify <xs: pattern value="................"/> but I never was able to get the result that I want.
I have tried to use this in my xs:attern
Code:
<xs:pattern value="([0-9a-fA-F]{8}\.[0-9a-fA-F]{4}\.[0-9a-fA-F]{4}\.[0-9a-fA-F]{4}\.[0-9a-fA-F]{12})|(\{[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}\})"/>
and
Code:
<xs:pattern value="([0-9a-fA-F]{8}\.[0-9a-fA-F]{4}\.[0-9a-fA-F]{4}\.[0-9a-fA-F]{4}\.[0-9a-fA-F]{12})|(\{[0-9a-fA-F]{8}\.[0-9a-fA-F]{4}\.[0-9a-fA-F]{4}\.[0-9a-fA-F]{4}\.[0-9a-fA-F]{12}\})"/>
But none worked. I did try to search using this regular expression in a text file and it works, but Windows Mobile doesn't picks it up as GUID.
Related
Auto Installer V1.0
Synopsis:
I've written a small utility with a whole mix of features, primarily designed to enable easy setup of your favourite cabs, shortcuts, icons etc...
It's written in Mortscript, but you don't need to worry about that... everything is installed from a plain text INI file:
Features:
-Specify which cab files to install automatically (silently, or with user interaction)
-Specify which registry entries to create / modify
-Specify Hi-Res custom icons for your applications and tools (WM6.5 Only)
-Specify which shortcuts to create in the Start/Program Files menu
-Specify the Start/Program Files menu structure (groups/folders etc)
-Specify TF3D shortcuts for Manila 2 and 2.5
-Specify TF3D weather locations for Manila 2 and 2.5
-Specify HTC Task Manager 'x' button options
-Specify Windows Screen Font Size
-Choose to execute every item in your setup config, or just execute specific sections.
Coming Soon Features:
-Specify files you'd like to back up
-Specify tasks to kill before install
-Specify tasks to start after install
Installation Instructions:
-Download zip file here: AutoInstaller V1.0
-Extract the zip file to a folder of your choice on your device (preferably on the SD Card so that it's not lost after a hard reset!
-Read the usage guidelines
-That's it
Usage Guidelines
Usage Guidelines:
The application contains 3 files:
1) AutoInstaller.exe (this is the main executable file)
2) AutoInstaller.mscr (this is the source code for the script. Do not modify this file unless you're a script programmer)
3) AutoInstaller.ini (this the file that you edit to configure)
All three files MUST reside together in the same folder (any folder)
AutoInstaller.ini and how to:
Cab File Installation
You can install multiple cab files using the [Cab Install] section of the ini file.
The format of each entry in the section must be as follows:
<Unique Friendly Name>=<Cab filename>,<Silent install>
<Unique Friendly Name> MUST be unique, but is just any friendly string identifying the cab to be installed.
<Cab filename> is the full path to the cab file to install
<Silent install> determines if the installation should be silent (TRUE) or interactive (FALSE). Note: Most cab files will install silently, but some will still force user interaction. This is not a problem, but be aware that some files do this.
Also be aware, that if a cab file forces a reboot of the device without asking, then this cab is not suitable for installation via this script, since a reboot will terminate the script.
Example:
[Cab Install]
Facebook =\Storage Card\Setup\Install Cabs\Facebook\Facebook_v1.0.0.7p.cab,TRUE
Google Maps=\Storage Card\Setup\Install Cabs\Google Maps\GoogleMaps.cab,TRUE
My Mail Settings=\Storage Card\Setup\Install Cabs\My Mail Settings\MyMailSettings.cab,TRUE
SPB Wireless Monitor=\Storage Card\Setup\Install Cabs\SPB Wireless Monitor\SpbWirelessMonitor3.arm.cab,TRUE
Total Commander=\Storage Card\Setup\Install Cabs\Total Commander\tcmdpocketarm.cab,TRUE
WunderRadio=\Storage Card\Setup\Install Cabs\WunderRadio\wunderradio_ppc.cab,TRUE
Panoramic Calc Pro=\Storage Card\Setup\Install Cabs\Panoramic Calc Pro\PanoramicCalcPro.cab,TRUE
Neos Driver Pack=\Storage Card\NeoS2007_Driverpack_3.cab,TRUE
Registry Writes
Registry entries to be created/written can be specified in the [Registry_Writes] section of the ini file.
The format for each entry in the section must be as follows:
<RegistryKey>=<>,<Value>
<RegistryKey> is the full path of the key to be written
<Type> is the type of value to be written to the registry, it may be STRING, DWORD or BINARY
<value> is the actual value to be written
Example:
[Registry_Writes]
HKCR\CLSID\{DD9B73F6-9EED-4ED0-84CF-422AF83512DB}\fileext=STRING,6a5KkkrKKwKK
HKLM\Software\jeyo\WunderRadio\regcode=STRING,12345678931B
HKLM\Software\jeyo\WunderRadio\regver=STRING,151W14
Usage Guide
Create Shortcuts
Shortcuts to be created can be specified in the [Create Shortuts] section of the ini file.
The format for each entry in the section must be as follows:
<shortcut file to create>=<file to link to>
<shortcut file to create> is the full path of the shortcut file to be created
<file to link to> is the full path of the target file being linked to
Example:
[Create Shortcuts]
\Windows\Start Menu\Programs\iGO8.lnk=\Storage Card\igo8\iGO8.exe
\Windows\Start Menu\Programs\Reboot.lnk=\Storage Card\Scripts\reboot.mscr
Move Files
Files to be moved may be specified in the [Move Files] section of the ini file.
The format for each entry in the section must be as follows:
<Source File>=<Destination File>
<Source File> is the full path of the file you wish to move
<Destination File> is the full path of the file you wish to move it to
Example:
[Move File]
\Windows\Start Menu\Programs\iGO8.lnk=\Windows\Start Menu\Programs\Navigation\iGO8.lnk
\Windows\Start Menu\Programs\reboot.lnk=\Windows\Start Menu\Programs\Utils\iGO8.lnk
Create Custom Icons (WM6.5 Only)
Custom Hi Res Icons in PNG (with transparency) may be specified in the [Custom Icons] section of the ini file.
The format for each entry in the section must be as follows:
<Start menu link file>=<png file>
<Start menu link file> is the path of the lnk file RELATIVE to the \Windows\Start Menu\Programs folder
<png file> is the full path of the desired png file to use for the custom icon. NOTE: the png file MUST be exactly 90x90 pixels.
Example:
[Custom Icons]
iGO8.lnk=\Storage Card\Custom Icons\iGO8.png
Google Maps.lnk=\Storage Card\Custom Icons\Google Maps.png
TF3D Shortcuts
TF3D V2 or V2.5 shortcuts can be specified using the [TF3DV2 Shortcuts] or [TF3DV2.5 Shortcuts] section of the ini file.
The format of each entry in the section must be as follows:
<shortcut index>=<friendly name>,<shortcut target>
<shortcut index> is the position / index of the shortcut entry (0 to 17 for TF3D V2) or (0 to 8 for TF3D V2.5)
<friendly name> is the friendly name of the shortcut that will be displayed on the TF3D screen
<shortcut target> is the full path of the target file
Example:
[TF3DV2 Shortcuts]
0=Igo8,\Storage Card\igo8\iGO8.exe
[TF3DV2.5 Shortcuts]
0=Igo8,\Storage Card\igo8\iGO8.exe
3=Google Maps,\Google\Google Maps.exe
TF3D Weather Locations
TF3D (V2 or V2.5) weather locations can be specified in the [TF3D Weather Locations] section of the ini file.
The format of each entry in the section must be as follows:
<weather index>=<weather location>
<weather index> is a value from 0 to n representing the order/index of the weather locations
<weather location> is a specially formatted location string identifying the location (more in this later, there's a utility to 'grab' them included in the installer!
Example:
[TF3D Weather Locations]
0=EUR|UK|UK001|ABERDEEN
1=EUR|UK|UK001|LONDON
2=EUR|UK|UK001|BRISTOL
3=EUR|UK|UK001|LIVERPOOL
Screen Options
Screen option can be specified using the [Screen Options] section of the ini file.
The format of each entry in the section must be as follows:
<option name>=<value>
<option name> is either TextSize or TrueType
<value> depends on the <option name> for TextSize it can be Tiny, Small, Medium, Large or ExtraLarge. For TrueType it's either True or False.
Example:
[Screen Options]
TextSize=Tiny
TrueType=True
Reserved 3
Reserved for even more instructions
I'll give it a bash next time I flash a rom but it sounds a lot like Sashimi
crankshaft said:
I'll give it a bash next time I flash a rom but it sounds a lot like Sashimi
Click to expand...
Click to collapse
I strongly suspect it is... although I'm guessing a lot smaller and simpler...
I wasn't aware of Sashimi until you mentioned it, and I'm checking it out, although it looks pretty comprehensive, it also looks quite daunting.... meaning you may as well have written the installation in Mortscript in the first place by the time it's all configured!
However, I suspect there's a couple of nice little things in my script (like the custom icons, and TF3D weather etc that folks might find useful... I wrote it for myself, but thought I'd share!
have a little problem
when i run the AutoInstall.exe this error comes
There is no application associated with "AutoInstaller". Run the application first, then open this file from within the application
abzza,
You need MortScript installed.
I did tried. For some of my application which required manual interaction,
runwait doesn't do the proper thing as it continue on next cab installtion when some
manual dialog popped up.
Purpose:
This purpose of this VBScript is to process and organize data in RGU/REG files to remove duplicates, identify faulty entries, and move entries to ascending alphabetical order (the same way it is displayed in a registry editor).
Requirements:
Windows Scripting Host (included in most versions of windows)
rgucomp.exe and cereg400.dll located somewhere in your path (same folder as the script probably won't work if the script is run from another folder)
.reg and .rgu files are expected to be UTF-16LE with BOM
Usage:
Drag a .rgu, .reg, or .hv onto RGUber.vbs OR run "wscript.exe RGUber.vbs example.rgu"
Details:
When an rgu|reg file is specified, RGUber will:
1) create backup of input file
2) rename input file to boot.rgu
3) use rgucomp to convert it to *.hv
4) use rgucomp to convert new .hv to original rgu path\name
5) Reorder all keys in ascending alphabetical order and all values for each key in ascending alphabetical order with default value first
When an hv file is specified, RGUber will:
1) use rgucomp to convert it to *.rgu
2) Reorder all keys in ascending alphabetical order and all values for each key in ascending alphabetical order with default value first
Options
Open RGUber.vbs in your favorite text editor. All options are set at the beginning with (hopefully) meaningful descriptions.
Code:
'//Path to rgucomp (leave this as default if rgucomp.exe is located in your system path)
Const RGUCOMP = "rgucomp.exe"
'//Path to notepad, only needed if %OPENAFTER% is true
Const NOTEPAD = "notepad.exe"
'//The following options can be set to True/False or 0/1
'//Organize registry entries in ascending alphabetical order
Const REORDER = True
'//Open in %NOTEPAD% after conversion is done
Const OPENAFTER = False
'//Save any errors from rgu -> hv conversion
Const LOGERRORS = True
'//Save a backup copy of %INPUTRGU% as "%INPUTRGU%_Backup.rgu"
Const BACKUPRGU = True
Other info
If target file already exists, RGUber will ask if you want to overwrite.
Text files (the MS way) typically contain CRLF for next line. Output from rgucomp.exe contains many CRCRLF. RGUber removes the extra CR.
I have very few comments in the code. If requested, I will upload another copy with as many detailed comments as I can manage.
I tried to code this as efficiently as VBScript can possibly be. I kept getting errors when trying to run 'rgucomp.exe -b -nologo' so instead of running it directly, RGUber creates a bat file, executes it, then deletes it.
On my AMD Phenom 9600 with Vista64 and 3 SATA in Raid5, RGUber completes rgu->hv->rgu of 2084 lines in <3s
RGUber always saves output from rgu->hv conversion but deletes the file if there were no errors.
RGUber crashes on files with no reg entries (e.g. empty app.reg in an EXT package that does not add any registry entries)
Changelog:
v1.21a
Values are now sorted in alphabetical order for each key
v1.2
Replaced Organize function with one from RGUOrder
Lost ability to reorder values for each key (To be readded in next version)
v1.1
Fixed a bug with removing hashdata from output (RGUber would mix data from two keys under one)
Changed sorting algorith with a much faster one
v1.02
Added option to remove RegistryUpdate key from rgucomp output
Fixed a typo where RGUber was not removing the system attribute from input rgu files
v1.01
Fixed typo where RGUber was waiting for backup file instead of log file
Change 'Done' msgbox to one that shows beginning time and ending time
v1.0
Initial Release
RGUOrder v1.4
This script will only reorder the contents of an rgu without processing with RGUComp, thereby keeping comments and delete key entries. RGUComp/cereg400.dll are not needed to use this app.
Changelog:
v1.4
Fixed a bug where if the original rgu did not end with a new line then the last entry after being sorted would be lost.
Fixed two bugs where only the first 25 tabs and first 25 spaces would be removed before sorting (This did not affect data integrity or performance, but the checksum would be different each time you run the output back through RGUOrder until all the original tabs/spaces were removed)
Added code to prevent multiple entries of the same key from being reordered
Fixed other miscellaneous bugs/oddities introduced with v1.3
v1.3
Added code to add a delete key for each subkey of a deleted key so that when reordered, the key deletion isn't broken
v1.2
Fixed a bug where the last key processed was being concatenated to another with no CRLF producing an invalid rgu file
I'm not sure if this relates to your app but I have a small question:
If a dumped a rom (raw, not kitchen type) and removed several apps/programs but did not clean the registry (very tedious), will this help me clean it up (remove dead paths, etc)?
And if so, how will it know just by dragging the .hv file? I mean how will your app know if a registry entry does not have the app/program included in the rom anymore?
Please forgive me if my question does not relate to your app
There is no way for my app to know, it isnt that smart
It would take an extensive app/database to know which keys are related to which apps.
Thanks for this post
updated to v1.1
v1.02 had a bug in the code which removed hash data from output which made it mix data from the key before it with the key after it
If I ever get around to updating again, I will use hvedit instead of rgucomp
I get an error.
Script: D:\RGUber.vbs
Line: 136
Char: 2
Error: File not found
Code: 800A0035
Source: Microsoft VBScript runtime error
Any reason why?
I attach the file i want to sort alphabetically.
I have no idea
It worked for me with no problem (file attached)
Please tell me the location of RGUber.vbs and of 51329f91-0017-4364-bcff-e032c5d45b01.rgu
Great application bro!!
Only limitation is that I have to put reg400.dll and rgucomp in C:\windows
c_shekhar said:
Great application bro!!
Only limitation is that I have to put reg400.dll and rgucomp in C:\windows
Click to expand...
Click to collapse
yeah, I tried to get around that but I didn't find anything feasible with vbscript :-/
Actually, they don't have to go in C:\windows
I reinstall windows regularly so I keep as many apps portable as I can. I have a bin folder on another partition that I add to the system path variable after a new install for stuff like this.
selyb said:
yeah, I tried to get around that but I didn't find anything feasible with vbscript :-/
Actually, they don't have to go in C:\windows
I reinstall windows regularly so I keep as many apps portable as I can. I have a bin folder on another partition that I add to the system path variable after a new install for stuff like this.
Click to expand...
Click to collapse
can you elaborate this a bit more. Because I too would like a similar arranfements...
My C:\ partition has Vista64
My F:\ partition has all my documents, downloads, music, movies, etc and a folder F:\bin\
F:\bin contains >100 downloaded command line programs and vbs scripts that I have written including
RGUber.vbs
lame.exe
rgucomp.exe
cereg400.dll
FixVTS.exe
faad.exe
nuerecmod.exe
Tag.exe
find Advanced System Properties (I can't remember how, it's different for XP/Vista/7) go to the Advanced tab and hit the Environment Variables button
Under system variables, scroll down to 'Path', double click it. This defines your 'system path'. It contains a list of folders separated by semicolon ";". At the end, add a semicolon and the path to the folder you want to add (e.g. ;F:\bin) after that, hit ok. XP may need to reboot to reflect the change but I'm not sure. Vista and 7 are affected immediately.
With this setup, you can open a command prompt in any folder on your computer and type "RGUber.vbs xyz.rgu" and it would work as if all the files are in that folder.
Thanks a lot bro!!!
I am grateful...
I'd really like to use this, but unfortunately I get this error regardless of the app.reg I drag onto the script:
Script: C:\RGUber\RGUber.vbs
Line: 232
Char: 3
Error: The system cannot find the path specified.
Code: 80070003
Source: (null)
Thanks if you can advise.
Quetzecotyl said:
I'd really like to use this, but unfortunately I get this error regardless of the app.reg I drag onto the script:
Script: C:\RGUber\RGUber.vbs
Line: 232
Char: 3
Error: The system cannot find the path specified.
Code: 80070003
Source: (null)
Thanks if you can advise.
Click to expand...
Click to collapse
Hmmm... this line asks the system for what is in the %temp% variable and attempts to change the working directory to the result.
Open RGUber.vbs in notepad and go to line 232
Modify
Code:
WSH.CurrentDirectory = WSH.Environment("SYSTEM")("temp")
to
Code:
WSH.CurrentDirectory = "C:\RGUber\"
then try again
Works great after your fix, selyb. Thank you for this useful app and your many helpful contributions to the Kaiser forums.
Quetzecotyl said:
Works great after your fix, selyb. Thank you for this useful app and your many helpful contributions to the Kaiser forums.
Click to expand...
Click to collapse
Yeah, I may relocate from Kaiser forums to Rhodium. I have an AT&T Tilt 2 in the mail to me ATM
Grats on getting a Rhodium. Found a question after using it for a while. This is just one example of such behavior, but why does:
Code:
[HKEY_CURRENT_USER\Software\HTC\TaskManager\ExclusiveList\System]
"CMBandSwitching.exe"=dword:0
get turned into:
Code:
"CMBandSwitching.exe"=dword:0
How do I make it regard CURRENT_USER keys?
Quetzecotyl said:
Grats on getting a Rhodium. Found a question after using it for a while. This is just one example of such behavior, but why does:
Code:
[HKEY_CURRENT_USER\Software\HTC\TaskManager\ExclusiveList\System]
"CMBandSwitching.exe"=dword:0
get turned into:
Code:
"CMBandSwitching.exe"=dword:0
How do I make it regard CURRENT_USER keys?
Click to expand...
Click to collapse
I had this problem with an earlier version. If you are using v1.1 then please attach the original rgu/reg. I have tried and I can't seem to reproduce it since I fixed it already.
Please, replace rgucomp with hvedit . I really need your help because rgucomp doesn't work for me . Thanks in advance .
tomcug said:
Please, replace rgucomp with hvedit . I really need your help because rgucomp doesn't work for me . Thanks in advance .
Click to expand...
Click to collapse
why doesn't rgucomp work? I would be surprised to learn that hvedit will work when rgucomp won't.
Hi. How would you go about to change the source of an image from the .cs file? I've tried this:
xaml.cs:
Code:
BitmapImage yesImage = new BitmapImage(new Uri("/Test;component/Images/yes.png"));
img.Source = yesImage;
The xaml file has a control <image Name="img" /> residing in it.
Would binding in some kind of way solve this?
Sorry for the basic question, but I've searched and wasn't able to find anything that covers this.
Hi,
You're doing it in the right way. I assume you know you're using a URI referencing an image in an external assembly (i.e. a referenced dll separate from the project your .cs file is in)? (in your case called 'Test').
Is the image definitely in an external assembly?
Is that assembly definitely called 'Test'?
Is the image you are trying to load marked as Build Action 'Content' in Visual Studio?
Here's some code that loads an image from an external DLL called Shared:
MyImage.Source = new BitmapImage(new Uri("/Shared;component/Icons/Tick.png", UriKind.Relative));
Here's some similar code that loads it from the same assembly as the .cs file:
MyImage.Source = new BitmapImage(new Uri("/Icons/Tick.png", UriKind.Relative));
Hope that helps,
Ian
That worked! I changed the images (that are local to the project) "Build Action" to "content" and added the UriKind.Relative to the URI and also removed the /Test;component/ from the address.
What i find odd though is that the images (that I added to a folder called Images in the project) had the Build Action set to Resource as default and when i added the source via the property box of Visual Studio to the image control in the XAML it inserted the "/Test;component/Images/yes.png" for me and the images were visible. When changing the Build Action to Content they were gone again.
Anyway, it works now. Thanks
Glad it helped
I'm trying to edit the positions of the graphics on this screen, but I can't find the specific strings in the code. I looked after the name of the different images and found them in the drawable-hdpi folder, but a string containing the filename does not exist!
I searched in framework-res.apk & SemcPhone.apk. I can change the graphics if I move them into the .apk's, but I want to change the location of the slider background for example. Can someone help me? Where do I have to start?
decompile "SemcPhone.apk",
Use:
$ astro grep
$ beyond compare
You can edit images via gimp, and move values via dimens.xml...
Howdy, on a desktop W10 there's a registry key for customizing User Agent string within the Microsoft Edge:
Code:
HKEY_CURRENT_USER\Software\Classes\Local Settings\Software\Microsoft\Windows\CurrentVersion\AppContainer\Storage\microsoft.microsoftedge_8wekyb3d8bbwe\MicrosoftEdge\LowRegistry\CustomUserAgent
If one adds 2 values within:
Code:
CustomUA (String) - Full User Agent String
CustomUAActive (DWORD) - 1
Edge will use this one User Agent string inside its request header instead of the built-in one.
Is there any way to do the same with Windows 10 Mobile device without custom ROM? It seems like the content of this particular key is completely hidden - there's no way to access it and its children:
Code:
HKEY_CURRENT_USER\Software\Classes\Local Settings\Software\Microsoft\Windows\CurrentVersion\AppContainer\Storage\
Maybe there's someone who knows how to achieve it.
Make reg file and aplly using interoptool?
augustinionut said:
Make reg file and aplly using interoptool?
Click to expand...
Click to collapse
Haven't tried with an interop unlock, only restoring NDKTSvc - it doesn't work. I'll definitely check your idea out and let you know whether it works on a interop-unlocked device. Thanks for a suggestion.
Just make that file.
Import does work, unfortunately the UA doesn't. Edge still uses one of either mobile or desktop User Agents. It seems like it's hardcoded inside a DLL with only a bunch of UA tokens from registry. However there might be a custom header registry key somewhere, maybe this way it can be achieved.
Please post that file.
augustinionut said:
Please post that file.
Click to expand...
Click to collapse
It won't change anything, for it doesn't work with ARM version of Microsoft Edge - got a response from Technet.
What does work:
Global override
Edge override
Partial override
AD 1.
This method changes whole UA string for every single HTTP/HTTPS request and breaks some stuff like downloading apps from Store (requires multiple retries) etc. One has to override USER-AGENT header (but it's strongly not recommended) by creating a key:
Code:
HKEY_LOCAL_MACHINE\Security\Internet Explorer\Custom Headers\HTTP\USER-AGENT
And setting its default value to your custom UA string (reboot required), e.g.
Code:
Mozilla/5.0 (Linux; Android 6.0.1; SM-G920V Build/MMB29K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.98 Mobile Safari/537.36
AD 2.
As I thought, 2 of predefined user agent strings reside within DLLs of Microsoft Edge. Changing them was a headache, because of obfuscation of the code. I'm not going to describe on how to do this, because it involves something more than just changing some values in order to make it work. The basic thing is that the strings pattern looks like this:
Code:
Mozilla/5.0 (Windows Phone 10.0; Android 6.0.1; <ManufacturerDisplayName>; <Device>) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/<ParserVer> Mobile Safari/537.36 Edge/<EdgeVersionShort>
By changing these values to a hardcoded one without tokens you'll make your custom UA work.
AD 3.
Using previous knowledge of used tokens we can see that some of them may be taken directly from the registry (also looking at imported DLLs). Unfortunately, version tokens are based directly on the version of Edge's CP exe. What can be changed though is the ManufacturerDisplayName token and the Device token:
Code:
[HKEY_LOCAL_MACHINE\System\Platform\DeviceTargetingInfo]
PhoneManufacturerDisplayName = "Your desired name, e.g. Xiaomi"
PhoneModelName = "Your desired name, e.g. Redmi Note 8"
After rebooting and checking your user agent using Edge you'll see it's changed to:
Code:
Mozilla/5.0 (Windows Phone 10.0; Android 4.2.1; Xiaomi; Redmi Note 8) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.1.2311.135 Mobile Safari/537.36 Edge/14.10106
So, still no file?