You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
ORPA-pyOpenRPA/Resources/WPy64-3720/python-3.7.2.amd64/Lib/site-packages/comtypes/hresult.py

77 lines
2.2 KiB

# comtypes.hresult
# COM success and error codes
#
# Note that the codes should be written in decimal notation!
S_OK = 0
S_FALSE = 1
E_UNEXPECTED = -2147418113 #0x8000FFFFL
E_NOTIMPL = -2147467263 #0x80004001L
E_NOINTERFACE = -2147467262 #0x80004002L
E_POINTER = -2147467261 #0x80004003L
E_FAIL = -2147467259 #0x80004005L
E_INVALIDARG = -2147024809 #0x80070057L
E_OUTOFMEMORY = -2147024882 # 0x8007000EL
CLASS_E_NOAGGREGATION = -2147221232 #0x80040110L
CLASS_E_CLASSNOTAVAILABLE = -2147221231 #0x80040111L
CO_E_CLASSSTRING = -2147221005 #0x800401F3L
# connection point error codes
CONNECT_E_CANNOTCONNECT = -2147220990
CONNECT_E_ADVISELIMIT = -2147220991
CONNECT_E_NOCONNECTION = -2147220992
TYPE_E_ELEMENTNOTFOUND = -2147352077 #0x8002802BL
TYPE_E_REGISTRYACCESS = -2147319780 #0x8002801CL
TYPE_E_CANTLOADLIBRARY = -2147312566 #0x80029C4AL
# all the DISP_E_ values from windows.h
DISP_E_BUFFERTOOSMALL = -2147352557
DISP_E_DIVBYZERO = -2147352558
DISP_E_NOTACOLLECTION = -2147352559
DISP_E_BADCALLEE = -2147352560
DISP_E_PARAMNOTOPTIONAL = -2147352561 #0x8002000F
DISP_E_BADPARAMCOUNT = -2147352562 #0x8002000E
DISP_E_ARRAYISLOCKED = -2147352563 #0x8002000D
DISP_E_UNKNOWNLCID = -2147352564 #0x8002000C
DISP_E_BADINDEX = -2147352565 #0x8002000B
DISP_E_OVERFLOW = -2147352566 #0x8002000A
DISP_E_EXCEPTION = -2147352567 #0x80020009
DISP_E_BADVARTYPE = -2147352568 #0x80020008
DISP_E_NONAMEDARGS = -2147352569 #0x80020007
DISP_E_UNKNOWNNAME = -2147352570 #0x80020006
DISP_E_TYPEMISMATCH = -2147352571 #0800020005
DISP_E_PARAMNOTFOUND = -2147352572 #0x80020004
DISP_E_MEMBERNOTFOUND = -2147352573 #0x80020003
DISP_E_UNKNOWNINTERFACE = -2147352575 #0x80020001
RPC_E_CHANGED_MODE = -2147417850 # 0x80010106
RPC_E_SERVERFAULT = -2147417851 # 0x80010105
# 'macros' and constants to create your own HRESULT values:
def MAKE_HRESULT(sev, fac, code):
# A hresult is SIGNED in comtypes
from ctypes import c_long
return c_long((sev << 31 | fac << 16 | code)).value
SEVERITY_ERROR = 1
SEVERITY_SUCCESS = 0
FACILITY_ITF = 4
FACILITY_WIN32 = 7
def HRESULT_FROM_WIN32(x):
# make signed
from ctypes import c_long
x = c_long(x).value
if x < 0:
return x
# 0x80000000 | FACILITY_WIN32 << 16 | x & 0xFFFF
return c_long(0x80070000 | (x & 0xFFFF)).value