'Returns the string associated with a Windows error message, such as the
ones found in socket.error.
Attempts direct lookup against the win32 API via ctypes and then
pywin32 if available), then in the error table in the socket module,
then finally defaulting to C{os.strerror}.
@param errorcode: the Windows error code
@type errorcode: C{int}
@return: The error message string
@rtype: C{str}'

def formatError(self, errorcode):

    if (self.winError is not None):
        return self.winError(errorcode).strerror
    if (self.formatMessage is not None):
        return self.formatMessage(errorcode)
    if (self.errorTab is not None):
        result = self.errorTab.get(errorcode)
        if (result is not None):
            return result
    return os.strerror(errorcode)
