一个强大的文件多线程下载器,支持 Windows 10/11
、Linux 操作系统(以后会支持)。
我们有一个梦想,就是开发出跨平台的高速、多线程下载器,可以替代IDM和迅雷的那种,而且免费、开源、无广告,还有精美的界面。经过深思熟虑,我们决定用Qt6作为主要程序框架,libcurl用于下载模块。耗时是……好吧,叫不断维护。
- 可以多线程高速下载,还不能消耗系统很多资源。这是最主要的。
- 可以接管浏览器的下载任务,这就要用到浏览器插件了。
- 方便管理下载内容,包括下载完的、正在下载的、下载失败的。
- 挖掘浏览器中正在浏览的资源,视频啊、音乐啊……
- 可以解析m3u8文件,并且可以根据用户要求下载、转换为特定视频格式,比如mp4。
- 轻巧升级。
- 能够断点续传。
- 能够支持Linux操作系统。
- 能够使用浏览器插件提供的Cookie来下载一些必须登录才能下载的文件
- 使用浏览器插件下载需要Referer的文件
- 可以自己调下载线程个数。
- 实现快速更新,这个比较难。
- 还有很多,希望大家在issue里提出。
欢迎大家的Pr,联系邮箱:ProgramCX@outlook.com;QQ:286024799。
1.0.0.0版本已经完成!我们计划进行重构。
1.主模块
-
主要功能:主界面、下载管理、设置、捐赠等
主程序界面:
- 左侧为图片式的选项卡,包含“主界面”、“下载管理”、“设置”、“捐赠”。
- **为StackedWidget,包含了“主界面”、“下载管理”、“设置”、“捐赠”的页面。
- 右上角有“切换主题”、“菜单”、“最小化”、“关闭”按钮。
- “主界面”:显示接管下载天数和版本号,下方还有一些功能按钮。
- “下载管理”:可以暂停、取消正在下载的文件、查看下载中的文件的下载进度,并且能打开已经下载完成的文件。
- “设置”:对软件进行个性化的设置。
- 捐赠:显示捐赠二维码。
-
编写语言/框架:C++/Qt 6.7。
下载模块
- 主要功能:实现多线程下载、与主程序通过D-Bus协议通信传输下载进度。
- 编写语言/框架:C++/Qt 6.7、 C++ libcurl 库。
升级模块
- 主要功能:对程序、组件进行升级。
- 编写语言/框架:易语言 或 .NET for C++。
浏览器插件
- 主要功能:当浏览器有下载任务时调用下载程序、发现网页中有可下载的媒体文件时显示“下载”悬浮窗。
- 编写语言/框架:HTML、JavaScript和CSS 。
安装和卸载程序
- 主要功能:安装和卸载SecondDownloader。
- 编写语言/框架:C#/WPF(.Net Framework 4.72) 。
- libcurl.dll需要自己先编译,放入temp/bin/文件夹内。
- 只能用msvc系列的编译器编译,minGW编译器的debug模式下无法编译。
- 编译失败时,可以试试清除编译的文件。