New beta plugin: WebDAV (WebFolders)
Moderators: Hacker, petermad, Stefan2, white
- ghisler(Author)
- Site Admin
- Posts: 50390
- Joined: 2003-02-04, 09:46 UTC
- Location: Switzerland
- Contact:
New beta plugin: WebDAV (WebFolders)
Hi all!
I have written a new file system plugin for Total Commander: WebDAV.
What is WebDAV? It is sometimes also called web folders, and is an enhanced HTTP protocol. Normally HTTP supports only commands like GET (downloads), PUT (uploads) and POST (post form data). WebDAV adds some more commands, like PROPFIND to get the directory contents.
The plugin is open source because it uses some (non-gpl) open source code. Please read the ReadMe file for details.
You can download the plugin here
The source code is available here
The plugin has been tested with the following WebDAV servers:
- Apache with mod_dav running on Linux and Windows
- Microsoft Internet Information server (IIS)
- Tamino WebDAV server (Software AG)
- Xythos WebDAV server, you can get a free test account on http://www.sharemation.com
- Web.de webdav services (no feedback yet)
- NEW: QR-Code scanner to connect to our WebDAV server on Android and Windows Phone!
Requirements: The plugin uses the WinInet library, so it requires an installed Microsoft Internet Explorer 4.01 or newer. The plugin supports both HTTP and HTTPS (through WinInet).
To the maintainers of clubtotal.tk and totalcmd.net: Please do NOT put this plugin on your sites yet! It is in an early beta stage.
Feedback is welcome!
Christian Ghisler
I have written a new file system plugin for Total Commander: WebDAV.
What is WebDAV? It is sometimes also called web folders, and is an enhanced HTTP protocol. Normally HTTP supports only commands like GET (downloads), PUT (uploads) and POST (post form data). WebDAV adds some more commands, like PROPFIND to get the directory contents.
The plugin is open source because it uses some (non-gpl) open source code. Please read the ReadMe file for details.
You can download the plugin here
The source code is available here
The plugin has been tested with the following WebDAV servers:
- Apache with mod_dav running on Linux and Windows
- Microsoft Internet Information server (IIS)
- Tamino WebDAV server (Software AG)
- Xythos WebDAV server, you can get a free test account on http://www.sharemation.com
- Web.de webdav services (no feedback yet)
- NEW: QR-Code scanner to connect to our WebDAV server on Android and Windows Phone!
Requirements: The plugin uses the WinInet library, so it requires an installed Microsoft Internet Explorer 4.01 or newer. The plugin supports both HTTP and HTTPS (through WinInet).
To the maintainers of clubtotal.tk and totalcmd.net: Please do NOT put this plugin on your sites yet! It is in an early beta stage.
Feedback is welcome!
Christian Ghisler
Last edited by ghisler(Author) on 2015-02-19, 10:43 UTC, edited 5 times in total.
Author of Total Commander
https://www.ghisler.com
https://www.ghisler.com
Works with 1&1 in Germany
Works fine with 1&1 WebDAV in Germany,
after I found that I should not have the https:// prefix in my server name.

after I found that I should not have the https:// prefix in my server name.

2ghisler(Author)
My ISP 1&1 introduced a new service on April 1st. The first thought came to my mind was "Oh no a great service (extra 1000MB for free) but this useless webinterface. I will never use it until someone writes a Total Commander plugin...
Now - after a few days - I've got a great file system plugin for Total Commander.
Thank you very much for this great plugin.
Suggestions:
1. Maybe some well known WEBDAV provider configurations such as "1 und 1" could be distributed with the plugin.
2. Don't forget about the new "Server" plugin type.
Just one questions The progressbar shows a progress during entering folders. Normally the progress stops at about 4-8% and then enters the dir immediately. Is it by design?
2Horst.Epp
My settings:
Connect to: mediacenter.1und1.de/
Secure server (via SSL) checked or not both works fine. Any idea why?
URLs in UTF-8: Not Checked
Use 3-step upload: Not checked
"1 und 1" seems to run Apache
My ISP 1&1 introduced a new service on April 1st. The first thought came to my mind was "Oh no a great service (extra 1000MB for free) but this useless webinterface. I will never use it until someone writes a Total Commander plugin...
Now - after a few days - I've got a great file system plugin for Total Commander.
Thank you very much for this great plugin.

Suggestions:
1. Maybe some well known WEBDAV provider configurations such as "1 und 1" could be distributed with the plugin.
2. Don't forget about the new "Server" plugin type.

Just one questions The progressbar shows a progress during entering folders. Normally the progress stops at about 4-8% and then enters the dir immediately. Is it by design?
2Horst.Epp
Could you please post your complete settings.Works fine with 1&1 WebDAV in Germany,
after I found that I should not have the https:// prefix in my server name.
My settings:
Connect to: mediacenter.1und1.de/
Secure server (via SSL) checked or not both works fine. Any idea why?
URLs in UTF-8: Not Checked
Use 3-step upload: Not checked
"1 und 1" seems to run Apache

