Reputation: 572
Is it possible to see the Virtual Registry of my Win32 UWP app (desktop-bridge converted)? I know that all programmatic access goes to the virtual registry and that works. But I want to view it with RegEdit. Any solutions?
I remember viewing it about a year back but don't remember the details.
Upvotes: 4
Views: 651
Reputation: 3797
You can open regedit.exe
in the context of a UWP app. The regedit.exe spawned this was will show you the same registry view as visible to the app.
Step 1: Get App ID, and Family name of the package
PS > $pkg=Get-AppxPackage -Name "*package_name*"
PS > $familyName=$pkg.PackageFamilyName
PS > $id=(Get-AppxPackageManifest $pkg).package.applications.application.id
PS > $params = @{
AppId = "$($id)"
PackageFamilyName = "$($familyName)"
Command = 'regedit.exe'
}
Step 2: Wrap these params into a hashmap and pass it to Invoke-CommandInDesktopPackage
. This command should be run in an elevated powershell prompt.
PS > $params = @{
AppId = "$($id)"
PackageFamilyName = "$($familyName)"
Command = 'regedit.exe'
}
PS > Invoke-CommandInDesktopPackage @params
The regedit.exe window which now opens will have registry keys from the UWP app's context.
Upvotes: 0
Reputation: 11023
Yes, you can. We built a free tool called Hover that allows you to launch an external process in the context of your MSIX/APPX container. Using this tool you can launch Regedit, cmd.exe, PowerShell, or other processes inside your container, and thus have access to the same resources your app does.
Upvotes: 4
Reputation: 8681
Based on the document, App packages contain a registry.dat file
, which serves as the logical equivalent of HKLM\Software in the real registry. But there is no clear explanation about where it is stored. And all writes under HKCU are copy-on-written to a private per-user, per-app location. For more information here: Registry
So currently, there is no good way to check that.
Upvotes: -1