Set ws = CreateObject("WScriptShell")
Set FSO = CreateObject("ScriptingFileSystemObject")
kugou = wsregRead("HKCU\Software\KuGou\AppPath")
For Each f In FSOGetFolder(kugou)Files
ext = LCase(Right(fName, 4))
If ext = "exe" Or ext = "dll" Then
s = s & fName & vbTab & FSOGetFileVersion(fPath) & vbCrLf
End If
Next
MsgBox s
C/C++ code
String __fastcall TForm8::GetFileVersion(String FileName)
{
int iVerInfoSize;
char pBuf;
AnsiString asVer="";
VS_FIXEDFILEINFO pVsInfo;
unsigned int iFileInfoSize = sizeof( VS_FIXEDFILEINFO );
iVerInfoSize = GetFileVersionInfoSize(FileNamec_str(), NULL);
if(iVerInfoSize!= 0)
{
pBuf = new char[iVerInfoSize];
if(GetFileVersionInfo(FileNamec_str(),0, iVerInfoSize, pBuf ) )
{
if(VerQueryValue(pBuf, "\\",(void )&pVsInfo,&iFileInfoSize))
{
asVer = IntToStr( HIWORD(pVsInfo->dwFileVersionMS) )+"";
asVer += IntToStr( LOWORD(pVsInfo->dwFileVersionMS) )+"";
asVer += IntToStr( HIWORD(pVsInfo->dwFileVersionLS) )+"";
asVer += IntToStr( LOWORD(pVsInfo->dwFileVersionLS) );
}
}
delete pBuf;
}
return asVer;
}
获取文件本身属性的话,可以用stat函数,但返回的数据好像没有版本号。
$file = 'xxzip';
$perms = stat($file);
print_r($perms);
输出数组说明:
数字下标 关联键名(自 PHP 406) 说明
0 dev 设备名
1 ino 号码
2 mode inode 保护模式
3 nlink 被连接数目
4 uid 所有者的用户 id
5 gid 所有者的组 id
6 rdev 设备类型,如果是 inode 设备的话
7 size 文件大小的字节数
8 atime 上次访问时间(Unix 时间戳)
9 mtime 上次修改时间(Unix 时间戳)
10 ctime 上次改变时间(Unix 时间戳)
11 blksize 文件系统 IO 的块大小
12 blocks 所占据块的数目
filever /v fileverexe
bat本身没有读取exe文件信息的功能,可以使用微软提供的工具包中的一个实用程序,fileverexe来读取exe文件版本信息
以上就是关于VBS获取文件名和版本号全部的内容,包括:VBS获取文件名和版本号、怎么在C++builder中获取设备的文件版本号、php如何获取.exe文件跟.dll文件的版本号等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)