项目当中需要读取采集生成的AVI文件大小,特记录如下:
'获得文件大小
Public Function GetFileSizeByName(ByVal sFileName As String) As Double
On Error GoTo ErrHandle
Dim FileHandle As Long
Dim FileInfo As BY_HANDLE_FILE_INFORMATION
Dim lpReOpenBuff As OFSTRUCT
Dim Ret As Currency
Dim fl As Double
1000
fl = FileLen(sFileName)
1001
If fl < 0 Then
1002
FileHandle = OpenFile(sFileName, lpReOpenBuff, OF_READ)
1003
Call GetFileInformationByHandle(FileHandle, FileInfo)
1004
Call CloseHandle(FileHandle)
1005
CopyMemory ByVal VarPtr(Ret), ByVal VarPtr(FileInfo.nFileSizeLow), ByVal 4&
1006
CopyMemory ByVal VarPtr(Ret) + 4, ByVal VarPtr(FileInfo.nFileSizeHigh), ByVal 4&
1007
GetFileSizeByName = CDbl(FormatNumber(Ret * 10000, 0, , , vbTrue))
1008
Else
1009
GetFileSizeByName = fl
1010
End If
1011
Exit Function
ErrHandle:
If Err.Number <> 0 Then
WriteLog "<---" & CStr(Now) & "--->" & vbCrLf & String$(64, "*") & vbCrLf & _
"错误函数:采集控件TJCapture->modGlobal->GetFileSizeByName" & vbCrLf & _
"错误编号:" & Err.Number & vbCrLf & _
"错误描述:" & Err.Description & vbCrLf & vbCrLf & _
"sFileName = " & sFileName & vbCrLf & _
"错误地址:" & Erl & vbCrLf & String$(64, "*") & vbCrLf
Err.Clear
End If
End Function
另外说明下,代码每行前面的数字是为了干吗的,请注意这句 《"错误地址:" & Erl 》,其实很简单VB中有个函数就是返回出错的行数这个函数叫Erl,配合前面的标签,就能在代码出错的时候定位到错误所在行...
文章来自:VB获取超过2G文件的大小
★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
更多精彩>>>
评论