当前位置: 首页 > 图文教程 > 开发语言 > VB > 利用VB驱动pcAnyWhere进行自动文件传输

VB
串口通讯及其在VB平台下的实现
VB中用API实现文件拖放
VB表格控件总览与例程分析
在VB中用DAO实现数据库编程
VB6将XML数据传入TreeView控件
VB和VB.NET中的XML操作
用VB.NET实现你的游戏梦想
用FileStreams将DTD插入XML中
Visual Basic.NET编程的设计思考
用VB设计控制上网时间程序
VB.NET实现Windows进程管理器
VB.NET启动并监测外部程序
VB6.0数据库访问技术与例程解析
VB.NET开发扫描客户端服务工具
VB制作一个通信卡片ActiveX控件
用VB6.0设计一个打字练习软件
消息队列在VB.NET数据库开发中的应用
用VB6.0快速实现图象加柔效果
VB6.0设计真正实用的TreeView控件
优化之路:精简VB中的分段应用程序(上)

利用VB驱动pcAnyWhere进行自动文件传输


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-29   浏览: 302 ::
收藏到网摘: n/a

  在OLE白皮书上,将OLE驱动写得十分明白,我只要将我的连接代码帖上来,应该十分明白。

  1、 检查MODEM是否在使用,由于PCAnyWhere启动后不能再由程序控制,我们必须检查MODEM是否是空闲才能确保拔号可以顺利外拔。检查MODEM空闲可能通过打开MODEM所在的串口是否成功来判断。

  2、 生成RemoteDataManager对象

  3、 进入C:\Documents and Settings\All Users\Application Data\Symantec\pcAnywhere,由于 PCAnyWhere安装时将配置文件都放在这个目录下,我们将运行路径切换到这个目录下,可以更方便地使用。

  4、 生成RemoteData对象,这要求在配置文件路径下有对应CHF文件上,这是在PCAnyWhere中配置的,只要名称与连接方式相同就可以了。

  5、 设置拔号的电话号码,设置登录的用户名与密码,设置进行自动传输的ATF文件,并将RunOnConnect设为TRUE,并将这此配置的修改进行保存。

  6、 开始拔号并自动传输文件。

  7、 延时,判断MODEM是否空闲,空闲则这一次拔号、文件传输完毕(也有可能失败)。判断已下载的文件,如果修改时间已更新,则这次是成功的。否则是失败的。

  8、 将RemoteData、RemoteDataManager对象释放。

  9、 拔下一个点。

If checkMODEMIdle Then

showBegin 显示开始信息

Create CRemoteDataManager object

Set RemoteDataManager = CreateObject("WINAWSVR.RemoteDataManager")

RemoteDataManager.ChangeDirectory "C:\Documents and Settings\All Users\Application Data\Symantec\pcAnywhere"

S = RemoteDataManager.CurrentDirectory()

CHFile = xProfile.GetValue(WatchPoint(nowRunID), "CHFFILE") 用于拔号的配置

Set RemoteData = RemoteDataManager.RetrieveObject(CHFile, 2, 0)

RemoteData.PhoneNumber = xProfile.GetValue(WatchPoint(nowRunID), "PHONENUM")

RemoteData.AutoXferFile = filename

RemoteData.AutoLoginName = xProfile.GetValue(WatchPoint(nowRunID), "USERNAME")

RemoteData.AutoLoginPassword = xProfile.GetValue(WatchPoint(nowRunID), "PSW")

RemoteData.RunOnConnect = True

RemoteData.WriteObject (0)

S = RemoteData.PhoneNumber

RemoteData.Launch

Sleep 30000

Do

If checkMODEMIdle Then Exit Do

DoEvents

Sleep 5000

Loop

取文件结束,要进行转存处理

moveDBFData localpath

Set RemoteData = Nothing

Set RemoteDataManager = Nothing

nowRunID = nowRunID + 1

End If

  注意:一次完毕后必须将RemoteData、RemoteDataManager对象释放,不然会出现错乱的现象。

  好了,拔号自动文件传输已经实现了,但这个文件传输是在PCANYWHERE中配置好的不变的自动文件传输,不能实现我要的根据时间不同下载不同文件的要求。