[Bug 50026] New: Powershell Core errors (in win10 mode) with: Attempting to perform the Start operation on the 'FileSystem' provider failed. Unable to find an entry point named 'RtlQueryProcessPlaceholderCompatibilityMode' in DLL 'ntd ll.dll'.

WineHQ Bugzilla wine-bugs at winehq.org
Sun Oct 18 05:11:49 CDT 2020


https://bugs.winehq.org/show_bug.cgi?id=50026

            Bug ID: 50026
           Summary: Powershell Core errors (in win10 mode) with:
                    Attempting to perform the Start operation on the
                    'FileSystem' provider failed. Unable to find an entry
                    point named
                    'RtlQueryProcessPlaceholderCompatibilityMode' in DLL
                    'ntd ll.dll'.
           Product: Wine
           Version: 5.19
          Hardware: x86-64
               URL: https://github.com/PowerShell/PowerShell/releases/down
                    load/v7.0.3/PowerShell-7.0.3-win-x64.msi
                OS: Linux
            Status: NEW
          Keywords: download, patch
          Severity: normal
          Priority: P2
         Component: ntdll
          Assignee: wine-bugs at winehq.org
          Reporter: xerox.xerox2000x at gmail.com
   Regression SHA1: download
      Distribution: Debian

Created attachment 68458
  --> https://bugs.winehq.org/attachment.cgi?id=68458
patch with stub

This happens on every command if win10 version is set, i.e.

wine pwsh.exe -c Write-Host "Hello"

Attempting to perform the Start operation on the 'FileSystem' provider failed.
Unable to find an entry point named
'RtlQueryProcessPlaceholderCompatibilityMode' in DLL 'ntdll.dll'.

Though it continues happily further and the command(s) work, this actually
prevents Waves Central from starting in win10 mode

I`ll send attached patch (that fixes this) later.

Relevant code from Powershell Core:

#if !UNIX
            // The placeholder mode management APIs
Rtl(Set|Query)(Process|Thread)PlaceholderCompatibilityMode
            // are only supported starting with Windows 10 version 1803 (build
17134)
            Version minBuildForPlaceHolderAPIs = new Version(10, 0, 17134, 0);
            if (Environment.OSVersion.Version >= minBuildForPlaceHolderAPIs)
            {
                // let's be safe, don't change the PlaceHolderCompatibilityMode
if the current one is not what we expect
                if (NativeMethods.PHCM_DISGUISE_PLACEHOLDER ==
NativeMethods.RtlQueryProcessPlaceholderCompatibilityMode())
                {
                   
NativeMethods.RtlSetProcessPlaceholderCompatibilityMode(NativeMethods.PHCM_EXPOSE_PLACEHOLDERS);
                }
            }
#endif

-- 
Do not reply to this email, post in Bugzilla using the
above URL to reply.
You are receiving this mail because:
You are watching all bug changes.



More information about the wine-bugs mailing list