1.首先需要添加注册表信息,这个可以在做安装包的时候设置,在安装项目上右击--视图--注册表 具体设置见下图:
2.需要用vb6.0写一个activex dll,代码很简单
它主要是一个中转的作用,用来启动.net写的下载程序,并把下载的url路径传递过去
3.需要写个geturl.htm文件,这个其实是个javascript,调用activex dll这个com控件,代码可以用迅雷的geturl.htm文件,把里面的迅雷的com名称改成你的activex dll这个com控件名称就可以了
做本软件主要心得:
1.要想设注册表项键的默认值,那么需要把这个键的名称改成空,就自动变成默认值,在使用代码获取或设置的时候键默认值时使用
Key3.SetValue("",My.Application.Info.DirectoryPath & "/geturl.htm") '设置某个键的默认值,[TARGETDIR]表示的是当前程序
2.C#中0x代表16进制数,vb.net中用&H
3.要想使用Me.Bgw.CancelAsync() 方法需要将backgroundworker的WorkerSupportsCancellation设为true
4.委托的使用方法
声明:Delegate Sub DownloadCompleteSafe(ByVal cancelled As Boolean)
实体函数
Public Sub DownloadComplete(ByVal cancelled As Boolean)
End sub
Dim cancelDelegate As New DownloadCompleteSafe(AddressOf DownloadComplete)
Me.Invoke(cancelDelegate,True)
5.计时
Dim speedtimer As New Stopwatch
speedtimer.Start()
.....
speedtimer.Stop()
耗时
speedtimer.ElapsedMilliseconds
重置
speedtimer.Reset()