I am aware that "Script Exchange" is not the right category for this kind of announcement
since FileUploader can be used without XYplorer. But here we go nevertheless.
I invite you to beta test my little program. It uses an underlying FTP client framework to
transfer files. The program allows to upload a single file to a FTP file server.
Credits go to Thomas Oswald for his FTP client class and to George Anescu for his
article on AES encryption.
http://www.codeproject.com/KB/IP/ftpclientclass.aspx
http://www.codeproject.com/KB/security/aes.aspx
I wrote this program to satisfy my personal backup needs. I use it also to upload my webpages and to keep my website current.
This forum is the sole one who knows about my project.
The internals:
----------------------------
The program is written in C++ on the Win32 platform.
It supports Unicode UTF16 LE for the client side and UTF8 support for the server side.
All logon infromation can be stored in FileUploader.ini. If you decide to do so the Logon
credentials will be encrypted using hexified AES 128Bit Block Cipher. The key for decryption
depends on your hardware. So if you change your hard drive or Ethernet card the key changes
too and your credentials cannot be decrypted by the program anymore.
Almost all transfer commands and server responses are logged in FileUploader.log except
for logon credentials due to obvious security reasons.
If all logon info is passed to the program via command line then the contents of the FileUploader.ini
are ignored.
The FTP upload uses active mode as default and switches to passive mode in case the active mode failed.
If an identical file already exists on the server a time stamp gets appended to the file prior to starting the file upload.
Usage:
----------------------------
- You can use the uploader from a parent application by passing command line parameters to it.
For example I use SyncBack as my main backup tool and call the uploader as post action. I just pass the complete name
of the file to be uploaded as parameter to the uploader. If the uploader finds the FileUploader.ini it tries to read its logon
info and will proceed silently.
The complete command line syntax is as follows:
FileUploader.exe "%COMPLETE FILEPATH%" "%COMPLETE UPLOADPATH%" %HOSTNAME% %PORT% %USERNAME% %PASSWORD%
Please note: Arguments must solely consist of ANSI characters. Unicode characters make trouble. - You can use the uploader directly. This will open the Logon dialog and after that the File Open dialog
allows you to choose a file for FTP transfer. - You can use it from the shell context menu. After executing RegisterFileUploader.exe the shell
gets a new entry named "Upload file". To unregister simply run the exe again.
Please note, for this to work you need admin rights on your PC. - And of course you can integrate it to XYplorer in many flavours.
(For example I made a catalog entry. I select first the file to be uploaded and then I click on the catalog item.)
----------------------------
I tested the program on Vista 64-bit and Windows XP 32-bit. It should work on Windows 2000 too.
Freeware and Open source:
----------------------------
The uploader is of course free of charge and I will likely release the source code under The Microsoft Public License sometime later after the program
has become stable and without major bugs.
Download and Installation:
----------------------------
Download the zip file from below.
Simply unpack the zip file and copy the files into a folder to your liking.
Checksums for the zip file:
MD5...: 7466a055aa55de114570609fb76e3101
SHA1..: 2e40bf1b8d4dc06d9be57155291974d58d595666
SHA256: 931bebc1242a7b6422b24956a1f0c2bc4d42376f9e05ac1c35dcf1241a167385
Happy testing!
Frank
XYplorer Beta Club