close

From : 取得影片長度

注意:此方法僅適用於 Windows Vista、Windows 7、Windows Server 2008。

先下載 Windows API Code Pack,將套件解壓縮至某個資料夾,例如:D:\Lib\WindowsApiCodePack。

建立一個新專案,加入下列組件參考:

  • Microsoft.WindowsAPICodePack.dll
  • Microsoft.WindowsAPICodePack.Shell.dll
撰寫程式時,要匯入命名空間:

[VB]
1
Imports Microsoft.WindowsAPICodePack.Shell

[C#]
1
using Microsoft.WindowsAPICodePack.Shell

取得影片長度的範例程式碼:

[VB]
1
2
3
4
Dim file As String = "C:\鐵達尼號.avi"
Dim so As ShellFile = ShellFile.FromFilePath(file)
Dim nanoseconds As Double
Double.TryParse(so.Properties.System.Media.Duration.Value.ToString(), nanoseconds)

[C#]
1
2
3
4
String file = @"C:\鐵達尼號.avi";
ShellFile so = ShellFile.FromFilePath(file);
double nanoseconds = 0;
Double.TryParse(so.Properties.System.Media.Duration.Value.ToString(), nanoseconds);
注意這裡取得的 nanoseconds 的單位是 100 nanoseconds,所以要換算成秒的話,可以將變數 nanoseconds 乘以 0.0001 再除以 1000。
arrow
arrow
    全站熱搜
    創作者介紹
    創作者 AndrewHsiao 的頭像
    AndrewHsiao

    Andrew的部落格

    AndrewHsiao 發表在 痞客邦 留言(0) 人氣()