-
Notifications
You must be signed in to change notification settings - Fork 8.1k
Process reparse points to Microsoft Store applications #13481
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
This pull request has been automatically marked as Review Needed because it has been there has not been any activity for 7 days. |
|
I'm afraid I don't know much about reparse points or the Microsoft Store. Requesting review from @SteveL-MSFT, @anmenaga and @daxian-dbw. |
|
This feels like the right solution to me, especially because we're already treating IO_REPARSE_TAG_APPEXECLINK as though it were a link already. |
|
CI failures seem to be unrelated -- will see if there's a fix |
src/System.Management.Automation/namespaces/FileSystemProvider.cs
Outdated
Show resolved
Hide resolved
|
@rjmholt I rebased to pass CIs. |
|
🎉 Handy links: |
PR Summary
Fix #9970
Add resolving a Store application path (that is a reparse point) to a real path.
SHGetFileInfo() does not understand reparse points and returns 0 ("non exe or error") so we are trying to get a real path before.
Exclude Windows code from compilation on Unix.
Exclude second extra check if an app is Windows application or console application
Add new properties (IsWindowsApplication/IsConsoleApplication) to NativeCommandProcessor to cache the check.
Before the PR we did the check twice - (1) in redirection check, (2) in background check.
I tested this manually with
C:\Users\<username>\AppData\Local\Microsoft\WindowsApps\Skype.exe./cc @DHowett
PR Context
PR Checklist
.h,.cpp,.cs,.ps1and.psm1files have the correct copyright headerWIP:or[ WIP ]to the beginning of the title (theWIPbot will keep its status check atPendingwhile the prefix is present) and remove the prefix when the PR is ready.