Skip to content

mbn-code/windows-socket-sender-ftp

Repository files navigation

Windows Socket Sender FTP

Version License Build Status Issues

A modern, easy-to-use FTP client for Windows that allows you to transfer files quickly and reliably.

Watch Demo Video

Table of Contents

Overview

This application provides a straightforward way to transfer files using the FTP protocol with a clean command-line interface. Built with C++, it offers robust file transfer capabilities while maintaining simplicity in usage.

Features

  • Simple command-line interface
  • Secure file uploads and downloads
  • Password-protected connections
  • Progress tracking for file transfers
  • Error handling with clear messages
  • Support for passive FTP mode
  • Compatible with standard FTP servers

Getting Started

Prerequisites

Installation

  1. Clone the Repository
    git clone https://github.com/mbn-code/windows-socket-sender-ftp.git
  2. Navigate to the Project Directory
    cd Windows-Socket-Sender-FTP
  3. Build the Application
    • Open the solution file in Visual Studio.
    • Build the solution in Release mode.
  4. Run the Executable
    • Navigate to the Release folder.
    • Run the executable from the command line:
      WindowsSocketSenderFTP.exe

Basic Usage

  1. Open the Application
    WindowsSocketSenderFTP.exe
  2. Enter Your FTP Server Details
    • Server Address
    • Username
    • Password
  3. Select Your Operation
    • Type upload or download when prompted.
  4. Choose Your File(s)
    • TODO: Provide the path to the file(s) you wish to transfer. ATM: It's hardcoded.
  5. Monitor the Transfer Progress
    • Progress will be displayed in the command line interface.

Example Commands

  • Upload a File to the Server
    upload
  • Download a File from the Server
    download
  • Delete Saved Server Credentials
    delete
  • Connect to a New Server with New Credentials
    connect
  • Exit the Program
    exit

Error Handling

The application provides clear error messages if something goes wrong:

  • Connection Issues
    • Unable to reach the server.
  • Authentication Failures
    • Incorrect username or password.
  • File Transfer Problems
    • Issues during upload or download.
  • Server Response Errors
    • Unexpected responses from the FTP server.

Security Notes

  • All passwords are handled securely.
  • Supports standard FTP security measures.
  • Implements proper connection encryption when available.

Contributing

Contributions are welcome! Please see CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests.

License

This project is licensed under the MIT License - see the LICENSE file for details.

FAQ

Q: Does this application support SFTP?

A: Currently, only standard FTP is supported. SFTP support is planned for a future release.

Q: Can I transfer multiple files at once?

A: Yes, you can specify multiple files or directories to transfer.

Q: How do I enable passive mode?

A: The application uses passive mode by default. No additional configuration is needed.

Support

For support, please open an issue

Acknowledgments

Contact

Created by @mbn-code - feel free to contact me!