C# 调用迅雷 7 迅雷下载开放引擎
最近有个项目需要用winform调用迅雷 下载 。上网百度后发现迅雷自带的com 组件 从迅雷5之后就废掉了,除了能添加任务,其余功能全不能用。
using System.Linq;
using System.Text;
using System.Runtime.InteropServices;
namespace WindowsFormsApplication1
{
class thunder
{
//迅雷下载开放引擎
[DllImport("XLDownload.dll", EntryPoint = "XLInitDownloadEngine")]
public static extern bool XLInitDownloadEngine();
[DllImport("XLDownload.dll", EntryPoint = "XLUninitDownloadEngine")]
public static extern bool XLUninitDownloadEngine();
[DllImport("XLDownload.dll", EntryPoint = "XLURLDownloadToFile", CharSet = CharSet.Auto)]
public static extern int XLURLDownloadToFile(string pszFileName,string pszUrl, string pszRefUrl, ref Int32 lTaskId);
[DllImport("XLDownload.dll", EntryPoint = "XLQueryTaskInfo", CharSet = CharSet.Auto)]
public static extern int XLQueryTaskInfo(int lTaskId, ref int plStatus, ref UInt64 pullFileSize, ref UInt64 pullRecvSize);
[DllImport("XLDownload.dll", EntryPoint = "XLGetErrorMsg",CharSet = CharSet.Auto)]
public static extern int XLGetErrorMsg(int dwErrorId, string pszBuffer,ref int dwSize);
[DllImport("XLDownload.dll", EntryPoint = "XLContinueTask", CharSet = CharSet.Auto)]
public static extern int XLContinueTask(int lTaskId);
[DllImport("XLDownload.dll", EntryPoint = "XLContinueTaskFromTdFile", CharSet = CharSet.Auto)]
public static extern int XLContinueTaskFromTdFile(string pszTdFileFullPath, ref int lTaskId);
[DllImport("XLDownload.dll", EntryPoint = "XLPauseTask", CharSet = CharSet.Auto)]
public static extern int XLPauseTask(int lTaskId, ref int lNewTaskId);
[DllImport("XLDownload.dll", EntryPoint = "XLStopTask", CharSet = CharSet.Auto)]
public static extern int XLStopTask(int lTaskId);
public const int TaskStatus_Connect = 0; // 已经建立连接
public const int TaskStatus_Download = 2; // 开始下载
public const int TaskStatus_Pause = 10; // 暂停
public const int TaskStatus_Success = 11; // 成功下载
public const int TaskStatus_Fail = 12; // 下载失败
public const int XL_SUCCESS = 0;
public const int XL_ERROR_FAIL = 0x10000000;
// 尚未进行初始化
public const int XL_ERROR_UNINITAILIZE = XL_ERROR_FAIL + 1;
// 不支持的协议,目前只支持HTTP
public const int XL_ERROR_UNSPORTED_PROTOCOL = XL_ERROR_FAIL + 2;
// 初始化托盘图标失败
public const int XL_ERROR_INIT_TASK_TRAY_ICON_FAIL = XL_ERROR_FAIL + 3;
// 添加托盘图标失败
public const int XL_ERROR_ADD_TASK_TRAY_ICON_FAIL = XL_ERROR_FAIL + 4;
// 指针为空
public const int XL_ERROR_POINTER_IS_NULL = XL_ERROR_FAIL + 5;
// 字符串是空串
public const int XL_ERROR_STRING_IS_EMPTY = XL_ERROR_FAIL + 6;
// 传入的路径没有包含文件名
public const int XL_ERROR_PATH_DONT_INCLUDE_FILENAME = XL_ERROR_FAIL + 7;
// 创建目录失败
public const int XL_ERROR_CREATE_DIRECTORY_FAIL = XL_ERROR_FAIL + 8;
// 内存不足
public const int XL_ERROR_MEMORY_ISNT_ENOUGH = XL_ERROR_FAIL + 9;
// 参数不合法
public const int XL_ERROR_INVALID_ARG = XL_ERROR_FAIL + 10;
// 任务不存在
public const int XL_ERROR_TASK_DONT_EXIST = XL_ERROR_FAIL + 11;
// 文件名不合法
public const int XL_ERROR_FILE_NAME_INVALID = XL_ERROR_FAIL + 12;
// 没有实现
public const int XL_ERROR_NOTIMPL = XL_ERROR_FAIL + 13;
// 已经创建的任务数达到最大任务数,无法继续创建任务
public const int XL_ERROR_TASKNUM_EXCEED_MAXNUM = XL_ERROR_FAIL + 14;
// 任务类型未知
public const int XL_ERROR_INVALID_TASK_TYPE = XL_ERROR_FAIL + 15;
// 文件已经存在
public const int XL_ERROR_FILE_ALREADY_EXIST = XL_ERROR_FAIL + 16;
// 文件不存在
public const int XL_ERROR_FILE_DONT_EXIST = XL_ERROR_FAIL + 17;
// 读取cfg文件失败
public const int XL_ERROR_READ_CFG_FILE_FAIL = XL_ERROR_FAIL + 18;
// 写入cfg文件失败
public const int XL_ERROR_WRITE_CFG_FILE_FAIL = XL_ERROR_FAIL + 19;
// 无法继续任务,可能是不支持断点续传,也有可能是任务已经失败
// 通过查询任务状态,确定错误原因。
public const int XL_ERROR_CANNOT_CONTINUE_TASK = XL_ERROR_FAIL + 20;
// 无法暂停任务,可能是不支持断点续传,也有可能是任务已经失败
// 通过查询任务状态,确定错误原因。
public const int XL_ERROR_CANNOT_PAUSE_TASK = XL_ERROR_FAIL + 21;
// 缓冲区太小
public const int XL_ERROR_BUFFER_TOO_SMALL = XL_ERROR_FAIL + 22;
// 调用XLInitDownloadEngine的线程,在调用XLUninitDownloadEngine之前已经结束。
// 初始化下载引擎线程,在调用XLUninitDownloadEngine之前,必须保持执行状态。
public const int XL_ERROR_INIT_THREAD_EXIT_TOO_EARLY = XL_ERROR_FAIL + 23;
// TP崩溃
public const int XL_ERROR_TP_CRASH = XL_ERROR_FAIL + 24;
// 任务不合法,调用XLContinueTaskFromTdFile继续任务。内部任务切换失败时,会产生这个错误。
public const int XL_ERROR_TASK_INVALID = XL_ERROR_FAIL + 25;
}
}
C# 调用迅雷 7 迅雷下载开放引擎相关推荐
- 迅雷可以下载的文件是forum.php,调用迅雷下载开放引擎下载文件
迅雷下载开放引擎 迅雷下载开放引擎是迅雷开放下载技术的重要产品,依托迅雷强大的下载加速技术和将近4亿互联网用户覆盖,开放下载相关调用接口,为第三方客户端软件提供免费.高速.省带宽的下载加速服务. 官方 ...
- 十招让迅雷安全高速下载(转)
2008年的互联网安全问题仍不容乐观,主要表现是病毒泛滥.木马横行.蠕虫蔓延.插件滋长.内容低下.文不对题.鱼目混珠,把整个互联网弄得乌烟瘴气! 更为可气的是,这些黑道技术也会"与时俱进&q ...
- php下载链接 迅雷下载,php实现把url转换迅雷thunder资源下载地址的方法
php实现把url转换迅雷thunder资源下载地址的方法 本文实例讲述了php实现把url转换迅雷thunder资源下载地址的方法.分享给大家供大家参考.具体方法分析如下: 如果你知道迅雷地址的生成 ...
- Python3.x+迅雷x 自动下载高分电影,嘿嘿!你懂的
话说以前玩Python的时候爬过挺多网站的,都是在公司干的(Python不属于公司的业务范围,纯属自己折腾着好玩), 我那个负责运维的同事天天跑过来说:你又在爬啥啊,你去看看新闻,某某爬东西又被抓了! ...
- ios uiview 如何刷新_2020最新迅雷苹果版如何下载?
自iOS系统更新以后就用不了迅雷企业版,小伙伴们不要着急,iOS版迅雷失效是经常的事.现在为大家提供迅雷beta,迅雷内测,双版本,永久不失效!!! https://mp.weixin.qq.com/ ...
- 迅雷游戏盒子下载|迅雷游戏盒子下载
雷游戏盒子正是这样一位能够解决你以上全部烦恼的游戏助手,轻松多开游戏.便捷管理小号.一键修复故障,为你游戏提供全程辅助!而且,永久免费! 迅雷游戏盒子下载链接 迅雷游戏盒子是迅雷推出的一款游戏盒子,内 ...
- 精约而不简单 极速迅雷只为下载而生
信任许多雷友吐槽过迅雷7客户端的广告影响体会的疑问.用户想免费又想商品无广告体会好是能够了解的,但正如鱼与熊掌不能兼得,广告是软件收入的来历,事实上如QQ等声称完美体会的互联网商品也不能免俗.但近来迅 ...
- 迅雷极速版下载被迅雷屏蔽资源
迅雷极速版下载被迅雷屏蔽资源 标签(空格分隔): 随笔 由于有些资源被迅雷屏蔽,下载时会提示"应版权方要求"之类的错误提示,可以通过修改hosts来绕过屏蔽: 127.0.0.1 ...
- php 生成迅雷地址,php实现把url转换迅雷thunder资源下载地址的方法,_PHP教程
php实现把url转换迅雷thunder资源下载地址的方法, 本文实例讲述了php实现把url转换迅雷thunder资源下载地址的方法.分享给大家供大家参考.具体方法分析如下: 如果你知道迅雷地址的生 ...
最新文章
- 数组运用_1-19 编程练习
- 【原创】数据库中时间字段的值读取到DataSet中后,毫秒部分丢失。
- Python_管理项目
- vi/vim多行注释和取消注释
- c# 线向量生成多边形_python脚本实现abaqus前处理2D多晶粒建模(附完整源码)-Voronoi多边形的生成...
- ssh(Spring+Spring mvc+hibernate)——EmpDaoImpl.java
- 动态规划求解装箱问题(洛谷P1049题题解,Java语言描述)
- NumPy 1.19.3 发布,Python 科学计算包
- java抽象类的说明
- clickhouse安装使用文档
- 【问题】ajax两种传递id值方式的区别
- 计算机主机中的硬件组成部分,电脑的硬件组成部分及其作用各是什么
- 程序上线【起飞检查清单】-让事故和教训转变为实用的清单
- iOS 9适配技巧(更新版)
- 数字图像处理第五次作业——频域滤波器
- css:图片显示太大怎么办?
- 玩银河麒麟操作系统终端,忆国外unix主机上偶遇隔壁同胞
- Matlab高光谱遥感数据处理
- Centos7.5使用本地iso文件创建本地源,实现安装源中已经打包存在的软件
- 用c语言用星号生日快乐,用C语言写个代码,利用空格和符号拼写出生日快乐之类的...
热门文章
- Window平台的eclipse连接linux的hadoop集群
- 精选经典情歌荟萃26首
- Sqlserver取整
- 解决方案之Android 国际化资源完美兼容6.0,7.0,8.0
- AVFormatContext、AV_read_frame、av_seek_frame
- spotify能免费下歌吗_什么是Spotify Duo,它适合您吗?
- 音频文件的结构与规范——RIFF和WAVE音频文件格式
- MySQL为什么会抖一下
- 利用ChitGPT AI大模型生成费马和笛卡尔简介
- SQL中的笛卡尔你真的懂吗?