FileZilla Client feature request: Set default FTP protocol

Moderator: Project members

Message
Author
diblo_dk
500 Syntax error
Posts: 12
Joined: 2009-10-02 15:02

FileZilla Client feature request: Set default FTP protocol

#1 Post by diblo_dk » 2009-10-02 23:05

I think that perhaps it would be a feature there can be build in to Filezilla Client

Add FileZilla to Default Programs.
Add protocols

Code: Select all

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\ftp]
@="URL:File Transfer Protocol"
"URL Protocol"=""
[HKEY_CLASSES_ROOT\ftp\DefaultIcon]
@="C:\\Program Files (x86)\\FileZilla FTP Client\\filezilla.exe,0"
[HKEY_CLASSES_ROOT\ftp\shell\open\command]
@="\"C:\\Program Files (x86)\\FileZilla FTP Client\\filezilla.exe\" \"%1\""

[HKEY_CLASSES_ROOT\sftp]
@="URL:Secure File Transfer Protocol"
"URL Protocol"=""
[HKEY_CLASSES_ROOT\sftp\DefaultIcon]
@="C:\\Program Files (x86)\\FileZilla FTP Client\\filezilla.exe,0"
[HKEY_CLASSES_ROOT\sftp\shell\open\command]
@="\"C:\\Program Files (x86)\\FileZilla FTP Client\\filezilla.exe\" \"%1\""

[HKEY_CLASSES_ROOT\ftps]
@="URL:FTP Secure"
"URL Protocol"=""
[HKEY_CLASSES_ROOT\ftps\DefaultIcon]
@="C:\\Program Files (x86)\\FileZilla FTP Client\\filezilla.exe,0"
[HKEY_CLASSES_ROOT\ftps\shell\open\command]
@="\"C:\\Program Files (x86)\\FileZilla FTP Client\\filezilla.exe\" \"%1\""

[HKEY_CLASSES_ROOT\ftpes]
@="URL:FTP Secure explicitly request"
"URL Protocol"=""
[HKEY_CLASSES_ROOT\ftpes\DefaultIcon]
@="C:\\Program Files (x86)\\FileZilla FTP Client\\filezilla.exe,0"
[HKEY_CLASSES_ROOT\ftpes\shell\open\command]
@="\"C:\\Program Files (x86)\\FileZilla FTP Client\\filezilla.exe\" \"%1\""
Add a handler

Code: Select all

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\FileZillaURL]
@="FileZilla URL"
"FriendlyTypeName"="FileZilla URL"
[HKEY_CLASSES_ROOT\FileZillaURL\DefaultIcon]
@="C:\\Program Files (x86)\\FileZilla FTP Client\\filezilla.exe,0"
[HKEY_CLASSES_ROOT\FileZillaURL\shell\open\command]
@="\"C:\\Program Files (x86)\\FileZilla FTP Client\\filezilla.exe\" \"%1\""
Sets programs information

Code: Select all

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\FileZilla]
@="FileZilla FTP Client"
[HKEY_LOCAL_MACHINE\SOFTWARE\FileZilla\Capabilities]
"ApplicationDescription"="FileZilla is open source software distributed free of charge under the terms of the GNU General Public License."
"ApplicationIcon"="C:\\Program Files (x86)\\FileZilla FTP Client\\filezilla.exe,0"
"ApplicationName"="FileZilla FTP Client"
[HKEY_LOCAL_MACHINE\SOFTWARE\FileZilla\Capabilities\URLAssociations]
"ftp"="FileZillaURL"
"sftp"="FileZillaURL"
"ftps"="FileZillaURL"
"ftpes"="FileZillaURL"
[HKEY_LOCAL_MACHINE\SOFTWARE\FileZilla\DefaultIcon]
@="C:\\Program Files (x86)\\FileZilla FTP Client\\filezilla.exe,0"
Registry location of programs information

Code: Select all

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\RegisteredApplications]
"FileZillaFTPClient"="SOFTWARE\FileZilla\Capabilities"
Set program as default handler
(!) It is necessary to make it from the account which program should be the default handler. Or go to Default program afterwards.

