A function for getting the last API error message (from code posted by Stefan Pendl on http://libertybasic.conforums.com/index.cgi ).

example
 'example usage: 
calldll #...._
....
.....
ret as boolean
if ret = 0 then notice "Error...."+ErrorMessageFromAPI$()[[code]]

'.............
function ErrorMessageFromAPI$()
calldll #kernel32, "GetLastError", _
ErrorCode as ulong
dwFlags = _FORMAT_MESSAGE_FROM_SYSTEM
nSize = 1024
lpBuffer$ = space$(nSize); chr$(0)
dwMessageID = ErrorCode

calldll #kernel32, "FormatMessageA", _
dwFlags as ulong, _
lpSource as ulong, _
dwMessageID as ulong, _
dwLanguageID as ulong, _
lpBuffer$ as ptr, _
nSize as ulong, _
Arguments as ulong, _
result as ulong

ErrorMessageFromAPI$ = "Error ";ErrorCode;": "; left$(lpBuffer$, result)
end function