2

有没有人在 VB.NET 中使用过 BIT?如果是这样,你有代码示例和建议吗?

我正在查看 SharpBits,但我有一个我想使用 BITS 的 VB 项目。是否可以将它与我的 VB.NET 程序一起使用?(.NET 2.0) 我很想尝试将 SharpBits.Base 文件夹中的每个类都转换为 VB.NET,但我想我会问,以防以前有人走这条路。

编辑:好吧,如果你遇到这个问题。您可以做的是在 Sharpbits.Base 文件夹(您从 codeplex 下载)中有一个可以在 Bin 目录中引用的 DLL。您可以将其添加到您的引用中以访问它。将 Konrad 标记为答案,因为他很乐意发帖。

进一步编辑:
我设法让Sharpbits使用一些我在下面粘贴的快速代码,供任何可能偶然发现这个问题的人使用。就像我上面提到的那样,将 DLL 添加到您的项目中。


Dim b As New SharpBits.Base.BitsManager
Dim mynewjob As SharpBits.Base.BitsJob = _ 
b.CreateJob("jobname", SharpBits.Base.JobType.Download)
mynewjob.AddFile("\\server\share\bigfile.zip", "c:\bigfile.zip")
mynewjob.Resume()

您需要编写一些逻辑来检查作业的状态。一旦它达到“已转移”状态,您就可以将其标记为完成。这会将文件从 .bin 写入您列出的文件名。对我有帮助的是安装 Windows 支持工具(您可以从 sup 工具文件夹中的 Windows 2003 Cd/DVD 获取它)并在调试时使用 Bitsadmin.exe 查看作业状态。希望对下一个菜鸟有所帮助。=)

4

3 回答 3

4

为什么不能简单地在 VB 中使用 SharpBits?.NET 的优势恰恰在于,用不同 .NET 语言编写的库可以无缝互操作,因此您可以在 VB 中简单地使用 SharpBits,无论它是用哪种 .NET 兼容语言编写的。

于 2009-04-08T13:57:19.303 回答
1

你可以看看这里:

将 Windows XP 后台智能传输服务 (BITS) 与 Visual Studio .NET 结合使用

我从这里开始编写自己的库来管理 BITS 以跨私有 LAN 传输大视频文件。示例适用于 NET 1.1,但应该不难将其移植到 NET 2.0。

于 2009-04-08T15:25:30.403 回答
1

这是一个新的选择。Microsoft 的 BITS 团队现在有一个关于使用参考 DLL 从 .NET 和 C#调用 BITS以及 GitHub 上的完整示例调用BITS Manager的页面。

我刚刚尝试将它们与 Visual Basic 一起使用;我的代码最终看起来像这样:

    Imports BITS = BITSReference1_5
    Module Module1
        Sub Main()
            Dim mgr = New BITS.BackgroundCopyManager1_5
            Dim jobGuid As BITS.GUID
            Dim job As BITS.IBackgroundCopyJob
            mgr.CreateJob("My simple job", BITS.BG_JOB_TYPE.BG_JOB_TYPE_DOWNLOAD, jobGuid, job)
            job.AddFile("http://www.microsoft.com", "c:\temp\2019\BITS-VB\Downloadfile.html")
            job.Resume()
        End Sub
    End Module
(请注意,我还添加了对我从 BITS 管理器源从 Reference DLL 目录下载的 DLL 的引用)
于 2019-01-09T00:14:55.403 回答