C#使用shell32 获取视频的信息

首先需要引入COM下面的Microsoft Shell Controls And Automation

 

引入后 名字为Shell32

点击Shell32 下面会有一个属性框 没有的话右击Shell32 点击属性

嵌入互操作类型修改为false 否则使用时会报错

 

代码中使用

Shell32.Shell shell = new Shell32.ShellClass();
Shell32.Folder folder = shell.NameSpace(@"D:\视频\测试");
Shell32.FolderItem folderItem = folder.ParseName("001.mp4");

StringBuilder sb = new StringBuilder();
for (int i = 0; i < 321; i++)
{
   sb.Append(i.ToString());
   sb.Append(":");
   // 我这里电脑是win10系统
   // 这里仅列举了相对比较重要的 音频频道和音频采样频率没有找到
   // 0: 001.mp4 视频名字
   // 1: 214 MB 视频文件大小
   // 2: MP4 文件   文件类型
   // 3: 2021/8/18 14:16 修改时间
   // 4: 2021/8/18 14:54 创建时间
   // 5: 2021/8/18 15:00 访问时间
   // 6: A 文件属性
   /*
   R 只读文件属性。
   A 存档文件属性。
   S 系统文件属性。
   H 隐藏文件属性。
   I 无内容索引文件属性。
   */
   //19: 未分级   星级
   //27: 00:01:24 时长
   //28: 317kbps 音频比特率
   //164:.mp4 文件后缀
   //191:D:\视频\测试 所在文件目录
   //194:D:\视频\测试\001.mp4 文件全路径
   //313: 20821kbps 数据速率
   //314: 1080 帧高度
   //315: 25.00 帧/秒   帧速率
   //316: 1920 帧宽度
   //320: 21138 kbps 总比特率
   
   
   sb.Append(folder.GetDetailsOf(folderItem, i));
   sb.Append("\r\n");
}
Debug.WriteLine(sb);

 

原文地址:https://www.cnblogs.com/rchao/p/15793237.html