标题: 用Shell.Application获取图片分辨率
作者: Demon
链接: https://demon.tw/programming/shell-application-picture-resolution.html
版权: 本博客的所有文章,都遵守“署名-非商业性使用-相同方式共享 2.5 中国大陆”协议条款。
昨天有人在博客里留言:“获取图片分辨率也可以用Shell.Application,我比较喜欢用这个。”简单Google了一下,未果,于是发邮件请教了一下,很快就有了回复。
Path = "C:\test.jpg" arr = Split(Path,"\") FileName = arr(Ubound(arr)) FolderPath = Left(Path, Len(Path) - Len(FileName) - 1) Set objShell = CreateObject("Shell.Application") Set objFolder = objShell.Namespace(FolderPath) set objFolderItem = objFolder.ParseName(FileName) Width = objFolder.GetDetailsOf(objFolderItem, 162) Height = objFolder.GetDetailsOf(objFolderItem, 164) Msgbox "Width: " & Width & " Height: " & Height
碰到VBS高手了。
赞赏微信赞赏支付宝赞赏
随机文章:
Demon,这个方法我试了,没有得到预期的结果。后来我试着用了循环的方式得到了objFolderItem属性从1到200的所有值,发现27、28两项值才是需要的Width和Height,而不是文中VBS高手给出的162、164,不知道你的系统上运行是什么结果。
我当时测试过,没有问题。
貌似“文件属性的顺序和系统有关.”,我的机器上也是27、28两项。