MSIX : problem reading register key in HKCU

%3CLINGO-SUB%20id%3D%22lingo-sub-1316065%22%20slang%3D%22en-US%22%3EMSIX%20%3A%20problem%20reading%20register%20key%20in%20HKCU%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-1316065%22%20slang%3D%22en-US%22%3E%3CP%3E%3CSPAN%3EHello%2C%3C%2FSPAN%3E%3C%2FP%3E%3CP%3E%3CSPAN%3E%3CBR%20%2F%3EI%20am%20currently%20testing%20the%20deployment%20of%20an%20executable%20from%20a%20MSIX%2C%20but%20I'm%20having%20a%20problem%20reading%20a%20key%20added%20to%20HKCU%5CSoftware%5C%20from%20an%20executable%20located%20in%20my%20MSIX.%3C%2FSPAN%3E%3CBR%20%2F%3E%26nbsp%3B%3C%2FP%3E%3CP%3E%3CSPAN%3ETo%20read%20the%20key%2C%20I%20must%20go%20to%20HKCU%5CWow6432Node%5CSoftware%5C.%20%3C%2FSPAN%3E%3C%2FP%3E%3CP%3E%3CSPAN%3EI%20did%20the%20same%20thing%20in%20HKLM%5CSoftware%5C%2C%20and%20there%20I%20do%20not%20need%20to%20access%20to%20Wow6432Node%20because%20it%20is%20correctly%20placed%20in%20HKLM%5CSoftware%5C.%3C%2FSPAN%3E%3CBR%20%2F%3E%26nbsp%3B%3C%2FP%3E%3CP%3E%3CSPAN%3EWhat%20could%20possibly%20cause%20this%20%3F%3C%2FSPAN%3E%3CBR%20%2F%3E%3CBR%20%2F%3E%3C%2FP%3E%3CP%3E%3CSPAN%3EBoth%20the%20executable%20and%20the%20MSIX%20package%20are%2032%20bits.%3C%2FSPAN%3E%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3E%3CSPAN%3EThanks.%3C%2FSPAN%3E%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-1328438%22%20slang%3D%22en-US%22%3ERe%3A%20MSIX%20%3A%20problem%20reading%20register%20key%20in%20HKCU%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-1328438%22%20slang%3D%22en-US%22%3E%3CP%3EHi%26nbsp%3B%3CA%20href%3D%22https%3A%2F%2Ftechcommunity.microsoft.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F626315%22%20target%3D%22_blank%22%3E%40aMesquita_%3C%2FA%3E%26nbsp%3B%3CBR%20%2F%3E%3CBR%20%2F%3E%3C%2FP%3E%3CP%3ETheoretically%2C%20all%2032%20bit%20apps%20should%20be%20redirected%20to%20Wow5432Node.%20Why%20this%20does%20not%20happen%20for%20HKLM%20I%20don't%20know.%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3EIf%20I%20remember%20correctly%20I%20think%20I%20hit%20a%20similar%20situation%20and%20the%20only%20way%20for%20me%20was%20to%20mark%20the%20MSIX%20package%20as%20a%2064%20bit%20one%2C%20even%20if%20my%20app%20was%20a%2032%20bit%20and%20that%20solved%20the%20problem.%26nbsp%3B%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-1344552%22%20slang%3D%22en-US%22%3ERe%3A%20MSIX%20%3A%20problem%20reading%20register%20key%20in%20HKCU%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-1344552%22%20slang%3D%22en-US%22%3E%3CP%3E%3CA%20href%3D%22https%3A%2F%2Ftechcommunity.microsoft.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F626315%22%20target%3D%22_blank%22%3E%40aMesquita_%3C%2FA%3E%20One%20possibility%20(assuming%20the%20key%20was%20placed%20correctly%20into%20the%20package)%3A%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3ESometimes%20older%20apps%2C%20especially%20with%20HKCU%20keys%2C%20open%20the%20key%20asking%20for%20%22Full%20Permissions%22%2C%20rather%20than%20for%20Read%2FWrite.%26nbsp%3B%20This%20stems%20from%20some%20old%20sample%20code%20Microsoft%20issued%20many%20years%20ago.%20The%20difference%20in%20such%20a%20request%20is%20that%20permission%20is%20granted%20to%20delete%20the%20key%20with%20full%20permissions.%26nbsp%3B%20Chances%20are%20the%20app%20doesn't%20intend%20to%20delete%20the%20key%2C%20but%20that%20asked%20for%20everything.%20The%20MSIX%20runtime%20blocks%20such%20requests.%26nbsp%3B%20You%20can%20determine%20if%20your%20app%20is%20doing%20with%20a%20trace.%20%26nbsp%3B%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3EMSIX%20has%20no%20deletion%20marker%20capability%20such%20as%20App-V%20had.%20I%20have%20previously%20requested%20that%20Microsoft%20consider%20building%20a%20RegistryFixup%20for%20the%20Psf%20that%20would%20allow%20you%20to%20re-mark%20that%20request%20as%20Read%2FWrite%2C%20however%20there%20has%20been%20no%20response%20to%20that%20request.%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-1438169%22%20slang%3D%22en-US%22%3ERe%3A%20MSIX%20%3A%20problem%20reading%20register%20key%20in%20HKCU%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-1438169%22%20slang%3D%22en-US%22%3E%3CP%3EHi%26nbsp%3B%3CA%20href%3D%22https%3A%2F%2Ftechcommunity.microsoft.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F626315%22%20target%3D%22_blank%22%3E%40aMesquita_%3C%2FA%3E%2C%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3EFor%20additional%20information%20on%20how%20the%20registry%20works%20with%20MSIX%2C%20you%20can%20check%20out%20%3CA%20href%3D%22https%3A%2F%2Fdocs.microsoft.com%2Fen-us%2Fwindows%2Fmsix%2Fdesktop%2Fdesktop-to-uwp-behind-the-scenes%23registry%22%20target%3D%22_blank%22%20rel%3D%22noopener%20noreferrer%22%3Ethis%20article%3C%2FA%3E%20in%20our%20documentation.%26nbsp%3B%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3EBest%2C%3C%2FP%3E%0A%3CP%3ESharla%26nbsp%3B%3C%2FP%3E%3C%2FLINGO-BODY%3E
New Contributor

