Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
…pportFramework into develop
  • Loading branch information
TimMangan committed Jan 2, 2025
2 parents 43c5dcd + 11568ca commit b7c883b
Show file tree
Hide file tree
Showing 5 changed files with 49 additions and 8 deletions.
2 changes: 2 additions & 0 deletions fixups/DynamicLibraryFixup/readme.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,8 @@ It can also happen due to a change in Working Directory.

At runtime within the container, the symptom showing the need will be a dll not found issue for a dll that is in the package.

### Dependencies for DynamicLibraryFixup
This fixup does not require any VCRuntime components.

## About Debugging this fixup
The Release build of this fixup produces no output to the debug console port for performance reasons.
Expand Down
2 changes: 2 additions & 0 deletions fixups/EnvVarFixup/readme.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,8 @@ In essence, this fixup allows you to specify what would natively be a system or
### Detecting the need for this fixup
A static detection is possible by installing the native product and looking for new/updated environment variables.

### Dependencies for EnvVarFixup
This fixup does not require any VCRuntime components.

## About Debugging this fixup
The Release build of this fixup produces no output to the debug console port for performance reasons.
Expand Down
19 changes: 18 additions & 1 deletion fixups/FileRedirectionFixup/readme.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,23 @@ A static analysis of the files in the package is often all that is needed:
At runtime this can sometimes be detected as ACCESS_DENIED results to file operations, however File and Path not found may also indicate the need.


### Dependencies for FileRedirectionFixup
When using this fixup, you must also supply the following dependencies. The fixup uses version 14032 of the runtimes.

It is recommended that these be placed in the VFS\SystemX64 and VFS\SystemX86 folders of the package, such that if the
application uses a different version of these dlls, the app specific version will be found.

It may be possible to exclude these files from the package, and use a package dependency for the Microsoft package of VCRuntimes 2015-2022, but only if the release build of the PSF is used. Keep in mind that the target application may also be adding VCRuntimes into the package.

| Release Build | Debug Build | Notes
| --- | --- | --- |
| msvcp140.dll | msvcp140d.dll | x86 and x64 |
| vcruntime140.dll | vcruntime140d.dll | x86 and x64 |
| vcruntime140_1.dll | vcruntime140_1d.dll | x64 only |
| | ucrtbased.dll | x86 and x64 |

A copy of these may be found in the OBSOLETE folder of the PSF release.
## About Debugging this fixup
The Release build of this fixup produces no output to the debug console port for performance reasons.
Use of the Debug build will enable you to see the intercepts and what the fixup did.
Expand Down Expand Up @@ -401,4 +418,4 @@ The Package Support Framework does not currently handle scenarios where an appli
### RoamingAppData
The MSIX runtime, which operates after the PSF redirections, will automatically redirect any writes made by contained processes that are aimed at the user's AppData\Roaming folder, whether requested directly by the application or if redirected by this shim. These writes are re-redirected to the user's AppData\Local\Packages\PackageName\LocalCache\Roaming folder.

Developers can use a different API to persist data in the user's AppData\Local\Packages\PackageName\RoamingState folder. For more information on this folder, how it is cloud backed, and limitations, see the blog post: https://blogs.windows.com/buildingapps/2016/05/04/roaming-app-data-and-the-user-experience/#4AuZVb5pUlw4O21b.97
Developers can use a different API to persist data in the user's AppData\Local\Packages\PackageName\RoamingState folder. For more information on this folder, how it is cloud backed, and limitations, see the blog post: https://blogs.windows.com/buildingapps/2016/05/04/roaming-app-data-and-the-user-experience/#4AuZVb5pUlw4O21b.97
16 changes: 16 additions & 0 deletions fixups/MFRFixup/readme.md
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,22 @@ A static analysis of the files in the package is often all that is needed:
At runtime this can sometimes be detected as ACCESS_DENIED results to file operations, however File and Path not found may also indicate the need.

### Dependencies for MfrFixup
When using this fixup, you must also supply the following dependencies. The fixup uses version 14032 of the runtimes.

It is recommended that these be placed in the VFS\SystemX64 and VFS\SystemX86 folders of the package, such that if the
application uses a different version of these dlls, the app specific version will be found.

It may be possible to exclude these files from the package, and use a package dependency for the Microsoft package of VCRuntimes 2015-2022, but only if the release build of the PSF is used. Keep in mind that the target application may also be adding VCRuntimes into the package.

| Release Build | Debug Build | Notes
| --- | --- | --- |
| msvcp140.dll | msvcp140d.dll | x86 and x64 |
| vcruntime140.dll | vcruntime140d.dll | x86 and x64 |
| vcruntime140_1.dll | vcruntime140_1d.dll | x64 only |
| | ucrtbased.dll | x86 and x64 |

A copy of these may be found in the OBSOLETE folder of the PSF release.
## About Debugging this fixup
The Release build of this fixup produces no output to the debug console port for performance reasons.
Use of the Debug build will enable you to see the intercepts and what the fixup did.
Expand Down
18 changes: 11 additions & 7 deletions fixups/RegLegacyFixups/readme.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,15 +21,19 @@ Use of the Debug build will enable you to see the intercepts and what the fixup
That output is easily seen using the Sysinternals "DebugView" tool.

### Dependencies for RegLegacyFixups
When using this fixup, you must also supply the following dependencies. It is recommended that these be
placed in the VFS\SystemX64 and VFS\SystemX86 folders of the package, such that if the
When using this fixup, you must also supply the following dependencies. The fixup uses version 14032 of the runtimes.

It is recommended that these be placed in the VFS\SystemX64 and VFS\SystemX86 folders of the package, such that if the
application uses a different version of these dlls, the app specific version will be found.

| Release Build | Debug Build |
| --- | --- |
| msvcp140.dll | msvcp140d.dll |
| vcruntime140.dll | vcruntime140d.dll |
| | ucrtbased.dll |
It may be possible to exclude these files from the package, and use a package dependency for the Microsoft package of VCRuntimes 2015-2022, but only if the release build of the PSF is used. Keep in mind that the target application may also be adding VCRuntimes into the package.

| Release Build | Debug Build | Notes
| --- | --- | --- |
| msvcp140.dll | msvcp140d.dll | x86 and x64 |
| vcruntime140.dll | vcruntime140d.dll | x86 and x64 |
| vcruntime140_1.dll | vcruntime140_1d.dll | x64 only |
| | ucrtbased.dll | x86 and x64 |

A copy of these may be found in the OBSOLETE folder of the PSF release.

Expand Down

0 comments on commit b7c883b

Please sign in to comment.