迅雷已开放的部分API+代码范例[迅雷7可用]

迅雷已开放的部分API+代码范例[迅雷7可用] | 动漫驿站

迅雷已开放的部分API+代码范例[迅雷7可用]

基本应用

1.添加新任务

  • 创建讯雷调用对象

    CreateObject(“ThunderAgent.Agent”)
  • 添加下载任务

    ThunderEng.AddTask(“下载地址”, “另存文件名”, “保存目录”,”任务注释”,”引用地址”,”开始模式’, “只从原始地址下载”,”从原始地址下载线程数”)
  • 提交下载任务

    ThunderEng.CommitTasks()
'代码范例,将以下代码保存为.vbs文件,直接运行后会自动添加任务到迅雷
Set thunderAgent = CreateObject("ThunderAgent.Agent")
Call thunderAgent.AddTask("http://dmyz.org/back.tar.gz","back.tar.gz","","","",1,0,5)
Call thunderAgent.CommitTasks()
Set thunderAgent = Nothing

进入工具–配置–高级,把 通过IE右键菜单 “使用迅雷下载”添加任务 这个选项前面的勾去掉,迅雷将会自动开始任务(不需要点确定)。


2010年9月4日更新:在迅雷7下仍然需要点确认。

2.使用讯雷调用对象查询下载任务信息

  • 获取下载文件大小

    sFileSize = ThunderEng.GetTaskInfo(txtURL.Text, “FileSize”)
  • 获取已完成大小

    sDownedSize = ThunderEng.GetTaskInfo(txtURL.Text, “CompletedSize”)
  • 获取文件名

    sFileName = ThunderEng.GetTaskInfo(txtURL.Text, “FileName”)

迅雷平台接口函数定义

  • 获得信息

    BSTR GetInfo(BSTR pInfoName)
  • 获取迅雷或平台相关全部信息

    HRESULT GetInfoStruct(INT pInfo)
  • 加入任务

    HRESULT AddTask

    (BSTR pURL,

    BSTR pFileName = “”,

    BSTR pPath = “”,

    BSTR pComments = “”,

    BSTR pReferURL = “”,

    INT nStartMode = -1,

    INT nOnlyFromOrigin = 0,

    INT nOriginThreadCount = -1);
  • 开始任务

    HRESULT CommitTaskss()

  • 取消任务

    HRESULT CancelTasks()

  • 取消平台中所有由AddTask所加入的下载任务信息

    查询任务信息

    BSTR GetTaskInfo(BSTR pURL,BSTR pInfoName);

  • 查询一个任务的所有信息

    GetTaskInfoStruct(INT pTaskInfo)

    平台信息,定义如下:

    typedef struct _THUNDER_TASKINFO

    {

    CHAR szURL[1024]; // 任务URL,预先填充

    BOOL bTaskExists; // 任务是否存在,TRUE为存在

    CHAR szPath[256]; // 下载的本地保存路径

    CHAR szFileName[256]; // 本地文件名

    ULONGLONG nFileSize; // 文件大小

    ULONGLONG nCompletedSize; // 已完成的大小

    CHAR szPercent[16]; // 完成的百分数,用 “56.8”的格式

    CHAR szStatus[16]; // 当前状态,定义同GetTaskInfo函数

    } THUNDER_TASKINFO;

原文地址:https://www.cnblogs.com/lexus/p/2379142.html