Code: Select all

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\Microsoft\Windows\Shell\Associations\UrlAssociations\ftp\UserChoice]
"Progid"="FileZillaURL"
[HKEY_CURRENT_USER\Software\Microsoft\Windows\Shell\Associations\UrlAssociations\sftp\UserChoice]
"Progid"="FileZillaURL"
[HKEY_CURRENT_USER\Software\Microsoft\Windows\Shell\Associations\UrlAssociations\ftps\UserChoice]
"Progid"="FileZillaURL"
[HKEY_CURRENT_USER\Software\Microsoft\Windows\Shell\Associations\UrlAssociations\ftpes\UserChoice]
"Progid"="FileZillaURL"
Set FileZilla as default FTP protocol handler in Windows.
There is no need to do more.


Set FileZilla as default FTP protocol handler in Google Chrome.
There is no need to do more.


Set FileZilla as default FTP protocol handler in Fx.
(!) Requires: Add FileZilla to Default Programs.

1. Type about:config into the address bar and press Enter.
2. Right-click -> New -> Boolean -> Name: network.protocol-handler.external.ftp -> Value -> true
3. Ensure network.protocol-handler.expose-all is set to true.
Or
1. Add pref("network.protocol-handler.external.ftp", true); to user.js in Firefox profile.
2. Ensure pref("network.protocol-handler.expose-all", XXXX); is set to true or add it as true.
http://kb.mozillazine.org/User.js_file

Default: network.protocol-handler.external.ftp is not added. Can be set to false or remove in user.js for default behavior.


Set FileZilla as default FTP protocol handler in IE.
(!) Requires: Add FileZilla to Default Programs.

Code: Select all

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\MAIN\FeatureControl\FEATURE_INTERNET_SHELL_FOLDERS]
"iexplore.exe"=dword:00000001
[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Internet Explorer\MAIN\FeatureControl\FEATURE_INTERNET_SHELL_FOLDERS]
"iexplore.exe"=dword:00000001
Default: dword:00000000

Code: Select all

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\Microsoft\FTP]
"Use Web Based FTP"="yes"
Default: no


Other info
http://kb.mozillazine.org/Register_protocol
http://msdn.microsoft.com/en-us/library ... 85%29.aspx -> http://msdn.microsoft.com/en-us/library ... 85%29.aspx
http://kb.mozillazine.org/Network.proto ... rotocol%29
http://kb.mozillazine.org/User.js_file
http://blogs.msdn.com/askie/archive/200 ... to-do.aspx

And some other
http://download.sysinternals.com/Files/ ... onitor.zip
Last edited by diblo_dk on 2011-03-22 00:02, edited 9 times in total.
Example explanation.
I tap Forum Recommended games etc, or the line?

Life is not a deal

Diblo Dk

User avatar
botg
Site Admin
Posts: 35492
Joined: 2004-02-23 20:49
First name: Tim
Last name: Kosse

Re: FileZilla Client feature request: Set default FTP protocol

#2 Post by botg » 2009-10-03 00:14

Nice guide.

User avatar
boco
Contributor
Posts: 26899
Joined: 2006-05-01 03:28
Location: Germany

Re: FileZilla Client feature request: Set default FTP protocol

#3 Post by boco » 2009-10-03 08:50

The problematic part is that FileZilla cannot automatically start transfers, so complete FTP URLs (including a file) can't be processed. Did you test all cases?

I think I'll stick this for a while, maybe we can work out something. Possibly even a script for the installer.
### BEGIN SIGNATURE BLOCK ###
No support requests per PM! You will NOT get any reply!!!
FTP connection problems? Please do yourself a favor and read Network Configuration.
FileZilla connection test: https://filezilla-project.org/conntest.php
### END SIGNATURE BLOCK ###

diblo_dk
500 Syntax error
Posts: 12
Joined: 2009-10-02 15:02

Re: FileZilla Client feature request: Set default FTP protoc

#4 Post by diblo_dk » 2009-10-03 14:11

Yes
FileZilla missing some codes that make it impossible to type user name and password after you have pressed the link.
And as you say if you put a file on the address. This part is way hard to do. I know.

But use the standard FTP url protocol formating as.

Code: Select all

ftp://user name:password@address:port/folder/
No need to set the port if default ftp port is use.


There are some other options which can also be.

The FileZillaURL can all ready be use as url protocol FileZillaURL://
Of course Filezilla dont know this protocol, like other software.
But, it will give the opportunity that you can use a protocol that do need to change the default setup of Windows, Fx and IE, if is desired.
But it would be best to make 4 new FileZilla protocol, one for each protocol. (FTP, SFTP, FTPS, FTPES)

