[转] Vb中FSO 对象的介绍
要应用 FSO 对象,须要引用一个名为 Scripting 的类型库,方法是,执行 VB6.0 的菜单项“工程/引用”,添加引用列表框中的“Microsoft Scripting Runtime”一项。然后我们在“对象浏览器”中就可以看到 Scripting 类型库下的众多对象及其方法、属性。
1、判断光驱的盘符:
Dim Fso As New FileSystemObject '创建 FSO 对象的一个实例
Dim FsoDrive As Drive, FsoDrives As Drives '定义驱动器、驱动器集合对象
Set FsoDrives = Fso.Drives
For Each FsoDrive In FsoDrives '遍历所有可用的驱动器
If FsoDrive.DriveType = CDrom Then '如果驱动器的类型为 CDrom
GetCDROM = FsoDrive.DriveLetter '输出其盘符
Else
GetCDROM = ""
End If
Next
Set Fso = Nothing
Set FsoDrive = Nothing
Set FsoDrives = Nothing
End Function
2、判断文件、文件夹是否存在:
'返回布尔值
'True 存在,False 不存在,filername 文件名
Function FileExist(filename As String)
Dim Fso As New FileSystemObject
If Fso.FileExists(filename) = True Then
FileExist = True
Else
FileExist = False
End If
Set Fso = Nothing
End Function
'返回布尔值
'True 存在,False 不存在,foldername 文件夹
Function FolderExist(foldername As String)
Dim Fso As New FileSystemObject
If Fso.FolderExists(foldername) = True Then
FolderExist = True
Else
FolderExist = False
End If
Set Fso = Nothing
End Function
3、获取驱动器参数:
'返回磁盘总空间大小(单位:M),Drive = 盘符 A ,C, D ...
Function AllSpace(Drive As String)
Dim Fso As New FileSystemObject, Drv As Drive
Set Drv = Fso.GetDrive(Drive) '得到 Drv 对象的实例
If Drv.IsReady Then '如果该驱动器存在(软驱或光驱里有盘片,硬盘存取正常)
AllSpace = Format$(Drv.TotalSize / (2 ^ 20), "0.00") '将字节转换为兆
Else
AllSpace = 0
End If
Set Fso = Nothing
Set Drv = Nothing
End Function
'返回磁盘可用空间大小(单位:M),Drive = 盘符 A ,C, D ...
Function FreeSpace(Drive)
Dim Fso As New FileSystemObject, Drv As Drive
Set Drv = Fso.GetDrive(Drive)
If Drv.IsReady Then
FreeSpace = Format$(Drv.FreeSpace / (2 ^ 20), "0.00")
End If
Set Fso = Nothing
Set Drv = Nothing
End Function
'获取驱动器文件系统类型,Drive = 盘符 A ,C, D ...
Function FsType(Drive As String)
Dim Fso As New FileSystemObject, Drv As Drive
Set Drv = Fso.GetDrive(Drive)
If Drv.IsReady Then
FsType = Drv.FileSystem
Else
FsType = ""
End If
Set Fso = Nothing
Set Drv = Nothing
End Function
4,获取系统文件夹路径:
'返回 Windows 文件夹路径
Function GetWindir()
Dim Fso As New FileSystemObject
GetWindir = Fso.GetSpecialFolder(WindowsFolder)
Set Fso = Nothing
End Function
'返回 Windows\System 文件夹路径
Function GetWinSysdir()
Dim Fso As New FileSystemObject
GetWinSysdir = Fso.GetSpecialFolder(SystemFolder)
Set Fso = Nothing
End Function
5,综合运用:一个文件备份通用过程:
Sub BackupFile(Filename As String, Drive As String, Folder As String)
Dim Fso As New FileSystemObject '创建 FSO 对象实例
Dim Dest_path As String, Counter As Long
Counter = 0
Do While Counter < 6 '如果驱动器没准备好,继续检测。共检测 6 秒
Counter = Counter + 1
Call Waitfor(1) '间隔 1 秒
If Fso.Drives(Drive).IsReady = True Then
Exit Do
End If
Loop
If Fso.Drives(Drive).IsReady = False Then '6 秒后目标盘仍未准备就绪,退出
MsgBox " 目标驱动器 " & Drive & " 没有准备好! ", vbCritical
Exit Sub
End If
If Fso.GetDrive(Drive).FreeSpace < Fso.GetFile(Filename).Size Then
MsgBox "目标驱动器空间太小!", vbCritical '目标驱动器空间不够,退出
Exit Sub
End If
If Right$(Drive, 1) <> ":" Then
Drive = Drive & ":"
End If
If Left$(Folder, 1) <> "\" Then
Folder = "\" & Folder
End If
If Right$(Folder, 1) <> "\" Then
Folder = Folder & "\"
End If
Dest_path = Drive & Folder
If Not Fso.FolderExists(Dest_path) Then '如果目标文件夹不存在,创建之
Fso.CreateFolder Dest_path
End If
Fso.CopyFile Filename, Dest_path & Fso.GetFileName(Filename), True
'拷贝,直接覆盖同名文件
MsgBox " 文件备份完毕。", vbOKOnly
Set Fso = Nothing
End Sub
Private Sub Waitfor(Delay As Single) '延时过程,Delay 单位约为 1 秒
Dim StartTime As Single
StartTime = Timer
Do Until (Timer - StartTime) > Delay
Loop
End Sub
摘自:网络整理
相关文章参考:
★VB中FSO的调用的两种方法
★在 VB 中应用 FSO 对象模型介绍(摘自网络)
★ [转] Vb中FSO 对象的介绍
★[vb]FSO对象模型在VB中的应用
★FSO对象新建、打开、保存文件
★VB使用FileSystemObject对象写文件
★VB部分相关文章推荐:★
※vb中line的用法[转]
※画图工具的VB实现
※VB 一个获得自己外网 IP 地址的程序代码
※VB程序中实现IP地址子网掩码网关DNS的更改 [转]
※在 VB 中应用 FSO 对象模型介绍(摘自网络)
※[转] Vb中FSO 对象的介绍
※VB 画坐标轴
※VB 二进制文件的操作
※[VB]BMP转JPGVB中KeyCode常数用法
※vb实时曲线的绘制和保存
※VB操作EXCEL
※vb初学回顾:最大公约数 最小公倍数 素数求取
※vb 关于窗口样式的API以及处理文本的API参考
※【引用】在VB6.0中实现弹出式菜单的几种方法
※【引用】URLDownloadToFile_VB下载文件!
※利用WinRar压缩和解压缩文件
※VB 剪切板
※VB实现指示窗口中拖动方框的程序
※VB绘制走动的表针
※如何用VB制作DLL文件
※【引用】VB修改IP地址
※VB多窗体退出代码
※[转]VB:如何检测到U盘的插拔(源代码)
※巧用SendMessage函数扩展Treeview功能
※vb中如何在任务管理器里面隐藏应用程序进程
※如何实现VB与EXCEL的无缝连接
※一个API方式存取日志文件的模块[VB]
※VB用记录集填充表格函数
※VB打开文本文件各种方法
※vb ClipBoard 剪切板应用(复制剪切粘贴)
※【引用】窗口处理技巧大全 vb(窗体控件)
※【转】 Md rd命令之VB
※vb:读写文本文件
※在vb中实现真正锁定的带自定义菜单的文本控件
※【引用】使用CommonDialog的ShowSave后如何判断是保存还是※取消?
※vb 关于commondialog的多选VB获取Windows操作系统所有版本
※vb UTF文本文件访问
※VB编程中的Unicode vs Ansi
※VB编PiView4注册机
※VB获取超过2G文件的大小
※比CopyMemory还要快的函数SuperCopyMemory
※VB:编程效率快步提高之:十七种可用一行代码完成的技巧
※VB画出来的五星红旗
※Qt第一印象——Qte与Qt
更多精彩>>>
[转] Vb中FSO 对象的介绍相关推荐
- VB中FSO的调用的两种方法
方法一: Dim objFso Set objFso = CreateObject("Scripting.FileSystemObject") ...
- 计算机编程中对象是什么意思,vb中“要求对象”是什么意思
vb中"要求对象"是什么意思 Sub fill_grid(sql_str, grid_name) '自定义过程是将数据表中的数据项填充到网格中 If rs.State <&g ...
- VB 中 FSO 对象模型介绍
在 VB 中应用 FSO 对象模型介绍 从 Visual Basic 的第一版至今,VB 中有关文件的处理都是通过使用 Open .Write 以及其它一些相关的语句和函数来实现的.随着软件技术的不断 ...
- vb中可视对象的操作
问题 : 在调试机房结账的部分,这两部分总是出问题,实时错误424. 错误解释: 未找到窗体(错误 424) 后来通过大量的查阅,找到了答案. MSHFlexGrid1是一个"控件" ...
- FSO对象新建、打开、保存文件
文件管理: 语句管理:打开.open----for output(append)===写操作 Input-----write(print)通过input进行读操作 Close---关闭文件 FSO-- ...
- vb中findwindow的疑惑
目的是学习使用findwindow的方法 |问题是程序运行得不到正确答案 步骤是 : 'Module Module1 //模块中声明findwindow Declare Function FindW ...
- VB中的format格式化函数
VB Format函数 Format[$] ( expr [ , fmt ] ) format 返回变体型 format$ 强制返回为文本 - - - - - - - - - - - - - - - ...
- VB中字符串匹配的多种方式
这段时间在移植项目的过程中,起初我想判断一个字符串中是否存在某字符(串),直接的使用方法是用instr(start,string1,string2,VB compare),但经过分析在VB中可以只用一 ...
- vb中line的用法[转]
绘制方框 可使用 Line 方法绘制并填充方框.下列示例画出一个方框,其左上角为 (500, 500),每边长为 1,000 : Line (500, 500)–Step(1000, 0) Line ...
最新文章
- 结对编程-马尔科夫链作业成绩
- Codeforces Round #715 (Div. 1) B. Almost Sorted 找规律
- SSM框架Spring+SpringMVC+MyBatis——详细整合教程
- 马云宣布退休计划后,阿里巴巴组织架构再次全面升级
- Oracle中的左连接与右连接
- 28. HTTP、SSL/TLS和HTTPS协议的区别与联系
- 高通QFIL刷机 安装9008驱动
- linux合并pdf命令,LINUX下合并PDF
- 工序能力指数Cp判定标准(附免费CPK计算工具)
- 绝不误人子弟!零基础应该选择学习Java、PHP,还是前端?
- PS画实线、虚线箭头
- tar压缩文件时忽略指定文件夹、文件
- word 宏命令批量把当前文件夹下的doc另存为docx格式
- ARP病毒的分析与防治
- 数据库常见问题:服务器'SQL SERVER'上的 MSDTC 不可用
- 电子词典(用map改写)
- 日系小清新PPT模板
- 记一次--冲动租房--搞得身心疲惫
- 欧洲e级超级计算机,美国将在2021年获得世界上第一台E级计算机
- 凤凰FM电台 v7.3.0
热门文章
- 成为一名架构师得学习哪些知识?
- Java程序员必会!没有返回值的构造函数是怎么完成赋值的?
- 如何用分库分表的9种分布式主键ID生成方案?附小技巧
- office图标修复工具_买电脑送Office,可你知道怎样才算用上吗?
- 无法完成您的itunes store的请求_iTunes 谢幕,盘点它的这 18 年
- u盘锁电脑_手机空间不足?U盘来辅助,一招解决问题
- php发卡平台源码免费,php源码 免费开源的云尚发卡V1.5.7 个人发卡平台源码 免费源码分享...
- 户外lisp导向牌如何安装_安装案例|户外标识牌常用安装方法
- qq为何没有linux版本,如何安装linux版本QQ?
- java服务端高并发问题_Java服务端两个常见的并发错误