這個程式是透過調用API程式KERNEL32.DLL的GetVolumeInformationA函式來讀取硬碟序號等資料,以下有些名稱翻譯的可能不太好,參考看看就好
首先使用Call Library Function Node元件,按滑鼠右鍵從選單中點選config...進入設定畫面,Library name or path設定為KERNEL32.DLL,Function name設定為GetVolumeInformationA
切換到Parameters畫面,內定的return type那一項保持原樣不變更。接下來要新增幾項函數
新增lpRootPathName項目,格式設定為文字。這一項是用來設定要讀取的硬碟的根目錄名稱
新增lpVolumeNameBuffer項目,格式設定為文字。這一項是要讀取磁碟名稱,若磁碟標籤名稱沒有設定,這一項讀不到資料
新增nVolumeNameSize項目,格式設定為U32格式數值。這一項是要設定讀取磁碟名稱的長度,因為磁碟標籤名稱長度不確定,輸入數值設大一點
新增lpVolumeSerialNumber項目,格式設定為文字。這一項是要讀取硬碟序號,讀出的字串還要再處理才能得到正確的資料
新增lpMaximumComponentLength項目,格式設定為U32格式數值。這一項是要讀取磁碟內最大組件長度
新增lpFileSystemFlags項目,格式設定為U32格式數值。這一項是要讀取磁碟系統標誌
新增lpFileSystemNameBuffer項目,格式設定為文字。這一項是要讀取磁碟系統格式名稱
新增nFileSystemNameSize項目,格式設定為U32格式數值。這一項是要設定讀取磁碟系統格式名稱的長度,因為磁碟系統格式名稱長度不確定,輸入數值設大一點
全部函數新增完成後按OK結束設定
完成程式
在Windows 7調用這個API程式會錯誤,無法讀到資料
留言列表