I would also note, to remember about Windows Vista and Windows 7 should be setup with a password on the administrator account and create a standard user. (There is no talk about older Windows and have disable AUC) - Just like Linux.
It have influence on HKEY_CURRENT_USER. I know, not all are use this way, but company and some other. But it will be a little wrong to not work around with it.
Example do the add with the FileZilla when it's start on the current account.


http://www.vistax64.com/vista-security/ ... puter.html
Last edited by diblo_dk on 2010-06-11 00:42, edited 1 time in total.
Example explanation.
I tap Forum Recommended games etc, or the line?

Life is not a deal

Diblo Dk

diblo_dk
500 Syntax error
Posts: 12
Joined: 2009-10-02 15:02

Re: FileZilla Client feature request: Set default FTP protocol

#5 Post by diblo_dk » 2009-10-04 15:42

I was thinking that I'll have to correct my broadcast on HKEY_CURRENT_USER.
It will have an impact on all Windows systems, multi-user system.
Example explanation.
I tap Forum Recommended games etc, or the line?

Life is not a deal

Diblo Dk

diblo_dk
500 Syntax error
Posts: 12
Joined: 2009-10-02 15:02

Re: FileZilla Client feature request: Set default FTP protoc

#6 Post by diblo_dk » 2010-06-10 23:42

Default Programs can not do anything for FileZilla beyond user follows that they have control. (Justification: A lot of jumps with FTP protocol)
This means that there must be made an inspection process every time FileZilla start just like IE, Chrome FX, Thunderbird, etc ...
Perhaps looking at a better system for FileZilla a just display a message with yes, no. For example a message with the ability to choose the different protocol.
It would probably be best if there will be asked whether it was the meaning that would shift away from FileZilla.
It will probably be a good idea to correct settings when they switch away from FileZilla, example to IE, Chrome and FX. possible. etc
But it is not so that the others do.

Remember to update HKEY_CLASSES_ROOT\ftp.
I know not what it used to, but can see the FX updater it.

FileZillaURL will still be added to the HKEY_CLASSES_ROOT and people can still use it as protocol. (FileZillaURL://)

To ask for a password, this could then be an opportunity. (It is on Danish)
Image
User: test
Example explanation.
I tap Forum Recommended games etc, or the line?

Life is not a deal

Diblo Dk

diblo_dk
500 Syntax error
Posts: 12
Joined: 2009-10-02 15:02

Re: FileZilla Client feature request: Set default FTP protoc

#7 Post by diblo_dk » 2010-06-11 00:59

boco wrote:The problematic part is that FileZilla cannot automatically start transfers, so complete FTP URLs (including a file) can't be processed. Did you test all cases?

I think I'll stick this for a while, maybe we can work out something. Possibly even a script for the installer.
I do not think I have answer you properly back.
If I click a link in FX is it to see the contents of a folder or a direct download link.
So make a look for the address ends in /.
If it does not end with /, look for whether it is a folder or file name match.
If I remember right it can be done.

It will be more hard if you will make a system where it have to know if it have to open it for edit or download! :D ;)
Example explanation.
I tap Forum Recommended games etc, or the line?

Life is not a deal

Diblo Dk

User avatar
boco
Contributor
Posts: 26899
Joined: 2006-05-01 03:28
Location: Germany

Re: FileZilla Client feature request: Set default FTP protoc

#8 Post by boco » 2010-06-11 01:14

So make a look for the address ends in /.
There's the problem: The trailing slash is not a requirement, so FTP URLs leading to a directory can be with or without trailing slash. Both formats would have to be recognized.
### BEGIN SIGNATURE BLOCK ###
No support requests per PM! You will NOT get any reply!!!
FTP connection problems? Please do yourself a favor and read Network Configuration.
FileZilla connection test: https://filezilla-project.org/conntest.php
### END SIGNATURE BLOCK ###

diblo_dk
500 Syntax error
Posts: 12
Joined: 2009-10-02 15:02

Re: FileZilla Client feature request: Set default FTP protoc

#9 Post by diblo_dk » 2010-06-11 01:54

I'm not way hard to C++ and C#.
Buts

Code: Select all

URL = "ftp://ftp.domain.tld/folder/file.type"
if ("/" == URL.end())
{
  # Yahoo we don't need to do more
  # It is a folder
}
else
{
  # We need to do the hard work.
  # Make a list from the server to see if it is a file or folder we have get the name on.
}
You can use the length of the string to.

