Community
    • Login

    Notepad++ v8.7.1 (32-bit) NppShell.dll is intermittently crashing Windows Explorer.

    Scheduled Pinned Locked Moved Help wanted · · · – – – · · ·
    20 Posts 5 Posters 1.2k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • xomxX
      xomx @Mark Colvin
      last edited by

      @Mark-Colvin

      It is a buffer overflow caused somehow by the NppShell.dll in the Windows Explorer process. As a temporary workaround, you can disable this shell extension by going to your C:\Program Files (x86)\Notepad++\contextMenu\ folder and run there this command in cmd (with admin rights): regsvr32 /u NppShell.dll

      This is a known problem for some users (they reported it for x64 too) but unfortunately I was not able to reproduce it, so I cannot say if it is a problem of NppShell shell extension, Notepad++ app or some other SW. It can also be a conflict with some other shell extension installed in your system (otherwise I cannot explain why most Notepad++ users do not have this problem).

      If you switch to x64 Notepad++ with its x64 NppShell and you still get these Explorer crashes, you can try to follow these instructions to help me with debugging of the issue:
      https://github.com/notepad-plus-plus/notepad-plus-plus/issues/15683#issuecomment-2492113826

      @Mark-Colvin said in Notepad++ v8.7.1 (32-bit) NppShell.dll is intermittently crashing Windows Explorer.:

      OS Name : Windows 8 Pro (64-bit)

      I am also surprised to see this info when according to your post it should be reported as Win10 or Win11.

      1 Reply Last reply Reply Quote 3
      • xomxX
        xomx @Mark Colvin
        last edited by xomx

        @Mark-Colvin

        Could you please report your Windows Registry relevant info:

        1. Save the following to a file (named e.g. WinVerRegKeys-export.cmd) somewhere writable on your disk:
        PowerShell "$Key='HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion'; Get-ItemProperty -Path $Key -Name *" > WinVerRegKeys64.txt
        PowerShell "$Key='HKLM:\SOFTWARE\WOW6432Node\Microsoft\Windows NT\CurrentVersion'; Get-ItemProperty -Path $Key -Name *" > WinVerRegKeys32.txt
        
        1. Run the WinVerRegKeys-export.cmd batch file by e.g. doubleclicking on it in Explorer.
        2. Take the contents of the created WinVerRegKeys32.txt and WinVerRegKeys64.txt files and post them please here.
        Mark ColvinM 1 Reply Last reply Reply Quote 2
        • Mark ColvinM
          Mark Colvin @xomx
          last edited by PeterJones

          @xomx ,
          posted here are the files you requested.

          Also, I uninstalled NPP x32 and not seen any Windows Explorer errors nor crashes for over 48 hours. (normal laptop usage, about 6 to 10 hours per day)

          WinVerRegKeys32.txt

          
          BaseBuildRevisionNumber   : 1
          BuildBranch               : ge_release
          BuildGUID                 : ffffffff-ffff-ffff-ffff-ffffffffffff
          BuildLab                  : 26100.ge_release.240331-1435
          BuildLabEx                : 26100.1.amd64fre.ge_release.240331-1435
          CompositionEditionID      : Enterprise
          CurrentBuild              : 26100
          CurrentBuildNumber        : 26100
          CurrentMajorVersionNumber : 10
          CurrentMinorVersionNumber : 0
          CurrentType               : Multiprocessor Free
          CurrentVersion            : 6.3
          DisplayVersion            : 24H2
          EditionID                 : Enterprise
          EditionSubManufacturer    : 
          EditionSubstring          : 
          EditionSubVersion         : 
          InstallationType          : Client
          InstallDate               : 0
          ProductName               : Windows 10 Enterprise
          ReleaseId                 : 2009
          SoftwareType              : System
          SystemRoot                : C:\WINDOWS
          UBR                       : 2894
          RegisteredOwner           : __________@gmail.com
          PSPath                    : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Windo
                                      ws NT\CurrentVersion
          PSParentPath              : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Windo
                                      ws NT
          PSChildName               : CurrentVersion
          PSDrive                   : HKLM
          PSProvider                : Microsoft.PowerShell.Core\Registry
          
          

          WinVerRegKeys64.txt

          
          
          SystemRoot                : C:\WINDOWS
          BaseBuildRevisionNumber   : 1
          BuildBranch               : ge_release
          BuildGUID                 : ffffffff-ffff-ffff-ffff-ffffffffffff
          BuildLab                  : 26100.ge_release.240331-1435
          BuildLabEx                : 26100.1.amd64fre.ge_release.240331-1435
          CompositionEditionID      : Enterprise
          CurrentBuild              : 26100
          CurrentBuildNumber        : 26100
          CurrentMajorVersionNumber : 10
          CurrentMinorVersionNumber : 0
          CurrentType               : Multiprocessor Free
          CurrentVersion            : 6.3
          DisplayVersion            : 24H2
          EditionID                 : Professional
          EditionSubManufacturer    : 
          EditionSubstring          : 
          EditionSubVersion         : 
          InstallationType          : Client
          InstallDate               : 1732282151
          LCUVer                    : 10.0.26100.2894
          ProductName               : Windows 10 Pro
          ReleaseId                 : 2009
          SoftwareType              : System
          UBR                       : 2894
          PathName                  : C:\Windows
          PendingInstall            : 0
          ProductId                 : 00330-53097-84373-AAOEM
          DigitalProductId          : {164, 0, 0, 0...}
          DigitalProductId4         : {248, 4, 0, 0...}
          RegisteredOwner           : __________@gmail.com
          InstallTime               : 133767557516344286
          PSPath                    : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows 
                                      NT\CurrentVersion
          PSParentPath              : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT
          PSChildName               : CurrentVersion
          PSDrive                   : HKLM
          PSProvider                : Microsoft.PowerShell.Core\Registry
          
          
          

          Sorry, not enough karma to attach files to posts yet. Supplied as code.

          Mark
          —
          moderator edited to remove real email address

          xomxX 1 Reply Last reply Reply Quote 2
          • xomxX
            xomx @Mark Colvin
            last edited by

            @Mark-Colvin

            Thanks.
            But I didn’t find anything wrong in your data (that could explain your previously reported Win8).

            But all this gives me the idea that perhaps the affected users here have something unusual/wrong in their Registry, which in turn causes the N++ shell extension to crash. I have checked the NppShell source code and indeed - some parts of the code are not the best in terms of resilience to unexpected input or some resource or data unavailability. I didn’t manage to crash Explorer exactly the same way as all affected users report, but in principle that could be it (maybe I just didn’t simulate the right bad data in the Registry).

            I’ll try to raise some questions in the NppShell project issues.

            Mark ColvinM 1 Reply Last reply Reply Quote 2
            • Mark ColvinM
              Mark Colvin @xomx
              last edited by

              @xomx ,

              Update: I installed npp.8.7.5.Installer.x64 five days ago without Context Menu feature and fewer plugins. So far, no Windows Explorer crashes.

              I really miss the Context Menu feature, NPP is so easy to open many file types with this quick step for a quick peek.

              I will re-configure NPP soon with Context Menu turned on and see if the problem returns. Any advice on data collection for this issue if it re-occurs?

              TIA,
              Mark

              1 Reply Last reply Reply Quote 0
              • xomxX
                xomx
                last edited by xomx

                @Mark-Colvin said in Notepad++ v8.7.1 (32-bit) NppShell.dll is intermittently crashing Windows Explorer.:

                Any advice on data collection for this issue if it re-occurs?

                As I already said:

                @xomx said in Notepad++ v8.7.1 (32-bit) NppShell.dll is intermittently crashing Windows Explorer.:

                If you switch to x64 Notepad++ with its x64 NppShell and you still get these Explorer crashes, you can try to follow these instructions to help me with debugging of the issue:
                https://github.com/notepad-plus-plus/notepad-plus-plus/issues/15683#issuecomment-2492113826

                So if you can, please follow the instructions in that GitHub comment and then somehow forward me the relevant Explorer crash dump file generated along with a possible NppShell.log.

                If the GitHub procedure seems too complicated for you - the main thing is to get the crash-dump file while using my special version of the “C:\Program Files\Notepad++\contextMenu\NppShell.dll”, so download it and after the usual reinstall of your Notepad++ with the shell context extension, replace the standard NppShell.dll file there with the file from this archive: https://github.com/user-attachments/files/17850910/NppShell_v1500_x64_Debug.zip

                If you have any questions about the GitHub instructions, do not hesitate to ask me.

                Mark ColvinM 1 Reply Last reply Reply Quote 1
                • Mark ColvinM
                  Mark Colvin @xomx
                  last edited by

                  @xomx ,
                  Thank you for the alternatives on this investigation. I will update as I get more information.

                  Thanks again,
                  Mark

                  Mark ColvinM 1 Reply Last reply Reply Quote 1
                  • Mark ColvinM
                    Mark Colvin @Mark Colvin
                    last edited by

                    @xomx,
                    Posted dump file and error dialog at:
                    https://github.com/notepad-plus-plus/notepad-plus-plus/issues/15683#issuecomment-2492113826

                    Saw when open .ZIP file… got the error dialog, clicked retry, and all explorer windows vanished.
                    Hope it helps…

                    Mark ColvinM 1 Reply Last reply Reply Quote 1
                    • Mark ColvinM
                      Mark Colvin @Mark Colvin
                      last edited by

                      @xomx,
                      5 hours later, another error with NppShell.DLL, but no new dump file created.
                      This occurred during a copy/paste operation from one Window to another.

                      1 Reply Last reply Reply Quote 0
                      • xomxX xomx referenced this topic on
                      • xomxX
                        xomx
                        last edited by

                        @Mark-Colvin

                        Could you please check if you are not running N++ in Windows8 compatibility mode? More about it here.

                        Mark ColvinM 1 Reply Last reply Reply Quote 1
                        • Mark ColvinM
                          Mark Colvin @xomx
                          last edited by

                          @xomx
                          How does this compatibility mode affect the Explorer context menu invocations?
                          The one Shortcut I have is NOW set to Compatibility mode with Windows 8. But rarely use it directly…

                          What about the errors with NppShell.DLL which occur without NP++ even turned on?
                          (I am missing something on how this NppShell.DLL works outside of NP++)
                          See NppShell.log files posted in github thread…

                          Thanks,
                          Mark

                          xomxX 1 Reply Last reply Reply Quote 0
                          • xomxX
                            xomx @Mark Colvin
                            last edited by

                            @Mark-Colvin said in Notepad++ v8.7.1 (32-bit) NppShell.dll is intermittently crashing Windows Explorer.:

                            How does this compatibility mode affect the Explorer context menu invocations?

                            Good point, this probably influences the N++ app only and not the NppShell extension DLL invoked by the shell Explorer.

                            1 Reply Last reply Reply Quote 0
                            • David MSD
                              David MS
                              last edited by

                              Hello,

                              I have also constantly the problem that NppShell.dll crashes the Windows 11 Explorer.
                              After uninstalling Notepad++ the explorer runs without crahes.

                              I use the latest version of Notepad++ (8.7.9).

                              Does exists a workaround or a fix?

                              Thank you very much.

                              Best regards,

                              David

                              xomxX 1 Reply Last reply Reply Quote 0
                              • xomxX
                                xomx @David MS
                                last edited by

                                @David-MS said in Notepad++ v8.7.1 (32-bit) NppShell.dll is intermittently crashing Windows Explorer.:

                                Does exists a workaround

                                If you mean by this a workaround to not have to completely uninstall the N++ for preventing the Explorer crashes, then yes - unregistering of the NppShell context-menu handler helps: https://community.notepad-plus-plus.org/post/99261

                                or a fix?

                                I could not exactly reproduce the issue myself but found some potential problematic places in the NppShell source code and put a “hardening” of that code to my TODO. Unfortunately not enough free time yet. More info and possible future progress in the GitHub issue.

                                1 Reply Last reply Reply Quote 1
                                • First post
                                  Last post
                                The Community of users of the Notepad++ text editor.
                                Powered by NodeBB | Contributors