$iTableId = Number(Binary("FCAP"))
$iProvSigner = Number("0x" & Hex((Binary("ACPI"))))
$tBuffer = DllStructCreate("ubyte Data[4096]")
$pBuffer = DllStructGetPtr($tBuffer)
$iLength = DllCall("Kernel32.dll", "int", "GetSystemFirmwareTable", "dword", $iProvSigner, _
"dword", $iTableId, "ptr", $pBuffer, "dword", 4096)
If ($iLength[0] = 0) Then
$iError = DllCall("Kernel32.dll", "dword", "GetLastError")
MsgBox(48, "Error code:", $iError[0])
Exit
EndIf
$tBinary = DllStructCreate("ubyte Data[" & $iLength[0] & "]", $pBuffer)
MsgBox(0, "", DllStructGetData($tBinary, "Data"))
$tBinary = 0
$tBuffer = 0
再测试一下,看下是什么错误。 |