Windows10 issue with MSIX packages having cache UserClasses.dat and User.dat in Virtual Registry

Copper Contributor


I'm using some common files between MSIX packages. When I install them, the OS attaches permissions from separate MSIX packages in both packages.

All of the package files, after install, the file security properties show in |Condition| column: (WIN://SYSAPPID Contains "package name) for both packages that share some of the same files.

It has been difficult to see where the problem affects the applications but each runs a jvm client and server that is part of each package. The common error is "JAVA SocketException" - the client connects ok but the server does not. The COM seems to be ok but still checking.

I found strange listings in Registry Editor HKLM\SYSTEM\CurrentControlSet\Control\hivelist. They are in the \REGISTRY\WC\Silo*** registries that I believe are the virtual registries for the MSIX package. A well functioning application will only have one registry *.dat entry for:

\Device\HarddiskVolume*\users\<username>\AppData\Local\Packages\<packagename>\SystemAppData\Helium\UserClasses.dat and ...\User.dat

I get the JAVA SocketException error when the virtual registry also includes:

\Device\HarddiskVolume*\users\<username>\AppData\Local\Packages\<packagename>\<CLSID?>SystemAppData\Helium\Cache\<cacheID>UserClasses.dat and ...\User.dat

Not sure why it is pulling the userclasses.dat and user.dat from a Cache? The caches are different for each package but seems to be causing the SocketException problems. The cache UserClass.dat and User.dat are in addition to the non-cache .dat files.

Any help would be appreciated.


0 Replies