You should not enter https:// in front of your server namenorfie wrote:If use https:// in server-path then I get an access violation:Feedback is welcome!Log windows showsCode: Select all
Access violation at address 01BF1DDD. Read of address 016F5BCF
W98SE, TCmd V6.02Code: Select all
CONNECT \xxx Get dir: //xxx.xxx.net
What is the benefit of this plugin over normal windows webfolders?[/b]
Use just the name.
- ghisler(Author)
- Site Admin
- Posts: 50390
- Joined: 2003-02-04, 09:46 UTC
- Location: Switzerland
- Contact:
Good idea! However, when a provider changes the server (or even server version), it may stop working.Maybe some well known WEBDAV provider configurations such as "1 und 1" could be distributed with the plugin.
Indeed the https wasn't supported, http was. I have modified the plugin to also accept https. However, the 'secure' option still needs to be checked.after I found that I should not have the https:// prefix in my server name.
Hmm, this works fine here - on which step does the upload hang? Please use the detailed log option.I've noticed that the Cancel button does not work during uploads
Unfortunately plugins don't currently support background operation - especially because most plugins aren't thread-safe. I may add this in the future via a separate set of functions.can you please add a background button,
as large DSL uploads can take a long time.
Seems to be a Win98 error - I don't get one on Win2k. Please re-download the plugin, the new version should work with https prefix too now.If use https:// in server-path then I get an access violation:
Author of Total Commander
https://www.ghisler.com
https://www.ghisler.com
The upload doesn't hang, but the Cancel button doesn't work to abort the upload during the Last upload step.ghisler(Author) wrote:Hmm, this works fine here - on which step does the upload hang? Please use the detailed log option.I've noticed that the Cancel button does not work during uploads
Here is the detailed log:
Best regards,CONNECT \1und1
Get dir: \
PROPFIND / HTTP/1.1
Depth: 1
Content-Type: text/xml; charset="utf-8"
User-Agent: ezdavplugin
Host: mediacenter.1und1.de
Content-Length: 0
Connection: Keep-Alive
Cache-Control: no-cache
******Received headers
HTTP/1.1 207 Multi-Status
Date: Thu, 15 Apr 2004 17:21:15 GMT
Server: Apache
MS-Author-Via: DAV
Connection: close
Transfer-Encoding: chunked
Content-Type: text/xml; charset="utf-8"
207 Multi-Status
Get dir: \Backup
PROPFIND /Backup/ HTTP/1.1
Depth: 1
Content-Type: text/xml; charset="utf-8"
User-Agent: ezdavplugin
Host: mediacenter.1und1.de
Content-Length: 0
Connection: Keep-Alive
Cache-Control: no-cache
******Received headers
HTTP/1.1 207 Multi-Status
Date: Thu, 15 Apr 2004 17:21:17 GMT
Server: Apache
MS-Author-Via: DAV
Connection: close
Transfer-Encoding: chunked
Content-Type: text/xml; charset="utf-8"
207 Multi-Status
Get dir: \Backup\
PROPFIND /Backup/ HTTP/1.1
Depth: 1
Content-Type: text/xml; charset="utf-8"
User-Agent: ezdavplugin
Host: mediacenter.1und1.de
Content-Length: 0
Connection: Keep-Alive
Cache-Control: no-cache
******Received headers
HTTP/1.1 207 Multi-Status
Date: Thu, 15 Apr 2004 17:21:38 GMT
Server: Apache
MS-Author-Via: DAV
Connection: close
Transfer-Encoding: chunked
Content-Type: text/xml; charset="utf-8"
207 Multi-Status
File send: \Backup\test.dat
First upload step: Send 1 byte file for authentication
PUT /Backup/test.dat HTTP/1.1
Content-Type: application/octet-stream
User-Agent: ezdavplugin
Host: mediacenter.1und1.de
Content-Length: 1
Connection: Keep-Alive
Cache-Control: no-cache
******Received headers
HTTP/1.1 201 Created
Date: Thu, 15 Apr 2004 17:21:38 GMT
Server: Apache
MS-Author-Via: DAV
Location: http://xxx/Backup/test.dat
Connection: close
Transfer-Encoding: chunked
Content-Type: text/html
201 Created
Last upload step: Send actual file
Get dir: \Backup
PROPFIND /Backup/ HTTP/1.1
Depth: 1
Content-Type: text/xml; charset="utf-8"
User-Agent: ezdavplugin
Host: mediacenter.1und1.de
Content-Length: 0
Connection: Keep-Alive
Cache-Control: no-cache
******Received headers
HTTP/1.1 207 Multi-Status
Date: Thu, 15 Apr 2004 17:26:34 GMT
Server: Apache
MS-Author-Via: DAV
Connection: close
Transfer-Encoding: chunked
Content-Type: text/xml; charset="utf-8"
207 Multi-Status
~ Florian
- ghisler(Author)
- Site Admin
- Posts: 50390
- Joined: 2003-02-04, 09:46 UTC
- Location: Switzerland
- Contact:
That's strange, it works fine here (as long as TC shows advancing progress in percent). But according to your log, the last upload step doesn't even start!The upload doesn't hang, but the Cancel button doesn't work to abort the upload during the Last upload step.
Last upload step: Send actual file
Get dir: \Backup
See, directly after the line "Last upload step" comes the download of the dir list...
It should look like this:
So my question:Last upload step: Send actual file
PUT http://dfs.gmx.de/Meine%20Bilder/test.bmp
Content-Type: application/octet-stream
User-Agent: ezdavplugin
Host: dfs.gmx.de
Proxy-Connection: Keep-Alive
Pragma: no-cache
Content-Length: 42534
******Received headers
HTTP/1.0 204 No Content
Date: Wed, 14 Apr 2004 09:47:00 GMT
Server: Apache
MS-Author-Via: DAV
Content-Type: text/plain
X-Cache: MISS from aragorn.swissonline.ch
Proxy-Connection: keep-alive
204 No Content
Get dir: \Meine Bilder
- were you able to upload any files at all?
- did you see a progress bar?
- which version of Windows do you use?
- which version of Internet Explorer is installed?
Thanks for your help!
Author of Total Commander
https://www.ghisler.com
https://www.ghisler.com
This only happens, when I try to press the Cancel button from the progress dialog.ghisler(Author) wrote:That's strange, it works fine here (as long as TC shows advancing progress in percent). But according to your log, the last upload step doesn't even start!The upload doesn't hang, but the Cancel button doesn't work to abort the upload during the Last upload step.
Log without pressing cancel:
Same log with pressing cancel:Last upload step: Send actual file
PUT /Backup/test.dat HTTP/1.1
Content-Type: application/octet-stream
User-Agent: ezdavplugin
Host: mediacenter.1und1.de
Connection: Keep-Alive
Cache-Control: no-cache
Content-Length: 4198185
******Received headers
HTTP/1.1 204 No Content
Date: Fri, 16 Apr 2004 08:37:03 GMT
Server: Apache
MS-Author-Via: DAV
Connection: close
Content-Type: text/plain
204 No Content
Get dir: \Backup
PROPFIND /Backup/ HTTP/1.1
Depth: 1
Content-Type: text/xml; charset="utf-8"
User-Agent: ezdavplugin
Host: mediacenter.1und1.de
Content-Length: 0
Connection: Keep-Alive
Cache-Control: no-cache
******Received headers
HTTP/1.1 207 Multi-Status
Date: Fri, 16 Apr 2004 08:41:53 GMT
Server: Apache
MS-Author-Via: DAV
Connection: close
Transfer-Encoding: chunked
Content-Type: text/xml; charset="utf-8"
207 Multi-Status
Last upload step: Send actual file
Get dir: \Backup
PROPFIND /Backup/ HTTP/1.1
Depth: 1
Content-Type: text/xml; charset="utf-8"
User-Agent: ezdavplugin
Host: mediacenter.1und1.de
Content-Length: 0
Connection: Keep-Alive
Cache-Control: no-cache
******Received headers
HTTP/1.1 207 Multi-Status
Date: Fri, 16 Apr 2004 08:48:24 GMT
Server: Apache
MS-Author-Via: DAV
Connection: close
Transfer-Encoding: chunked
Content-Type: text/xml; charset="utf-8"
207 Multi-Status
The file is uploaded in both cases.- were you able to upload any files at all?
Yes, it's a little bit odd, that the progress bar goes to 8-9% in the first upload step and then switches back to 0% for the second upload step.- did you see a progress bar?
I've tested the plugin with Windows XP Professional SP1- which version of Windows do you use?
6.0.2800.1106.xpsp2.030422-1633- which version of Internet Explorer is installed?
Best regards,
~ Florian
- ghisler(Author)
- Site Admin
- Posts: 50390
- Joined: 2003-02-04, 09:46 UTC
- Location: Switzerland
- Contact:
Thanks, I will test it on XP too. The only way to abort an upload is to close the upload handle - this may not work correctly in your case.
1. A real progress for the data transferred
2. For slow servers, the plugin starts to show a "processing" bar, which starts after 2 seconds with no response, and increments by 1% every 500 ms. This is just to show that something is still going on, and TC isn't crashed.
The plugin shows two type of progress bars:Yes, it's a little bit odd, that the progress bar goes to 8-9% in the first upload step and then switches back to 0% for the second upload step.
1. A real progress for the data transferred
2. For slow servers, the plugin starts to show a "processing" bar, which starts after 2 seconds with no response, and increments by 1% every 500 ms. This is just to show that something is still going on, and TC isn't crashed.
Author of Total Commander
https://www.ghisler.com
https://www.ghisler.com
2ghisler(Author)
I am able to delete remote files, but I cannot overwrite files. Any ideas? Is it a rights problem or a problem of the plugin?
The current inability to overwrite files makes synchronizing a two step operation. Delete the remote files first and then transfer the local files to the server.
I am able to delete remote files, but I cannot overwrite files. Any ideas? Is it a rights problem or a problem of the plugin?
The current inability to overwrite files makes synchronizing a two step operation. Delete the remote files first and then transfer the local files to the server.