Code: Select all

URL = "ftp://ftp.domain.tld/folder/file.type"
length = URL.length()
if ("/" == URL[length])
{
  # Yahoo we don't need to do more
  # It is a folder
}
else
{
  # We need to do the hard work.
  # Make a list from the server to see if it is a file or folder we have get the name on.
}
I don't remember if you need to count one down.

And i have not get the time to make some look up for see the opportunities for ftp server to see if it is a file or a folder

I think if I had to look at those things and report back. But had such a bad time.

:oops: :oops: :oops: :oops: :oops: :oops: :oops: :oops:
Last edited by diblo_dk on 2010-06-11 02:19, edited 5 times in total.
Example explanation.
I tap Forum Recommended games etc, or the line?

Life is not a deal

Diblo Dk

diblo_dk
500 Syntax error
Posts: 12
Joined: 2009-10-02 15:02

Re: FileZilla Client feature request: Set default FTP protoc

#10 Post by diblo_dk » 2010-06-11 01:59

But as you can see we only make this look up to save work. Not because it's all we need for it works.
Example explanation.
I tap Forum Recommended games etc, or the line?

Life is not a deal

Diblo Dk

diblo_dk
500 Syntax error
Posts: 12
Joined: 2009-10-02 15:02

Re: FileZilla Client feature request: Set default FTP protoc

#11 Post by diblo_dk » 2010-06-11 02:02

... It's only when a URL is given we need to do this works.
Example explanation.
I tap Forum Recommended games etc, or the line?

Life is not a deal

Diblo Dk

diblo_dk
500 Syntax error
Posts: 12
Joined: 2009-10-02 15:02

Re: FileZilla Client feature request: Set default FTP protoc

#12 Post by diblo_dk » 2010-06-11 18:39

Another thing is know how to handle the direct download.
It could be doing by make a setting on show GUI with a dialog, or to simply show a dialog (open, save, open with Fx etc......). That way the program keep a more lightweight version, out from the users wish.

Image
Example explanation.
I tap Forum Recommended games etc, or the line?

Life is not a deal

Diblo Dk

diblo_dk
500 Syntax error
Posts: 12
Joined: 2009-10-02 15:02

Re: FileZilla Client feature request: Set default FTP protoc

#13 Post by diblo_dk » 2010-06-14 14:10

I found this about (set etc) default programs.

http://msdn.microsoft.com/en-us/library ... st_install -> Set an Application to Check Whether It Is the Default
|
- http://msdn.microsoft.com/en-us/library ... 85%29.aspx
Example explanation.
I tap Forum Recommended games etc, or the line?

Life is not a deal

Diblo Dk

sebz
500 Command not understood
Posts: 3
Joined: 2013-02-22 09:49
First name: Seb
Last name: Camp

Re: FileZilla Client feature request: Set default FTP protoc

#14 Post by sebz » 2013-02-22 10:01

Hi
Those registry tricks are great and it works fine most of the time, I found something that causes troubles though is if there are some weird characters in the password string. For example :
If I click on the ftp link :
ftp://SC07ea4a:im}GF4hr@myftpsite/
then filezila reports error 530 incorrect login. It seems the password string being passed is not correct(maybe escaped or something else, I don't know as the password in the console is crypted with ***). I guess this is due to the character } in the password string.
Another test I have done is try to run in command line like :
"C:\Program Files (x86)\FileZilla FTP Client\filezilla.exe" "ftp://SC07ea4a:im}GF4hr@myftpsite/"
And this command works fine so I am not sure what can cause this. By the way, I am running under Windows 7 x64 edition.
Do you have any idea on how to make this work ?
Thanks a lot for your help !!

User avatar
boco
Contributor
Posts: 26899
Joined: 2006-05-01 03:28
Location: Germany

Re: FileZilla Client feature request: Set default FTP protoc

#15 Post by boco » 2013-02-22 11:08

The browser truncates the link, most probably at the } character. See your post.
Even if not, it will HTML-encode some characters (the weird-looking %XX combinations).
A third possibility is some characters are getting mangled because they aren't interpreted correctly with the UTF-8 character set.
### BEGIN SIGNATURE BLOCK ###
No support requests per PM! You will NOT get any reply!!!
FTP connection problems? Please do yourself a favor and read Network Configuration.
FileZilla connection test: https://filezilla-project.org/conntest.php
### END SIGNATURE BLOCK ###

Post Reply