mirror of
https://github.com/hakril/PythonForWindows
synced 2026-06-08 14:31:45 +00:00
Working on multi-version localthis handling
This commit is contained in:
@@ -334,16 +334,6 @@ typedef struct _LOCALTHIS {
|
||||
PVOID pTouchedAstaArray; // Ptr32 __MIDL_XmitDefs_0002
|
||||
} LOCALTHIS;
|
||||
|
||||
typedef struct _LOCALTHIS32 {
|
||||
DWORD dwFlags;
|
||||
DWORD dwClientThread;
|
||||
GUID passthroughTraceActivity;
|
||||
GUID callTraceActivity;
|
||||
MIDL_XmitDefs_0001 asyncRequestBlock;
|
||||
DWORD reserved;
|
||||
PVOID32 pTouchedAstaArray; // Ptr32 __MIDL_XmitDefs_0002
|
||||
} LOCALTHIS32;
|
||||
|
||||
/* LOCALTHAT & sub structures */
|
||||
|
||||
typedef struct _MIDL_XmitDefs_0007 {
|
||||
@@ -406,15 +396,6 @@ typedef struct _LOCALTHAT {
|
||||
} LOCALTHAT;
|
||||
|
||||
|
||||
typedef struct _LOCALTHAT32 {
|
||||
UINT64 marshalingSetId;
|
||||
ULONG reserved;
|
||||
PVOID32 pAsyncResponseBlock;
|
||||
PVOID32 containerErrorInformation;
|
||||
PVOID32 containerPassthroughData;
|
||||
} LOCALTHAT32;
|
||||
|
||||
|
||||
typedef struct tagORPCTHAT {
|
||||
ULONG flags;
|
||||
tagORPC_EXTENT_ARRAY *extensions;
|
||||
|
||||
@@ -0,0 +1,110 @@
|
||||
/* Seen on 6.2.9200.22376 (win8_ldr_escrow.180222-0941) */
|
||||
/* also seen on previous version : XP / Win7 / Server 2012 */
|
||||
|
||||
typedef struct LOCALTHIS32_NT_62 {
|
||||
ULONG dwFlags;
|
||||
ULONG dwClientThread;
|
||||
};
|
||||
|
||||
// NO LOCALTHAT for these previous version as far as 1 now
|
||||
|
||||
/* Seen on 6.3.9600.17031 (winblue_gdr.140221-1952) */
|
||||
|
||||
typedef struct __MIDL_XmitDefs_0001_NT_63 {
|
||||
ULONG size;
|
||||
ULONG reserved;
|
||||
UINT64 *pAstaOxids;
|
||||
};
|
||||
|
||||
typedef struct LOCALTHIS32_NT_63 {
|
||||
ULONG dwFlags;
|
||||
ULONG dwClientThread;
|
||||
ULONG reserved;
|
||||
PVOID32 pTouchedAstaArray;
|
||||
};
|
||||
|
||||
|
||||
typedef struct LOCALTHAT32_NT_63 {
|
||||
UINT64 marshalingSetAcknowledgmentOxid;
|
||||
UINT64 marshalingSetId;
|
||||
};
|
||||
|
||||
/* NT_1607 : combase 10.0.14393.576 from a WS2016 ISO*/
|
||||
|
||||
typedef struct __MIDL_XmitDefs_0002_NT_1607 {
|
||||
ULONG size;
|
||||
ULONG reserved;
|
||||
PVOID32 pAstaOxids;
|
||||
};
|
||||
|
||||
typedef struct __MIDL_XmitDefs_0001_NT_1607 {
|
||||
_GUID asyncOperationId;
|
||||
UINT32 oxidClientProcessNA;
|
||||
_GUID originalClientLogicalThreadId;
|
||||
UINT uClientCausalityTraceId;
|
||||
};
|
||||
|
||||
typedef struct LOCALTHIS32_NT_1607 {
|
||||
ULONG dwFlags;
|
||||
ULONG dwClientThread;
|
||||
__MIDL_XmitDefs_0001_NT_1607 asyncRequestBlock;
|
||||
ULONG reserved;
|
||||
PVOID32 *pTouchedAstaArray;
|
||||
};
|
||||
|
||||
typedef struct __MIDL_XmitDefs_0007 {
|
||||
INT pointOfFailure;
|
||||
HRESULT hrFailure;
|
||||
ULONG sizeOfMarshaledErrorInfo;
|
||||
ULONG reserved;
|
||||
BYTE *pMarshaledErrorInfo;
|
||||
};
|
||||
|
||||
typedef struct __MIDL_XmitDefs_0005 {
|
||||
ULONG sizeOfMarshaledResults;
|
||||
ULONG reserved;
|
||||
BYTE *pMarshaledResults;
|
||||
};
|
||||
|
||||
typedef struct __MIDL_XmitDefs_0008 {
|
||||
INT outcome;
|
||||
__MIDL_XmitDefs_0005 successDetails;
|
||||
__MIDL_XmitDefs_0007 failureDetails;
|
||||
};
|
||||
|
||||
typedef struct __MIDL_XmitDefs_0010 {
|
||||
ULONG asyncStatus;
|
||||
ULONG reserved1;
|
||||
UINT64 uServerCausalityTraceId;
|
||||
ULONG reserved2;
|
||||
PVOID32 *pOutcomeDetails; //__MIDL_XmitDefs_0008
|
||||
};
|
||||
|
||||
typedef struct LOCALTHAT32_NT_1607 {
|
||||
UINT64 marshalingSetAcknowledgmentOxid;
|
||||
UINT64 marshalingSetId;
|
||||
ULONG reserved;
|
||||
PVOID32 *pAsyncResponseBlock;
|
||||
};
|
||||
|
||||
/* ! NT_1607: combase 10.0.14393.576 */
|
||||
|
||||
/* NT 10.22 ? seen on 10.0.22621.1 */
|
||||
|
||||
typedef struct _LOCALTHIS32 {
|
||||
DWORD dwFlags;
|
||||
DWORD dwClientThread;
|
||||
GUID passthroughTraceActivity;
|
||||
GUID callTraceActivity;
|
||||
MIDL_XmitDefs_0001 asyncRequestBlock;
|
||||
DWORD reserved;
|
||||
PVOID32 pTouchedAstaArray; // Ptr32 __MIDL_XmitDefs_0002
|
||||
} LOCALTHIS32;
|
||||
|
||||
typedef struct _LOCALTHAT32 {
|
||||
UINT64 marshalingSetId;
|
||||
ULONG reserved;
|
||||
PVOID32 pAsyncResponseBlock;
|
||||
PVOID32 containerErrorInformation;
|
||||
PVOID32 containerPassthroughData;
|
||||
} LOCALTHAT32;
|
||||
@@ -12544,8 +12544,13 @@ structs = {'ACCESS_ALLOWED_ACE',
|
||||
'LOCALGROUP_MEMBERS_INFO_3',
|
||||
'LOCALTHAT',
|
||||
'LOCALTHAT32',
|
||||
'LOCALTHAT32_NT_1607',
|
||||
'LOCALTHAT32_NT_63',
|
||||
'LOCALTHIS',
|
||||
'LOCALTHIS32',
|
||||
'LOCALTHIS32_NT_1607',
|
||||
'LOCALTHIS32_NT_62',
|
||||
'LOCALTHIS32_NT_63',
|
||||
'LPADDRESS',
|
||||
'LPADDRESS64',
|
||||
'LPBINDPTR',
|
||||
@@ -14086,6 +14091,13 @@ structs = {'ACCESS_ALLOWED_ACE',
|
||||
'_XSTATE_FEATURE',
|
||||
'__MIDL_IBackgroundCopyJob2_0003',
|
||||
'__MIDL_IBackgroundCopyJob2_0004',
|
||||
'__MIDL_XmitDefs_0001_NT_1607',
|
||||
'__MIDL_XmitDefs_0001_NT_63',
|
||||
'__MIDL_XmitDefs_0002_NT_1607',
|
||||
'__MIDL_XmitDefs_0005',
|
||||
'__MIDL_XmitDefs_0007',
|
||||
'__MIDL_XmitDefs_0008',
|
||||
'__MIDL_XmitDefs_0010',
|
||||
'__PUBLIC_OBJECT_TYPE_INFORMATION',
|
||||
'__tagBRECORD',
|
||||
'__tagVARIANT',
|
||||
|
||||
@@ -1478,18 +1478,6 @@ class _LOCALTHIS(Structure):
|
||||
]
|
||||
LOCALTHIS = _LOCALTHIS
|
||||
|
||||
class _LOCALTHIS32(Structure):
|
||||
_fields_ = [
|
||||
("dwFlags", DWORD),
|
||||
("dwClientThread", DWORD),
|
||||
("passthroughTraceActivity", GUID),
|
||||
("callTraceActivity", GUID),
|
||||
("asyncRequestBlock", MIDL_XmitDefs_0001),
|
||||
("reserved", DWORD),
|
||||
("pTouchedAstaArray", PVOID32),
|
||||
]
|
||||
LOCALTHIS32 = _LOCALTHIS32
|
||||
|
||||
class _MIDL_XmitDefs_0007(Structure):
|
||||
_fields_ = [
|
||||
("pointOfFailure", INT),
|
||||
@@ -1561,16 +1549,6 @@ class _LOCALTHAT(Structure):
|
||||
]
|
||||
LOCALTHAT = _LOCALTHAT
|
||||
|
||||
class _LOCALTHAT32(Structure):
|
||||
_fields_ = [
|
||||
("marshalingSetId", UINT64),
|
||||
("reserved", ULONG),
|
||||
("pAsyncResponseBlock", PVOID32),
|
||||
("containerErrorInformation", PVOID32),
|
||||
("containerPassthroughData", PVOID32),
|
||||
]
|
||||
LOCALTHAT32 = _LOCALTHAT32
|
||||
|
||||
class tagORPCTHAT(Structure):
|
||||
_fields_ = [
|
||||
("flags", ULONG),
|
||||
@@ -1585,6 +1563,131 @@ class ORPCTHAT32(Structure):
|
||||
]
|
||||
|
||||
|
||||
class LOCALTHIS32_NT_62(Structure):
|
||||
_fields_ = [
|
||||
("dwFlags", ULONG),
|
||||
("dwClientThread", ULONG),
|
||||
]
|
||||
|
||||
|
||||
class __MIDL_XmitDefs_0001_NT_63(Structure):
|
||||
_fields_ = [
|
||||
("size", ULONG),
|
||||
("reserved", ULONG),
|
||||
("pAstaOxids", POINTER(UINT64)),
|
||||
]
|
||||
|
||||
|
||||
class LOCALTHIS32_NT_63(Structure):
|
||||
_fields_ = [
|
||||
("dwFlags", ULONG),
|
||||
("dwClientThread", ULONG),
|
||||
("reserved", ULONG),
|
||||
("pTouchedAstaArray", PVOID32),
|
||||
]
|
||||
|
||||
|
||||
class LOCALTHAT32_NT_63(Structure):
|
||||
_fields_ = [
|
||||
("marshalingSetAcknowledgmentOxid", UINT64),
|
||||
("marshalingSetId", UINT64),
|
||||
]
|
||||
|
||||
|
||||
class __MIDL_XmitDefs_0002_NT_1607(Structure):
|
||||
_fields_ = [
|
||||
("size", ULONG),
|
||||
("reserved", ULONG),
|
||||
("pAstaOxids", PVOID32),
|
||||
]
|
||||
|
||||
|
||||
class __MIDL_XmitDefs_0001_NT_1607(Structure):
|
||||
_fields_ = [
|
||||
("asyncOperationId", _GUID),
|
||||
("oxidClientProcessNA", UINT32),
|
||||
("originalClientLogicalThreadId", _GUID),
|
||||
("uClientCausalityTraceId", UINT),
|
||||
]
|
||||
|
||||
|
||||
class LOCALTHIS32_NT_1607(Structure):
|
||||
_fields_ = [
|
||||
("dwFlags", ULONG),
|
||||
("dwClientThread", ULONG),
|
||||
("asyncRequestBlock", __MIDL_XmitDefs_0001_NT_1607),
|
||||
("reserved", ULONG),
|
||||
("pTouchedAstaArray", POINTER(PVOID32)),
|
||||
]
|
||||
|
||||
|
||||
class __MIDL_XmitDefs_0007(Structure):
|
||||
_fields_ = [
|
||||
("pointOfFailure", INT),
|
||||
("hrFailure", HRESULT),
|
||||
("sizeOfMarshaledErrorInfo", ULONG),
|
||||
("reserved", ULONG),
|
||||
("pMarshaledErrorInfo", POINTER(BYTE)),
|
||||
]
|
||||
|
||||
|
||||
class __MIDL_XmitDefs_0005(Structure):
|
||||
_fields_ = [
|
||||
("sizeOfMarshaledResults", ULONG),
|
||||
("reserved", ULONG),
|
||||
("pMarshaledResults", POINTER(BYTE)),
|
||||
]
|
||||
|
||||
|
||||
class __MIDL_XmitDefs_0008(Structure):
|
||||
_fields_ = [
|
||||
("outcome", INT),
|
||||
("successDetails", __MIDL_XmitDefs_0005),
|
||||
("failureDetails", __MIDL_XmitDefs_0007),
|
||||
]
|
||||
|
||||
|
||||
class __MIDL_XmitDefs_0010(Structure):
|
||||
_fields_ = [
|
||||
("asyncStatus", ULONG),
|
||||
("reserved1", ULONG),
|
||||
("uServerCausalityTraceId", UINT64),
|
||||
("reserved2", ULONG),
|
||||
("pOutcomeDetails", POINTER(PVOID32)),
|
||||
]
|
||||
|
||||
|
||||
class LOCALTHAT32_NT_1607(Structure):
|
||||
_fields_ = [
|
||||
("marshalingSetAcknowledgmentOxid", UINT64),
|
||||
("marshalingSetId", UINT64),
|
||||
("reserved", ULONG),
|
||||
("pAsyncResponseBlock", POINTER(PVOID32)),
|
||||
]
|
||||
|
||||
|
||||
class _LOCALTHIS32(Structure):
|
||||
_fields_ = [
|
||||
("dwFlags", DWORD),
|
||||
("dwClientThread", DWORD),
|
||||
("passthroughTraceActivity", GUID),
|
||||
("callTraceActivity", GUID),
|
||||
("asyncRequestBlock", MIDL_XmitDefs_0001),
|
||||
("reserved", DWORD),
|
||||
("pTouchedAstaArray", PVOID32),
|
||||
]
|
||||
LOCALTHIS32 = _LOCALTHIS32
|
||||
|
||||
class _LOCALTHAT32(Structure):
|
||||
_fields_ = [
|
||||
("marshalingSetId", UINT64),
|
||||
("reserved", ULONG),
|
||||
("pAsyncResponseBlock", PVOID32),
|
||||
("containerErrorInformation", PVOID32),
|
||||
("containerPassthroughData", PVOID32),
|
||||
]
|
||||
LOCALTHAT32 = _LOCALTHAT32
|
||||
|
||||
VIRTUAL_DISK_ACCESS_NONE = EnumValue("_VIRTUAL_DISK_ACCESS_MASK", "VIRTUAL_DISK_ACCESS_NONE", 0x0)
|
||||
VIRTUAL_DISK_ACCESS_ATTACH_RO = EnumValue("_VIRTUAL_DISK_ACCESS_MASK", "VIRTUAL_DISK_ACCESS_ATTACH_RO", 0x1)
|
||||
VIRTUAL_DISK_ACCESS_ATTACH_RW = EnumValue("_VIRTUAL_DISK_ACCESS_MASK", "VIRTUAL_DISK_ACCESS_ATTACH_RW", 0x2)
|
||||
|
||||
Reference in New Issue
Block a user