Context menu entry in the potable version of Notepad++
-
If I’m correct, the only way currently is to download an installer package and extract it from there using tools like 7z.
-
But I think this should also ship with the portable version.
What do you think, worth opening an FR? -
I found the last version of the .dll “NppShell_06.dll” from the installer package. Tried regsvr32 /i NppShell_06.dll by the CMD Prompt (Adminstrator) but encountered an error:
The module “NppShell_06.dll” was loaded but the call to DLLRegisterServer failed with error code 0x80004005.
Any hint?
-
This post is deleted! -
@J4NY4R said in Context menu entry in the potable version of Notepad++:
0x80004005.
Can you post the debug-info from npp? Is available from the last menu, the ? menu?
-
Notepad++ v7.9.2 (32-bit)
Build time : Dec 31 2020 - 03:58:36
Path : D:\Portable Programs\Notepad++\notepad++.exe
Admin mode : ON
Local Conf mode : ON
OS Name : Windows 10 Enterprise LTSC 2019 (64-bit)
OS Version : 1809
OS Build : 17763.1637
Current ANSI codepage : 1252
Plugins : mimeTools.dll NppConverter.dll NppExport.dll -
@J4NY4R said in Context menu entry in the potable version of Notepad++:
v7.9.2 (32-bit)
Did you use the file from the 32bit installation package or the one from the 64bit package?
-
@Ekopalypse said in Context menu entry in the potable version of Notepad++:
@J4NY4R said in Context menu entry in the potable version of Notepad++:
v7.9.2 (32-bit)
Did you use the file from the 32bit installation package or the one from the 64bit package?
32 bit one.
-
@J4NY4R
Ok, give me a few minutes, I will start my virtualbox and try to see what the problem is. It’s the least I can do after pointing you to this solution.
-
@J4NY4R
Are you sure you used an elevated command prompt?
When I open a cmd (using Run as administrator), change to the directory where the NppShell file is located and run the above command, I get a new window asking for the settings.
I set them and it’s done.Notepad++ v7.9.2 (32-bit) Build time : Dec 31 2020 - 03:58:36 Path : C:\Portable Programs\Notepad++\notepad++.exe Admin mode : OFF Local Conf mode : ON OS Name : Windows 10 Enterprise (64-bit) OS Version : 2004 OS Build : 19041.388 Current ANSI codepage : 1252 Plugins : mimeTools.dll NppConverter.dll NppExport.dll
-
@Ekopalypse
Don’t know what wrong was on my side but at last I managed to solve it. Thanks for your time and help. -
Although I have the shell entry now, but I can’t open any file with it!
-
Hello,@Jaanyaar
Please follow this information, To Context menu entry in the portable version of Notepad++.
The first thing you’ll want to do is open up regedit.exe through the Start Menu search or run box, and then browse down to the following key: HKEY_CLASSES_ROOT\Directory\Background\shell
Registry Editor
The screen should look similar to this one if you are in the right place.
Next, you’ll want to create a new key underneath the shell key, the name of which is exactly what is going to show up on the desktop menu. Right-click on the “shell” key, and then choose New \ Key from the menu.
Give the new key the name that you want to show up on the desktop context menu. For this example, we’ll be using Open with Notepad++.
Next, you’ll need to create the command key that will actually hold the command used to launch the application. Right-click on the new Notepad++ key, and then choose New \ Key from the menu.
Registry Editor
Give this key the name “command” in lowercase.
To complete this step you’ll need the full path to the application that you want to launch. You can use Shift + Right-Click to get the Copy as Path menu item to find this more quickly.
Now click on “command” on the left side, and then double-click on the (Default) key on the right side to edit the string value.
Paste in the full path to the executable that you got from the “Copy as Path” step above, or you can put in the full path yourself if you’d like.
And right-clicking on the desktop will produce the new menu item… naturally, using this menu item should launch Notepad++.
You can add as many applications to the desktop context menu as you’d like, just repeat the steps with a new menu item name.
It is basically the same for other Windows versions too.
I hope this information will be useful to you.
Thank you. -
@prahladmifour Thanks!
I did realize what the cause of my error message was. Notepad++ was set to run as Administrator, using the context menu entry in this situation leads to the above error.
-
@Jaanyaar said in Context menu entry in the potable version of Notepad++:
I did realize what the cause of my error message was. Notepad++ was set to run as Administrator, using the context menu entry in this situation leads to the above error.
This makes sense, although the error message received is not helpful:
Your Explorer is running non-admin. When it tries to tell an admin-level N++ to run/switch-to N++, N++ says “I can’t do that because you are not important enough”.Good that it is now working for you @Jaanyaar
-
@Jaanyaar @Ekopalypse @Alan-Kilborn
For the records:
When installing the Notepad++ shell extension manually, one has to choose the version of the DLL with the same bitness like the Explorer itself, i.e. the bitness of his Windows installation. Since 32 bit Notepad++ can be installed on both 32 bit and 64 bit Windows, its installer contains two versions of NppShell_06.dll, a 32 bit and a 64 bit version. I guess @Jaanyaar luckily choose the correct one in his second attempt to install the shell extension.
the error message received is not helpful
Unhelpful and/or uncertain error messages are a well-known feature of Notepad++, aren’t they? ;-) Especially I think for Plugins Admin error messages. I even filed an issue regarding that a long time ago - nothing happened.
-
For me, the command above (except now it’s not NppShell_01.dll but NppShell.dll) produced error:
The module "NppShell.dll" was loaded but the entry-point DllInstall was not found. Make sure that "NppShell.dll is a valid DLL or OCX file and then try again.
What fixed it was to remove the
/i
option, and run asregsvr32.exe NppShell.dll
, as said at https://github.com/notepad-plus-plus/notepad-plus-plus/issues/13439#issuecomment-1499289606.(windows 32 bit , N++ 8.5.4)
Maybe in future they’ll ship the correct dll with the portable version https://github.com/notepad-plus-plus/notepad-plus-plus/issues/13935
-
This post is deleted! -
One thing that confuses me is that most answers on getting this context-menu for Portable-version users require Admin rights. Then why these users still prefer Portable and not Installer version?
But I think this should also ship with the portable version.
What do you think, worth opening an FR?Though that will help, maybe an even better solution is to be shipped with a .reg file or a .dll specifically for users without admin-rights, that they can run to get this functionality easier?
-
You may be interested in the Scoop package manager. All software goes into
%USERPROFILE%\scoop\apps
by default, with support for multiple versions (a shortcut namedcurrent
always points to the latest version).Many packages come with Registry scripts for more convenient system integration (see the “Notes” field below).
> scoop info notepadplusplus Name : notepadplusplus Description : A free source code editor and Notepad replacement that supports several languages. Version : 8.5.4 Bucket : extras Website : https://notepad-plus-plus.org License : GPL-3.0-or-later Updated at : 2023-06-18 12:26:57 PM Updated by : github-actions[bot] Binaries : notepad++.exe Shortcuts : Notepad++ Notes : Add Notepad++ as a context menu option by running: reg import "<root>\install-context.reg"