I figure that there must be a way to ask the system, though OLE, what these cryptic error messages mean, something similar to the API call GetLastError() and the libwin32 functions Win32::GetLastError() and Win32::FormatMessage(). In that case, I think it's reasonable to ask Win32::OLE to handle the necessary paperwork for us.