全国等级考试资料网

VB驱动pcAnyWhere进行文件传输

分类: 计算机  时间: 2019-01-23 14:16:08  作者: 全国等级考试资料网 
PCAnyWhere的使用非常简单,它的使用方法在网上有非常详细的介绍,我就不再多说,我介绍一下利用VB驱动PCAnyWhere的方法。 
在我的一个项目中有特别的应用,有五个处于不同地方的计算机,有实时数据采集文件,我需要定时拔号上去,将上面的数据文件下载下来,这些数据文件随时间的不同就有不同,所以没有办法做固定的自动文件传输,为此我分别研究了软件提供script与OLE白皮书,最终决定选用OLE。 
一、利用OLE进行远程连接 
在OLE白皮书上,将OLE驱动写得十分明白,我只要将我的连接代码帖上来,应该十分明白。 
1、 检查MODEM是否在使用,由于PCAnyWhere启动后不能再由程序控制,我们必须检查MODEM是否是空闲才能确保拔号可以顺利外拔。检查MODEM空闲可能通过打开MODEM所在的串口是否成功来判断。 
2、 生成RemoteDataManager对象 
3、 进入C:Documents and SettingsAll UsersApplication DataSymantecpcAnywhere,由于 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 SettingsAll UsersApplication DataSymantecpcAnywhere" 
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 
首页 1 2 3 尾页

相关文章

猜你喜欢

精选计算机