Hello,


I am currently testing the deployment of an executable from a MSIX, but I'm having a problem reading a key added to HKCU\Software\ from an executable located in my MSIX.

 

To read the key, I must go to HKCU\Wow6432Node\Software\.

I did the same thing in HKLM\Software\, and there I do not need to access to Wow6432Node because it is correctly placed in HKLM\Software\.
 

What could possibly cause this ?

Both the executable and the MSIX package are 32 bits.

 

Thanks.

3 Replies

Hi @aMesquita_ 

Theoretically, all 32 bit apps should be redirected to Wow5432Node. Why this does not happen for HKLM I don't know.

 

If I remember correctly I think I hit a similar situation and the only way for me was to mark the MSIX package as a 64 bit one, even if my app was a 32 bit and that solved the problem. 

 

 

@aMesquita_ One possibility (assuming the key was placed correctly into the package):

 

Sometimes older apps, especially with HKCU keys, open the key asking for "Full Permissions", rather than for Read/Write.  This stems from some old sample code Microsoft issued many years ago. The difference in such a request is that permission is granted to delete the key with full permissions.  Chances are the app doesn't intend to delete the key, but that asked for everything. The MSIX runtime blocks such requests.  You can determine if your app is doing with a trace.  

 

MSIX has no deletion marker capability such as App-V had. I have previously requested that Microsoft consider building a RegistryFixup for the Psf that would allow you to re-mark that request as Read/Write, however there has been no response to that request.

 

 

 

Hi @aMesquita_,

 

For additional information on how the registry works with MSIX, you can check out this article in our documentation. 

 

Best,

Sharla