1

I know how to use RegEdit to change Windows 10 File Explorer "Edit" context menu action for images to any image editors like Paint.net. But I have no idea about how to change it to Windows Store version of Paint.net. I have already tried the value like

"explorer.exe" "shell:appsFolder\dotPDNLLC.paint.net_h55e3w7q8jbva!dotPDNLLC.paint.net %1"

But it is not working.

PatrikN
  • 367
  • 1
  • 9
  • research how to start a Windows Store app (WUA) from the command line, there are ways to do it with PowerShell. – Peter Hahndorf Feb 20 '18 at 02:47
  • I can use `explorer.exe shell:appsFolder\dotPDNLLC.paint.net_h55e3w7q8jbva!dotPDNLLC.paint.net` to open Windows Store version of Paint.net, but when I add another arguments after it, it will open explorer.exe but not Windows Store version of Paint.net. – Yùjǐn Lín Feb 20 '18 at 09:33

3 Answers3

1

Since the executable itself doesn't seem to be a UWP app, you can launch it with arguments using:

%ProgramFiles%\WindowsApps\dotPDNLLC.paint.net_4.21.6589.0_x64__h55e3w7q8jbva\PaintDotNet.exe %1

The location of the app can be found by typing in PowerShell:

(get-appxpackage dotPDNLLC.paint.net).InstallLocation

Note: You might need to take own of the WindowsApps folder. Refer to this answer on how to do it.

iTechieGamer
  • 723
  • 4
  • 11
  • I change `HKEY_CLASSES_ROOT\Paint.Picture\shell\edit\command` and `HKEY_CLASSES_ROOT\SystemFileAssociations\image\shell\edit\command` to `"%ProgramFiles%\WindowsApps\dotPDNLLC.paint.net_4.21.6589.0_x64__h55e3w7q8jbva\PaintDotNet.exe" "%1"`, when I select png, jpg, bmp and open with "Edit" context menu action, it shows error messagebox says Access is denied. – Yùjǐn Lín Feb 21 '18 at 05:13
  • You might need to do this: https://superuser.com/a/1100591/870655 – iTechieGamer Feb 21 '18 at 09:10
  • I thought about it, but I'm worried this might let system become abnormal. – Yùjǐn Lín Feb 22 '18 at 07:48
  • @YurinaShirahane It won't make your system abnormal, it will run normally. I have tried that answer and my system works fine without problems. – iTechieGamer Feb 23 '18 at 05:48
  • But why Microsoft locked the access of `WindowsApps` folder? – Yùjǐn Lín Feb 28 '18 at 03:44
  • @YurinaShirahane I don't know the reason of Microsoft locking that folder, but a Microsoft employee suggested this: https://answers.microsoft.com/en-us/windows/forum/windows_10-files-winpc/what-is-windows-apps-hidden-folder-and-why-cant-i/40a60508-c409-422a-af92-bd51fe5a4ca9 – iTechieGamer Mar 01 '18 at 11:08
  • This worked perfectly for me. This is exactly what I was looking to do. I was a little nervous about changing default permissions for the WindowsApps folder. However, I felt better when there were so many people doing this already (when doing google searches). The only thing I did different is change the owner to the "Administrators" group instead of my personal account. – MKANET Jun 09 '18 at 23:54
  • This solution no longer works for me using the latest Paint.net package. I can't even execute it directly from the WindowsApps folder... I can only execute it via a system generated shortcut from shell:appsFolder. If I execute it directly, I get the error, "paint.net has detected that some important installation file are missing. If you click the Repair button..." The missing file are SetupNgen.exe, SetupNgen.exe.config – MKANET Nov 06 '18 at 19:04
  • @MKANET https://support.microsoft.com/en-us/help/929833/use-the-system-file-checker-tool-to-repair-missing-or-corrupted-system – iTechieGamer Nov 07 '18 at 10:15
  • @iTechieGamer, SFC doesn't find anything wrong. I don''t have any issues with executing other apps under C:\Program Files\WindowsApps\*. It seems to be specific just to Paint.net – MKANET Nov 10 '18 at 05:38
0

I know this is an old thread, but I found it quite often while searching for the answer.

I have now found the exact registry entries - does not require taking ownership of the windowsapps folder etc.

[HKEY_CLASSES_ROOT\SystemFileAssociations\image\shell\Edit with PAINT.NET]
"AppUserModelID"="dotPDNLLC.paint.net_h55e3w7q8jbva!dotPDNLLC.paint.net"
"PackageRelativeExecutable"="PaintDotNet.exe"
"Parameters"="\"%1\""
"ContractId"="Windows.File"
"DesiredInitialViewState"=dword:00000000
"PackageId"="dotPDNLLC.paint.net_4.200.7133.0_x64__h55e3w7q8jbva"

[HKEY_CLASSES_ROOT\SystemFileAssociations\image\shell\Edit with PAINT.NET\command]
"DelegateExecute"="{BFEC0C93-0B7D-4F2C-B09C-AFFFC4BDAE78}"
Reddy Lutonadio
  • 17,120
  • 4
  • 14
  • 35
0

I just went into HKEY_CLASSES_ROOT\SystemFileAssociations\image\shell, created a key named Edit with PAINT.NET, added another key called command and pasted into the Default value this: "location_of_the_executable" "%1" For me it seems to work, I hope for you too!