ricvec Posted October 12, 2015 Share Posted October 12, 2015 Hello everybody, I am trying to open a picture directly from the web following the approach described here below: 1- created a keyword to open automatically paintdotnet with a magnet url (create a .reg file and paste/run this code): REGEDIT4 [HKEY_CLASSES_ROOT\keywordTest] @="URL:keywordTest Protocol" "URL Protocol"="" [HKEY_CLASSES_ROOT\keywordTest\shell] [HKEY_CLASSES_ROOT\keywordTest\shell\open] [HKEY_CLASSES_ROOT\keywordTest\shell\open\command] @="\"C:\\Program Files\\paint.net\\PaintDotNet.exe\" \"%1\"" 2- started a browser and typed: keywordTest:http://forums.getpaint.net/public/style_images/1_pdn40logo_forum_header.png PaintDotNet runs correctly but an error appears: "There was an error while opening the file." and the stack trace is the following: System.NotSupportedException: The given path's format is not supported. at System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy, Boolean useLongPath, Boolean checkHost) at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, FileOptions options, String msgPath, Boolean bFromProxy) at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access) at PaintDotNet.Controls.DocumentWorkspace.LoadDocument(Control owner, String fileName, FileType& fileTypeResult, ProgressEventHandler progressCallback) in d:\src\pdn\paintdotnet\src\PaintDotNet\Controls\DocumentWorkspace.cs:line 3205 If I open the image starting from paintDotNet, everything is working, but obviously I need another behavior :-) Thank you very much if someone can give me a solution or some hints. Quote Link to comment Share on other sites More sharing options...
Rick Brewster Posted October 12, 2015 Share Posted October 12, 2015 Paint.NET doesn't support loading a URL from the command line. You can, however, use File -> Open to load from a URL. Just paste it into the "File name:" box and click Open. This works because the Windows shell (e.g. Explorer) provides the common Open dialog and it allows this. It will first download the file to a temporary local folder (without a progress bar or cancel button, mind you!) and then forward that local path to Paint.NET. You certainly won't be able to save back to the original URL. But, keep in mind that that's functionality of the Open dialog. It doesn't work outside of it. 1 Quote The Paint.NET Blog: https://blog.getpaint.net/ Donations are always appreciated! https://www.getpaint.net/donate.html Link to comment Share on other sites More sharing options...
ricvec Posted October 12, 2015 Author Share Posted October 12, 2015 Thank you very much Rick for the answer. I was not aware of the functionality of Explorer to download the files automatically. Obviously I cannot save the image in the original URL :-) Your confirmation is very useful and I have understood I cannot do what I would like to have. Thanks. Quote Link to comment Share on other sites More sharing options...
Rick Brewster Posted October 12, 2015 Share Posted October 12, 2015 Yeah the Open dialog supplied by Explorer has a lot of interesting features. For instance, you can plug in a camera or phone and use that dialog to load pictures from the device even though they don't have file system paths (it copies it to a local path first, just like for http:// "files"). They exist as virtual nodes inside of Explorer's virtualized "namespace". Other things that exist in the "Explorer namespace" include Libraries, the Control Panel, etc. Quote The Paint.NET Blog: https://blog.getpaint.net/ Donations are always appreciated! https://www.getpaint.net/donate.html Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.