mirror of
https://github.com/hakril/PythonForWindows
synced 2026-06-08 14:31:45 +00:00
Fix ctypes generation + COM interface dependance check + add IPersistFile, IShellLink, strucs/defs
This commit is contained in:
@@ -9,10 +9,10 @@ from simpleparser import *
|
||||
class WinComParser(Parser):
|
||||
PARAM_INFO = ["__RPC__deref_out", "__RPC__in", "__RPC__deref_out_opt", "__RPC__out", "__RPC__in_opt",
|
||||
"__RPC__deref_opt_inout_opt", "__in", "__out", "__out_opt", "__in_opt", "__inout",
|
||||
"__reserved", "__RPC__in_opt_string", "__RPC__inout_opt"]
|
||||
"__reserved", "__RPC__in_opt_string", "__RPC__inout_opt", "__RPC__in_string"]
|
||||
PARAM_INFO_WITH_VALUE = ["__RPC__in_ecount", "__RPC__out_ecount_part", "__RPC__in_ecount_full",
|
||||
"__RPC__in_range", "__RPC__out_ecount_full", "__out_ecount_opt", "__out_ecount", "__in_ecount_opt",
|
||||
"__in_ecount", "__out_bcount_opt", "__out_bcount", "__in_bcount", "__in_bcount_opt"]
|
||||
"__in_ecount", "__out_bcount_opt", "__out_bcount", "__in_bcount", "__in_bcount_opt", "__RPC__out_ecount_full_string"]
|
||||
|
||||
def __init__(self, data):
|
||||
# data = self.initial_processing(data)
|
||||
|
||||
@@ -0,0 +1,43 @@
|
||||
typedef struct IPersistFileVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
__RPC__in IPersistFile * This,
|
||||
/* [in] */ __RPC__in REFIID riid,
|
||||
/* [annotation][iid_is][out] */
|
||||
__RPC__deref_out void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
__RPC__in IPersistFile * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
__RPC__in IPersistFile * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetClassID )(
|
||||
__RPC__in IPersistFile * This,
|
||||
/* [out] */ __RPC__out CLSID *pClassID);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *IsDirty )(
|
||||
__RPC__in IPersistFile * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Load )(
|
||||
__RPC__in IPersistFile * This,
|
||||
/* [in] */ __RPC__in LPCOLESTR pszFileName,
|
||||
/* [in] */ DWORD dwMode);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Save )(
|
||||
__RPC__in IPersistFile * This,
|
||||
/* [unique][in] */ __RPC__in_opt LPCOLESTR pszFileName,
|
||||
/* [in] */ BOOL fRemember);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SaveCompleted )(
|
||||
__RPC__in IPersistFile * This,
|
||||
/* [unique][in] */ __RPC__in_opt LPCOLESTR pszFileName);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetCurFile )(
|
||||
__RPC__in IPersistFile * This,
|
||||
/* [out] */ __RPC__deref_out_opt LPOLESTR *ppszFileName);
|
||||
|
||||
END_INTERFACE
|
||||
} IPersistFileVtbl;
|
||||
@@ -0,0 +1,101 @@
|
||||
typedef struct IShellLinkAVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
__RPC__in IShellLinkA * This,
|
||||
/* [in] */ __RPC__in REFIID riid,
|
||||
/* [annotation][iid_is][out] */
|
||||
__RPC__deref_out void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
__RPC__in IShellLinkA * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
__RPC__in IShellLinkA * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetPath )(
|
||||
__RPC__in IShellLinkA * This,
|
||||
/* [size_is][string][out] */ __RPC__out_ecount_full_string(cch) LPSTR pszFile,
|
||||
/* [in] */ int cch,
|
||||
/* [unique][out][in] */ __RPC__inout_opt WIN32_FIND_DATAA *pfd,
|
||||
/* [in] */ DWORD fFlags);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetIDList )(
|
||||
__RPC__in IShellLinkA * This,
|
||||
/* [out] */ __RPC__deref_out_opt PIDLIST_ABSOLUTE *ppidl);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SetIDList )(
|
||||
__RPC__in IShellLinkA * This,
|
||||
/* [in] */ __RPC__in PCIDLIST_ABSOLUTE pidl);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetDescription )(
|
||||
__RPC__in IShellLinkA * This,
|
||||
/* [size_is][string][out] */ __RPC__out_ecount_full_string(cch) LPSTR pszName,
|
||||
/* [in] */ int cch);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SetDescription )(
|
||||
__RPC__in IShellLinkA * This,
|
||||
/* [string][in] */ __RPC__in_string LPCSTR pszName);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetWorkingDirectory )(
|
||||
__RPC__in IShellLinkA * This,
|
||||
/* [size_is][string][out] */ __RPC__out_ecount_full_string(cch) LPSTR pszDir,
|
||||
/* [in] */ int cch);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SetWorkingDirectory )(
|
||||
__RPC__in IShellLinkA * This,
|
||||
/* [string][in] */ __RPC__in_string LPCSTR pszDir);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetArguments )(
|
||||
__RPC__in IShellLinkA * This,
|
||||
/* [size_is][string][out] */ __RPC__out_ecount_full_string(cch) LPSTR pszArgs,
|
||||
/* [in] */ int cch);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SetArguments )(
|
||||
__RPC__in IShellLinkA * This,
|
||||
/* [string][in] */ __RPC__in_string LPCSTR pszArgs);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetHotkey )(
|
||||
__RPC__in IShellLinkA * This,
|
||||
/* [out] */ __RPC__out WORD *pwHotkey);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SetHotkey )(
|
||||
__RPC__in IShellLinkA * This,
|
||||
/* [in] */ WORD wHotkey);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetShowCmd )(
|
||||
__RPC__in IShellLinkA * This,
|
||||
/* [out] */ __RPC__out int *piShowCmd);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SetShowCmd )(
|
||||
__RPC__in IShellLinkA * This,
|
||||
/* [in] */ int iShowCmd);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetIconLocation )(
|
||||
__RPC__in IShellLinkA * This,
|
||||
/* [size_is][string][out] */ __RPC__out_ecount_full_string(cch) LPSTR pszIconPath,
|
||||
/* [in] */ int cch,
|
||||
/* [out] */ __RPC__out int *piIcon);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SetIconLocation )(
|
||||
__RPC__in IShellLinkA * This,
|
||||
/* [string][in] */ __RPC__in_string LPCSTR pszIconPath,
|
||||
/* [in] */ int iIcon);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SetRelativePath )(
|
||||
__RPC__in IShellLinkA * This,
|
||||
/* [string][in] */ __RPC__in_string LPCSTR pszPathRel,
|
||||
/* [in] */ DWORD dwReserved);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Resolve )(
|
||||
__RPC__in IShellLinkA * This,
|
||||
/* [unique][in] */ __RPC__in_opt HWND hwnd,
|
||||
/* [in] */ DWORD fFlags);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SetPath )(
|
||||
__RPC__in IShellLinkA * This,
|
||||
/* [string][in] */ __RPC__in_string LPCSTR pszFile);
|
||||
|
||||
END_INTERFACE
|
||||
} IShellLinkAVtbl;
|
||||
@@ -0,0 +1,46 @@
|
||||
#define CWCSTORAGENAME 32
|
||||
|
||||
/* Storage instantiation modes */
|
||||
#define STGM_DIRECT 0x00000000L
|
||||
#define STGM_TRANSACTED 0x00010000L
|
||||
#define STGM_SIMPLE 0x08000000L
|
||||
|
||||
#define STGM_READ 0x00000000L
|
||||
#define STGM_WRITE 0x00000001L
|
||||
#define STGM_READWRITE 0x00000002L
|
||||
|
||||
#define STGM_SHARE_DENY_NONE 0x00000040L
|
||||
#define STGM_SHARE_DENY_READ 0x00000030L
|
||||
#define STGM_SHARE_DENY_WRITE 0x00000020L
|
||||
#define STGM_SHARE_EXCLUSIVE 0x00000010L
|
||||
|
||||
#define STGM_PRIORITY 0x00040000L
|
||||
#define STGM_DELETEONRELEASE 0x04000000L
|
||||
#define STGM_NOSCRATCH 0x00100000L
|
||||
|
||||
#define STGM_CREATE 0x00001000L
|
||||
#define STGM_CONVERT 0x00020000L
|
||||
#define STGM_FAILIFTHERE 0x00000000L
|
||||
|
||||
#define STGM_NOSNAPSHOT 0x00200000L
|
||||
#define STGM_DIRECT_SWMR 0x00400000L
|
||||
|
||||
/* flags for internet asyncronous and layout docfile */
|
||||
#define ASYNC_MODE_COMPATIBILITY 0x00000001L
|
||||
#define ASYNC_MODE_DEFAULT 0x00000000L
|
||||
|
||||
#define STGTY_REPEAT 0x00000100L
|
||||
#define STG_TOEND 0xFFFFFFFFL
|
||||
|
||||
#define STG_LAYOUT_SEQUENTIAL 0x00000000L
|
||||
#define STG_LAYOUT_INTERLEAVED 0x00000001L
|
||||
|
||||
|
||||
#define STGFMT_STORAGE 0
|
||||
#define STGFMT_NATIVE 1
|
||||
#define STGFMT_FILE 3
|
||||
#define STGFMT_ANY 4
|
||||
#define STGFMT_DOCFILE 5
|
||||
|
||||
// This is a legacy define to allow old component to builds
|
||||
#define STGFMT_DOCUMENT 0
|
||||
@@ -1066,4 +1066,9 @@
|
||||
#define CMSG_VERIFY_SIGNER_PUBKEY 1
|
||||
#define CMSG_VERIFY_SIGNER_CERT 2
|
||||
#define CMSG_VERIFY_SIGNER_CHAIN 3
|
||||
#define CMSG_VERIFY_SIGNER_NULL 4
|
||||
#define CMSG_VERIFY_SIGNER_NULL 4
|
||||
|
||||
|
||||
#define TXFS_MINIVERSION_COMMITTED_VIEW (0x0000)
|
||||
#define TXFS_MINIVERSION_DIRTY_VIEW (0xFFFF)
|
||||
#define TXFS_MINIVERSION_DEFAULT_VIEW (0xFFFE)
|
||||
@@ -0,0 +1,50 @@
|
||||
HANDLE WINAPI CreateFileTransactedA(
|
||||
_In_ LPCSTR lpFileName,
|
||||
_In_ DWORD dwDesiredAccess,
|
||||
_In_ DWORD dwShareMode,
|
||||
_In_opt_ LPSECURITY_ATTRIBUTES lpSecurityAttributes,
|
||||
_In_ DWORD dwCreationDisposition,
|
||||
_In_ DWORD dwFlagsAndAttributes,
|
||||
_In_opt_ HANDLE hTemplateFile,
|
||||
_In_ HANDLE hTransaction,
|
||||
_In_opt_ PUSHORT pusMiniVersion,
|
||||
_Reserved_ PVOID pExtendedParameter
|
||||
);
|
||||
|
||||
|
||||
HANDLE WINAPI CreateFileTransactedW(
|
||||
_In_ LPWSTR lpFileName,
|
||||
_In_ DWORD dwDesiredAccess,
|
||||
_In_ DWORD dwShareMode,
|
||||
_In_opt_ LPSECURITY_ATTRIBUTES lpSecurityAttributes,
|
||||
_In_ DWORD dwCreationDisposition,
|
||||
_In_ DWORD dwFlagsAndAttributes,
|
||||
_In_opt_ HANDLE hTemplateFile,
|
||||
_In_ HANDLE hTransaction,
|
||||
_In_opt_ PUSHORT pusMiniVersion,
|
||||
_Reserved_ PVOID pExtendedParameter
|
||||
);
|
||||
|
||||
|
||||
BOOL WINAPI CommitTransaction(
|
||||
_In_ HANDLE TransactionHandle
|
||||
);
|
||||
|
||||
HANDLE WINAPI CreateTransaction(
|
||||
_In_opt_ LPSECURITY_ATTRIBUTES lpTransactionAttributes,
|
||||
_In_opt_ LPGUID UOW,
|
||||
_In_opt_ DWORD CreateOptions,
|
||||
_In_opt_ DWORD IsolationLevel,
|
||||
_In_opt_ DWORD IsolationFlags,
|
||||
_In_opt_ DWORD Timeout,
|
||||
_In_opt_ LPWSTR Description
|
||||
);
|
||||
|
||||
BOOL WINAPI RollbackTransaction(
|
||||
_In_ HANDLE TransactionHandle
|
||||
);
|
||||
|
||||
HANDLE WINAPI OpenTransaction(
|
||||
_In_ DWORD dwDesiredAccess,
|
||||
_In_ LPGUID TransactionId
|
||||
);
|
||||
@@ -0,0 +1,136 @@
|
||||
BOOL WINAPI GetCursorPos(
|
||||
_Out_ LPPOINT lpPoint
|
||||
);
|
||||
|
||||
HWND WINAPI WindowFromPoint(
|
||||
_In_ POINT Point
|
||||
);
|
||||
|
||||
BOOL WINAPI GetWindowRect(
|
||||
_In_ HWND hWnd,
|
||||
_Out_ LPRECT lpRect
|
||||
);
|
||||
|
||||
BOOL WINAPI EnumWindows(
|
||||
__in WNDENUMPROC lpEnumFunc,
|
||||
__in LPARAM lParam
|
||||
);
|
||||
|
||||
|
||||
INT WINAPI GetWindowTextA(
|
||||
__in HWND hWnd,
|
||||
__out LPSTR lpString,
|
||||
__in INT nMaxCount
|
||||
);
|
||||
|
||||
HWND WINAPI GetParent(
|
||||
_In_ HWND hWnd
|
||||
);
|
||||
|
||||
INT WINAPI GetWindowTextW(
|
||||
__in HWND hWnd,
|
||||
__out LPWSTR lpString,
|
||||
__in INT nMaxCount
|
||||
);
|
||||
|
||||
UINT WINAPI GetWindowModuleFileNameA(
|
||||
__in HWND hwnd,
|
||||
__out LPSTR pszFileName,
|
||||
__in UINT cchFileNameMax);
|
||||
|
||||
UINT WINAPI GetWindowModuleFileNameW(
|
||||
__in HWND hwnd,
|
||||
__out LPWSTR pszFileName,
|
||||
__in UINT cchFileNameMax);
|
||||
|
||||
|
||||
BOOL WINAPI EnumChildWindows(
|
||||
_In_opt_ HWND hWndParent,
|
||||
_In_ WNDENUMPROC lpEnumFunc,
|
||||
_In_ LPARAM lParam
|
||||
);
|
||||
|
||||
BOOL WINAPI CloseWindow(
|
||||
_In_ HWND hWnd
|
||||
);
|
||||
|
||||
HWND WINAPI GetDesktopWindow();
|
||||
|
||||
HWND WINAPI GetForegroundWindow();
|
||||
|
||||
|
||||
BOOL WINAPI BringWindowToTop(
|
||||
_In_ HWND hWnd
|
||||
);
|
||||
|
||||
BOOL WINAPI MoveWindow(
|
||||
_In_ HWND hWnd,
|
||||
_In_ INT X,
|
||||
_In_ INT Y,
|
||||
_In_ INT nWidth,
|
||||
_In_ INT nHeight,
|
||||
_In_ BOOL bRepaint
|
||||
);
|
||||
|
||||
|
||||
BOOL WINAPI SetWindowPos(
|
||||
_In_ HWND hWnd,
|
||||
_In_opt_ HWND hWndInsertAfter,
|
||||
_In_ INT X,
|
||||
_In_ INT Y,
|
||||
_In_ INT cx,
|
||||
_In_ INT cy,
|
||||
_In_ UINT uFlags
|
||||
);
|
||||
|
||||
BOOL WINAPI SetWindowTextA(
|
||||
_In_ HWND hWnd,
|
||||
_In_opt_ LPCSTR lpString
|
||||
);
|
||||
|
||||
BOOL WINAPI SetWindowTextW(
|
||||
_In_ HWND hWnd,
|
||||
_In_opt_ LPWSTR lpString
|
||||
);
|
||||
|
||||
UINT WINAPI RealGetWindowClassA(
|
||||
_In_ HWND hwnd,
|
||||
_Out_ LPCSTR pszType,
|
||||
_In_ UINT cchType
|
||||
);
|
||||
|
||||
UINT WINAPI RealGetWindowClassW(
|
||||
_In_ HWND hwnd,
|
||||
_Out_ LPWSTR pszType,
|
||||
_In_ UINT cchType
|
||||
);
|
||||
|
||||
BOOL WINAPI GetClassInfoExA(
|
||||
_In_opt_ HINSTANCE hinst,
|
||||
_In_ LPCSTR lpszClass,
|
||||
_Out_ LPWNDCLASSEXA lpwcx
|
||||
);
|
||||
|
||||
BOOL WINAPI GetClassInfoExW(
|
||||
_In_opt_ HINSTANCE hinst,
|
||||
_In_ LPCWSTR lpszClass,
|
||||
_Out_ LPWNDCLASSEXW lpwcx
|
||||
);
|
||||
|
||||
INT WINAPI GetClassNameA(
|
||||
_In_ HWND hWnd,
|
||||
_Out_ LPCSTR lpClassName,
|
||||
_In_ INT nMaxCount
|
||||
);
|
||||
|
||||
INT WINAPI GetClassNameW(
|
||||
_In_ HWND hWnd,
|
||||
_Out_ LPWSTR lpClassName,
|
||||
_In_ INT nMaxCount
|
||||
);
|
||||
|
||||
DWORD WINAPI GetWindowThreadProcessId(
|
||||
_In_ HWND hWnd,
|
||||
_Out_opt_ LPDWORD lpdwProcessId
|
||||
);
|
||||
|
||||
@@ -1286,34 +1286,6 @@ SC_HANDLE WINAPI OpenServiceW(
|
||||
);
|
||||
|
||||
|
||||
BOOL WINAPI EnumWindows(
|
||||
__in WNDENUMPROC lpEnumFunc,
|
||||
__in LPARAM lParam
|
||||
);
|
||||
|
||||
|
||||
INT WINAPI GetWindowTextA(
|
||||
__in HWND hWnd,
|
||||
__out LPSTR lpString,
|
||||
__in INT nMaxCount
|
||||
);
|
||||
|
||||
INT WINAPI GetWindowTextW(
|
||||
__in HWND hWnd,
|
||||
__out LPWSTR lpString,
|
||||
__in INT nMaxCount
|
||||
);
|
||||
|
||||
UINT WINAPI GetWindowModuleFileNameA(
|
||||
__in HWND hwnd,
|
||||
__out LPSTR pszFileName,
|
||||
__in UINT cchFileNameMax);
|
||||
|
||||
UINT WINAPI GetWindowModuleFileNameW(
|
||||
__in HWND hwnd,
|
||||
__out LPWSTR pszFileName,
|
||||
__in UINT cchFileNameMax);
|
||||
|
||||
DWORD WINAPI GetLogicalDriveStringsA(
|
||||
_In_ DWORD nBufferLength,
|
||||
_Out_ LPCSTR lpBuffer
|
||||
@@ -1644,19 +1616,6 @@ BOOL WINAPI GetProcessDEPPolicy(
|
||||
_Out_ PBOOL lpPermanent
|
||||
);
|
||||
|
||||
BOOL WINAPI GetCursorPos(
|
||||
_Out_ LPPOINT lpPoint
|
||||
);
|
||||
|
||||
HWND WINAPI WindowFromPoint(
|
||||
_In_ POINT Point
|
||||
);
|
||||
|
||||
|
||||
BOOL WINAPI GetWindowRect(
|
||||
_In_ HWND hWnd,
|
||||
_Out_ LPRECT lpRect
|
||||
);
|
||||
|
||||
DWORD WINAPI GetNamedSecurityInfoA(
|
||||
_In_ LPCSTR pObjectName,
|
||||
|
||||
@@ -5,16 +5,12 @@ PCWSTR = LPWSTR
|
||||
SIZE_T = c_size_t
|
||||
PSIZE_T = POINTER(SIZE_T)
|
||||
PVOID = c_void_p
|
||||
PPS_POST_PROCESS_INIT_ROUTINE = PVOID
|
||||
NTSTATUS = DWORD
|
||||
SECURITY_INFORMATION = DWORD
|
||||
PSECURITY_INFORMATION = POINTER(SECURITY_INFORMATION)
|
||||
PULONG = POINTER(ULONG)
|
||||
PDWORD = POINTER(DWORD)
|
||||
LPDWORD = POINTER(DWORD)
|
||||
LPTHREAD_START_ROUTINE = PVOID
|
||||
WNDENUMPROC = PVOID
|
||||
PHANDLER_ROUTINE = PVOID
|
||||
LPBYTE = POINTER(BYTE)
|
||||
ULONG_PTR = PVOID
|
||||
DWORD_PTR = ULONG_PTR
|
||||
@@ -24,6 +20,7 @@ CHAR = c_char
|
||||
UCHAR = c_char
|
||||
CSHORT = c_short
|
||||
VARTYPE = c_ushort
|
||||
PUSHORT = POINTER(USHORT)
|
||||
PBOOL = POINTER(BOOL)
|
||||
PSTR = LPSTR
|
||||
PCSTR = LPSTR
|
||||
@@ -33,9 +30,7 @@ OLECHAR = c_wchar
|
||||
POLECHAR = c_wchar_p
|
||||
PUCHAR = POINTER(UCHAR)
|
||||
double = c_double
|
||||
FARPROC = PVOID
|
||||
PSID = PVOID
|
||||
PVECTORED_EXCEPTION_HANDLER = PVOID
|
||||
ULONGLONG = c_ulonglong
|
||||
LONGLONG = c_longlong
|
||||
ULONG64 = c_ulonglong
|
||||
@@ -51,19 +46,11 @@ IFTYPE = ULONG
|
||||
PULONG64 = POINTER(ULONG64)
|
||||
PBYTE = POINTER(BYTE)
|
||||
PUINT = POINTER(UINT)
|
||||
PHANDLE = POINTER(HANDLE)
|
||||
HCATADMIN = HANDLE
|
||||
HCATINFO = HANDLE
|
||||
HCERTCHAINENGINE = HANDLE
|
||||
LPHANDLE = POINTER(HANDLE)
|
||||
ALPC_HANDLE = HANDLE
|
||||
PALPC_HANDLE = POINTER(ALPC_HANDLE)
|
||||
PHKEY = POINTER(HKEY)
|
||||
ACCESS_MASK = DWORD
|
||||
REGSAM = ACCESS_MASK
|
||||
PBOOLEAN = POINTER(BOOLEAN)
|
||||
SECURITY_CONTEXT_TRACKING_MODE = BOOLEAN
|
||||
HCRYPTPROV_OR_NCRYPT_KEY_HANDLE = PULONG
|
||||
HCRYPTPROV_LEGACY = PULONG
|
||||
HCRYPTKEY = PULONG
|
||||
HCRYPTPROV = PULONG
|
||||
@@ -72,18 +59,43 @@ ALG_ID = UINT
|
||||
DISPID = LONG
|
||||
MEMBERID = DISPID
|
||||
PSECURITY_DESCRIPTOR = PVOID
|
||||
LPPROC_THREAD_ATTRIBUTE_LIST = PVOID
|
||||
|
||||
LPUNKNOWN = POINTER(PVOID)
|
||||
LPFILETIME = POINTER(FILETIME)
|
||||
LPPOINT = POINTER(POINT)
|
||||
LPRECT = POINTER(RECT)
|
||||
SPC_UUID = BYTE * 16
|
||||
PIO_APC_ROUTINE = PVOID
|
||||
DEVICE_TYPE = DWORD
|
||||
PWINDBG_EXTENSION_APIS32 = PVOID
|
||||
PWINDBG_EXTENSION_APIS64 = PVOID
|
||||
|
||||
/* HANDLES */
|
||||
|
||||
PHANDLE = POINTER(HANDLE)
|
||||
HCATADMIN = HANDLE
|
||||
HCATINFO = HANDLE
|
||||
HCERTCHAINENGINE = HANDLE
|
||||
LPHANDLE = POINTER(HANDLE)
|
||||
ALPC_HANDLE = HANDLE
|
||||
PALPC_HANDLE = POINTER(ALPC_HANDLE)
|
||||
HCURSOR = HANDLE
|
||||
HBRUSH = HANDLE
|
||||
HCRYPTPROV_OR_NCRYPT_KEY_HANDLE = PULONG
|
||||
|
||||
/* Function PTR */
|
||||
|
||||
WNDPROC = PVOID
|
||||
LPPROC_THREAD_ATTRIBUTE_LIST = PVOID
|
||||
PPS_POST_PROCESS_INIT_ROUTINE = PVOID
|
||||
LPTHREAD_START_ROUTINE = PVOID
|
||||
WNDENUMPROC = PVOID
|
||||
PHANDLER_ROUTINE = PVOID
|
||||
FARPROC = PVOID
|
||||
PIO_APC_ROUTINE = PVOID
|
||||
PVECTORED_EXCEPTION_HANDLER = PVOID
|
||||
|
||||
// Will be changed at import time
|
||||
|
||||
LPCONTEXT = PVOID
|
||||
HCERTSTORE = PVOID
|
||||
HCRYPTMSG = PVOID
|
||||
|
||||
@@ -0,0 +1,8 @@
|
||||
/* I 'often' add typedef for GUID: so I put it in a specific file */
|
||||
|
||||
typedef struct _GUID {
|
||||
ULONG Data1;
|
||||
USHORT Data2;
|
||||
USHORT Data3;
|
||||
BYTE Data4[ 8 ];
|
||||
} GUID, IID, CLSID, *REFIID, *REFCLSID, *LPGUID, *REFGUID;
|
||||
@@ -0,0 +1,11 @@
|
||||
typedef struct _SHITEMID {
|
||||
USHORT cb;
|
||||
BYTE abID[1];
|
||||
} SHITEMID;
|
||||
|
||||
|
||||
/* MANUAL TYPEDEF see: https://msdn.microsoft.com/en-us/library/windows/desktop/bb773321(v=vs.85).aspx*/
|
||||
|
||||
typedef struct _ITEMIDLIST {
|
||||
SHITEMID mkid;
|
||||
} ITEMIDLIST, *PCIDLIST_ABSOLUTE, *PIDLIST_ABSOLUTE;
|
||||
+29
-5
@@ -65,8 +65,32 @@ typedef struct tagBITMAPCOREINFO {
|
||||
RGBTRIPLE bmciColors[1];
|
||||
} BITMAPCOREINFO, *LPBITMAPCOREINFO, *PBITMAPCOREINFO;
|
||||
|
||||
/*
|
||||
typedef struct _FAKEYOLOSTRUCT {
|
||||
ACL Reserved;
|
||||
} _FAKEYOLOSTRUCT;
|
||||
*/
|
||||
typedef struct tagWNDCLASSEXA {
|
||||
UINT cbSize;
|
||||
UINT style;
|
||||
WNDPROC lpfnWndProc;
|
||||
INT cbClsExtra;
|
||||
INT cbWndExtra;
|
||||
HINSTANCE hInstance;
|
||||
HICON hIcon;
|
||||
HCURSOR hCursor;
|
||||
HBRUSH hbrBackground;
|
||||
LPCSTR lpszMenuName;
|
||||
LPCSTR lpszClassName;
|
||||
HICON hIconSm;
|
||||
} WNDCLASSEXA, *PWNDCLASSEXA, *LPWNDCLASSEXA;
|
||||
|
||||
typedef struct tagWNDCLASSEXW {
|
||||
UINT cbSize;
|
||||
UINT style;
|
||||
WNDPROC lpfnWndProc;
|
||||
INT cbClsExtra;
|
||||
INT cbWndExtra;
|
||||
HINSTANCE hInstance;
|
||||
HICON hIcon;
|
||||
HCURSOR hCursor;
|
||||
HBRUSH hbrBackground;
|
||||
LPWSTR lpszMenuName;
|
||||
LPWSTR lpszClassName;
|
||||
HICON hIconSm;
|
||||
} WNDCLASSEXW, *PWNDCLASSEXW, *LPWNDCLASSEXW;
|
||||
@@ -2108,13 +2108,6 @@ typedef enum tagCOINIT {
|
||||
COINIT_SPEED_OVER_MEMORY = 0x8
|
||||
} COINIT;
|
||||
|
||||
typedef struct _GUID {
|
||||
ULONG Data1;
|
||||
USHORT Data2;
|
||||
USHORT Data3;
|
||||
BYTE Data4[ 8 ];
|
||||
} GUID, IID, *REFIID, *REFCLSID, *LPGUID, *REFGUID;
|
||||
|
||||
|
||||
struct _TMP_signscale {
|
||||
BYTE scale;
|
||||
|
||||
@@ -104,12 +104,31 @@ class FunctionParsedFile(ParsedFile):
|
||||
|
||||
class COMParsedFile(ParsedFile):
|
||||
PARSER = com_parser.WinComParser
|
||||
IGNORED_INTERFACE = set(["ITypeInfo"])
|
||||
|
||||
def compute_imports_exports(self, cominterface):
|
||||
self.add_exports(cominterface.name)
|
||||
if cominterface.typedefptr:
|
||||
self.add_exports(cominterface.typedefptr)
|
||||
|
||||
for method in cominterface.methods:
|
||||
self.compute_method_imports_exports(cominterface, method)
|
||||
|
||||
|
||||
def compute_method_imports_exports(self, interface, method):
|
||||
self.add_imports(method.ret_type)
|
||||
for arg in method.args[1:]: # First one is 'this'
|
||||
if arg.byreflevel > 0:
|
||||
if arg.type == "void":
|
||||
continue # PVOID DEP: don't care
|
||||
if arg.type in self.IGNORED_INTERFACE:
|
||||
continue # Will be replaced by "PVOID" at generation: ignore dep
|
||||
if arg.type == interface.name:
|
||||
continue # Do not add dependence to our own COM interface
|
||||
|
||||
self.add_imports(arg.type)
|
||||
|
||||
|
||||
|
||||
class ParsedFileGraph(object):
|
||||
def __init__(self, nodes, depnodes): # depnodes: nodes that we dont have to handle but want can take export from
|
||||
@@ -132,7 +151,7 @@ class ParsedFileGraph(object):
|
||||
if self.depandances_database[node].issubset(depdone):
|
||||
break
|
||||
else:
|
||||
raise ValueError("POUET")
|
||||
raise ValueError("Could not find a next node for dep flattening")
|
||||
|
||||
flatten.append(node)
|
||||
depdone.add(node)
|
||||
@@ -282,7 +301,7 @@ class NtStatusDocGenerator(NoTemplatedGenerator):
|
||||
self.emitline(".. autodata:: {name}".format(name=name))
|
||||
|
||||
class COMCtypesGenerator(CtypesGenerator):
|
||||
IGNORED_INTERFACE = set(["ITypeInfo"])
|
||||
IGNORED_INTERFACE = set(COMParsedFile.IGNORED_INTERFACE)
|
||||
def __init__(self, *args, **kwargs):
|
||||
super(COMCtypesGenerator, self).__init__(*args, **kwargs)
|
||||
self.iids_def = {}
|
||||
@@ -527,6 +546,10 @@ class ModuleGenerator(object):
|
||||
g = ParsedFileGraph(self.nodes, depnodes=depnodes)
|
||||
return g.build_dependancy_graph()
|
||||
|
||||
def check_dependancies_without_flattening(self, depnodes):
|
||||
g = ParsedFileGraph(self.nodes, depnodes=depnodes) # init check for missing dependance
|
||||
return g.nodes
|
||||
|
||||
def generate(self):
|
||||
self.parse_source_directory()
|
||||
# Flatten the graph
|
||||
@@ -615,8 +638,10 @@ print("== Generating COM interfaces ==")
|
||||
com_module_generator = ModuleGenerator("interfaces", COMParsedFile, COMCtypesGenerator, None, from_here(r"definitions\com"))
|
||||
# Load the interface_to_iid file needed by the 'COMCtypesGenerator'
|
||||
com_module_generator.after_ctypes_generator_init = lambda cgen: cgen.parse_iid_file(from_here("definitions\\interface_to_iid.txt"))
|
||||
com_module_generator.parse_source_directory()
|
||||
com_module_generator.add_module_dependancy(structure_module_generator)
|
||||
com_module_generator.generate()
|
||||
com_module_generator.resolve_dependancies = com_module_generator.check_dependancies_without_flattening # No real flattening as we have circular dep in Interfaces VTBL
|
||||
com_module_generator.resolve_dep_and_generate([BasicTypeNodes()])
|
||||
|
||||
print("== Generating META file ==")
|
||||
# Meta-file generator
|
||||
|
||||
+947
-913
File diff suppressed because it is too large
Load Diff
@@ -2,6 +2,94 @@
|
||||
|
||||
Winstructs
|
||||
----------
|
||||
_GUID
|
||||
'''''
|
||||
.. class:: REFCLSID
|
||||
|
||||
Pointer to :class:`_GUID`
|
||||
|
||||
.. class:: REFGUID
|
||||
|
||||
Pointer to :class:`_GUID`
|
||||
|
||||
.. class:: LPGUID
|
||||
|
||||
Pointer to :class:`_GUID`
|
||||
|
||||
.. class:: IID
|
||||
|
||||
Alias for :class:`_GUID`
|
||||
|
||||
.. class:: CLSID
|
||||
|
||||
Alias for :class:`_GUID`
|
||||
|
||||
.. class:: GUID
|
||||
|
||||
Alias for :class:`_GUID`
|
||||
|
||||
.. class:: REFIID
|
||||
|
||||
Pointer to :class:`_GUID`
|
||||
|
||||
.. class:: _GUID
|
||||
|
||||
.. attribute:: Data1
|
||||
|
||||
:class:`ULONG`
|
||||
|
||||
|
||||
.. attribute:: Data2
|
||||
|
||||
:class:`USHORT`
|
||||
|
||||
|
||||
.. attribute:: Data3
|
||||
|
||||
:class:`USHORT`
|
||||
|
||||
|
||||
.. attribute:: Data4
|
||||
|
||||
:class:`BYTE` ``[8]``
|
||||
|
||||
_SHITEMID
|
||||
'''''''''
|
||||
.. class:: SHITEMID
|
||||
|
||||
Alias for :class:`_SHITEMID`
|
||||
|
||||
.. class:: _SHITEMID
|
||||
|
||||
.. attribute:: cb
|
||||
|
||||
:class:`USHORT`
|
||||
|
||||
|
||||
.. attribute:: abID
|
||||
|
||||
:class:`BYTE` ``[1]``
|
||||
|
||||
_ITEMIDLIST
|
||||
'''''''''''
|
||||
.. class:: ITEMIDLIST
|
||||
|
||||
Alias for :class:`_ITEMIDLIST`
|
||||
|
||||
.. class:: PCIDLIST_ABSOLUTE
|
||||
|
||||
Pointer to :class:`_ITEMIDLIST`
|
||||
|
||||
.. class:: PIDLIST_ABSOLUTE
|
||||
|
||||
Pointer to :class:`_ITEMIDLIST`
|
||||
|
||||
.. class:: _ITEMIDLIST
|
||||
|
||||
.. attribute:: mkid
|
||||
|
||||
:class:`SHITEMID`
|
||||
|
||||
tagRGBTRIPLE
|
||||
''''''''''''
|
||||
.. class:: NPRGBTRIPLE
|
||||
@@ -317,6 +405,156 @@ tagBITMAPCOREINFO
|
||||
|
||||
:class:`RGBTRIPLE` ``[1]``
|
||||
|
||||
tagWNDCLASSEXA
|
||||
''''''''''''''
|
||||
.. class:: PWNDCLASSEXA
|
||||
|
||||
Pointer to :class:`tagWNDCLASSEXA`
|
||||
|
||||
.. class:: LPWNDCLASSEXA
|
||||
|
||||
Pointer to :class:`tagWNDCLASSEXA`
|
||||
|
||||
.. class:: WNDCLASSEXA
|
||||
|
||||
Alias for :class:`tagWNDCLASSEXA`
|
||||
|
||||
.. class:: tagWNDCLASSEXA
|
||||
|
||||
.. attribute:: cbSize
|
||||
|
||||
:class:`UINT`
|
||||
|
||||
|
||||
.. attribute:: style
|
||||
|
||||
:class:`UINT`
|
||||
|
||||
|
||||
.. attribute:: lpfnWndProc
|
||||
|
||||
:class:`WNDPROC`
|
||||
|
||||
|
||||
.. attribute:: cbClsExtra
|
||||
|
||||
:class:`INT`
|
||||
|
||||
|
||||
.. attribute:: cbWndExtra
|
||||
|
||||
:class:`INT`
|
||||
|
||||
|
||||
.. attribute:: hInstance
|
||||
|
||||
:class:`HINSTANCE`
|
||||
|
||||
|
||||
.. attribute:: hIcon
|
||||
|
||||
:class:`HICON`
|
||||
|
||||
|
||||
.. attribute:: hCursor
|
||||
|
||||
:class:`HCURSOR`
|
||||
|
||||
|
||||
.. attribute:: hbrBackground
|
||||
|
||||
:class:`HBRUSH`
|
||||
|
||||
|
||||
.. attribute:: lpszMenuName
|
||||
|
||||
:class:`LPCSTR`
|
||||
|
||||
|
||||
.. attribute:: lpszClassName
|
||||
|
||||
:class:`LPCSTR`
|
||||
|
||||
|
||||
.. attribute:: hIconSm
|
||||
|
||||
:class:`HICON`
|
||||
|
||||
tagWNDCLASSEXW
|
||||
''''''''''''''
|
||||
.. class:: WNDCLASSEXW
|
||||
|
||||
Alias for :class:`tagWNDCLASSEXW`
|
||||
|
||||
.. class:: LPWNDCLASSEXW
|
||||
|
||||
Pointer to :class:`tagWNDCLASSEXW`
|
||||
|
||||
.. class:: PWNDCLASSEXW
|
||||
|
||||
Pointer to :class:`tagWNDCLASSEXW`
|
||||
|
||||
.. class:: tagWNDCLASSEXW
|
||||
|
||||
.. attribute:: cbSize
|
||||
|
||||
:class:`UINT`
|
||||
|
||||
|
||||
.. attribute:: style
|
||||
|
||||
:class:`UINT`
|
||||
|
||||
|
||||
.. attribute:: lpfnWndProc
|
||||
|
||||
:class:`WNDPROC`
|
||||
|
||||
|
||||
.. attribute:: cbClsExtra
|
||||
|
||||
:class:`INT`
|
||||
|
||||
|
||||
.. attribute:: cbWndExtra
|
||||
|
||||
:class:`INT`
|
||||
|
||||
|
||||
.. attribute:: hInstance
|
||||
|
||||
:class:`HINSTANCE`
|
||||
|
||||
|
||||
.. attribute:: hIcon
|
||||
|
||||
:class:`HICON`
|
||||
|
||||
|
||||
.. attribute:: hCursor
|
||||
|
||||
:class:`HCURSOR`
|
||||
|
||||
|
||||
.. attribute:: hbrBackground
|
||||
|
||||
:class:`HBRUSH`
|
||||
|
||||
|
||||
.. attribute:: lpszMenuName
|
||||
|
||||
:class:`LPWSTR`
|
||||
|
||||
|
||||
.. attribute:: lpszClassName
|
||||
|
||||
:class:`LPWSTR`
|
||||
|
||||
|
||||
.. attribute:: hIconSm
|
||||
|
||||
:class:`HICON`
|
||||
|
||||
_LIST_ENTRY
|
||||
'''''''''''
|
||||
.. class:: PLIST_ENTRY
|
||||
@@ -5769,53 +6007,6 @@ _DEBUG_EXCEPTION_FILTER_PARAMETERS
|
||||
|
||||
:class:`ULONG`
|
||||
|
||||
_GUID
|
||||
'''''
|
||||
.. class:: REFCLSID
|
||||
|
||||
Pointer to :class:`_GUID`
|
||||
|
||||
.. class:: REFGUID
|
||||
|
||||
Pointer to :class:`_GUID`
|
||||
|
||||
.. class:: LPGUID
|
||||
|
||||
Pointer to :class:`_GUID`
|
||||
|
||||
.. class:: IID
|
||||
|
||||
Alias for :class:`_GUID`
|
||||
|
||||
.. class:: GUID
|
||||
|
||||
Alias for :class:`_GUID`
|
||||
|
||||
.. class:: REFIID
|
||||
|
||||
Pointer to :class:`_GUID`
|
||||
|
||||
.. class:: _GUID
|
||||
|
||||
.. attribute:: Data1
|
||||
|
||||
:class:`ULONG`
|
||||
|
||||
|
||||
.. attribute:: Data2
|
||||
|
||||
:class:`USHORT`
|
||||
|
||||
|
||||
.. attribute:: Data3
|
||||
|
||||
:class:`USHORT`
|
||||
|
||||
|
||||
.. attribute:: Data4
|
||||
|
||||
:class:`BYTE` ``[8]``
|
||||
|
||||
_TMP_signscale
|
||||
''''''''''''''
|
||||
.. class:: _TMP_signscale
|
||||
|
||||
@@ -33,7 +33,8 @@ def verify_apisetmap_parsing(apisetmap_base, version=None):
|
||||
# This key was found in all current tested version by hand
|
||||
# Might need to change that if I add another APISET dump
|
||||
# But as it was in Windows7 to Windows10 there are big chance it will be in others APISET.
|
||||
assert 'api-ms-win-core-com-l2-1-1' in apisetmap_dict
|
||||
# We do as MS code and ignore everything after the last '-'
|
||||
assert 'api-ms-win-core-com-l2-1-' in apisetmap_dict
|
||||
|
||||
def test_apisetmap_parsing_current_process():
|
||||
return verify_apisetmap_parsing(windows.current_process.peb.ApiSetMap)
|
||||
|
||||
+402
-332
@@ -88,31 +88,6 @@ class IBackgroundCopyCallback(COMInterface):
|
||||
"JobModification": ctypes.WINFUNCTYPE(HRESULT, PVOID, DWORD)(5, "JobModification"),
|
||||
}
|
||||
|
||||
class INetFwServiceRestriction(COMInterface):
|
||||
IID = generate_IID(0x8267BBE3, 0xF890, 0x491C, 0xB7, 0xB6, 0x2D, 0xB1, 0xEF, 0x0E, 0x5D, 0x2B, name="INetFwServiceRestriction", strid="8267BBE3-F890-491C-B7B6-2DB1EF0E5D2B")
|
||||
_functions_ = {
|
||||
# QueryInterface -> riid:REFIID, ppvObject:**void
|
||||
"QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"),
|
||||
# AddRef ->
|
||||
"AddRef": ctypes.WINFUNCTYPE(ULONG)(1, "AddRef"),
|
||||
# Release ->
|
||||
"Release": ctypes.WINFUNCTYPE(ULONG)(2, "Release"),
|
||||
# GetTypeInfoCount -> pctinfo:*UINT
|
||||
"GetTypeInfoCount": ctypes.WINFUNCTYPE(HRESULT, POINTER(UINT))(3, "GetTypeInfoCount"),
|
||||
# GetTypeInfo -> iTInfo:UINT, lcid:LCID, ppTInfo:**ITypeInfo
|
||||
"GetTypeInfo": ctypes.WINFUNCTYPE(HRESULT, UINT, LCID, POINTER(PVOID))(4, "GetTypeInfo"),
|
||||
# GetIDsOfNames -> riid:REFIID, rgszNames:*LPOLESTR, cNames:UINT, lcid:LCID, rgDispId:*DISPID
|
||||
"GetIDsOfNames": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(LPOLESTR), UINT, LCID, POINTER(DISPID))(5, "GetIDsOfNames"),
|
||||
# Invoke -> dispIdMember:DISPID, riid:REFIID, lcid:LCID, wFlags:WORD, pDispParams:*DISPPARAMS, pVarResult:*VARIANT, pExcepInfo:*EXCEPINFO, puArgErr:*UINT
|
||||
"Invoke": ctypes.WINFUNCTYPE(HRESULT, DISPID, REFIID, LCID, WORD, POINTER(DISPPARAMS), POINTER(VARIANT), POINTER(EXCEPINFO), POINTER(UINT))(6, "Invoke"),
|
||||
# RestrictService -> serviceName:BSTR, appName:BSTR, restrictService:VARIANT_BOOL, serviceSidRestricted:VARIANT_BOOL
|
||||
"RestrictService": ctypes.WINFUNCTYPE(HRESULT, BSTR, BSTR, VARIANT_BOOL, VARIANT_BOOL)(7, "RestrictService"),
|
||||
# ServiceRestricted -> serviceName:BSTR, appName:BSTR, serviceRestricted:*VARIANT_BOOL
|
||||
"ServiceRestricted": ctypes.WINFUNCTYPE(HRESULT, BSTR, BSTR, POINTER(VARIANT_BOOL))(8, "ServiceRestricted"),
|
||||
# get_Rules -> rules:**INetFwRules
|
||||
"get_Rules": ctypes.WINFUNCTYPE(HRESULT, POINTER(PVOID))(9, "get_Rules"),
|
||||
}
|
||||
|
||||
class IBackgroundCopyError(COMInterface):
|
||||
IID = generate_IID(0x19C613A0, 0xFCB8, 0x4F28, 0x81, 0xAE, 0x89, 0x7C, 0x3D, 0x07, 0x8F, 0x81, name="IBackgroundCopyError", strid="19C613A0-FCB8-4F28-81AE-897C3D078F81")
|
||||
_functions_ = {
|
||||
@@ -151,27 +126,6 @@ class IBackgroundCopyFile(COMInterface):
|
||||
"GetProgress": ctypes.WINFUNCTYPE(HRESULT, POINTER(BG_FILE_PROGRESS))(5, "GetProgress"),
|
||||
}
|
||||
|
||||
class IEnumBackgroundCopyFiles(COMInterface):
|
||||
IID = generate_IID(0xCA51E165, 0xC365, 0x424C, 0x8D, 0x41, 0x24, 0xAA, 0xA4, 0xFF, 0x3C, 0x40, name="IEnumBackgroundCopyFiles", strid="CA51E165-C365-424C-8D41-24AAA4FF3C40")
|
||||
_functions_ = {
|
||||
# QueryInterface -> riid:REFIID, ppvObject:**void
|
||||
"QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"),
|
||||
# AddRef ->
|
||||
"AddRef": ctypes.WINFUNCTYPE(ULONG)(1, "AddRef"),
|
||||
# Release ->
|
||||
"Release": ctypes.WINFUNCTYPE(ULONG)(2, "Release"),
|
||||
# Next -> celt:ULONG, rgelt:**IBackgroundCopyFile, pceltFetched:*ULONG
|
||||
"Next": ctypes.WINFUNCTYPE(HRESULT, ULONG, POINTER(PVOID), POINTER(ULONG))(3, "Next"),
|
||||
# Skip -> celt:ULONG
|
||||
"Skip": ctypes.WINFUNCTYPE(HRESULT, ULONG)(4, "Skip"),
|
||||
# Reset ->
|
||||
"Reset": ctypes.WINFUNCTYPE(HRESULT)(5, "Reset"),
|
||||
# Clone -> ppenum:**IEnumBackgroundCopyFiles
|
||||
"Clone": ctypes.WINFUNCTYPE(HRESULT, POINTER(PVOID))(6, "Clone"),
|
||||
# GetCount -> puCount:*ULONG
|
||||
"GetCount": ctypes.WINFUNCTYPE(HRESULT, POINTER(ULONG))(7, "GetCount"),
|
||||
}
|
||||
|
||||
class IBackgroundCopyJob(COMInterface):
|
||||
IID = generate_IID(0x37668D37, 0x507E, 0x4160, 0x93, 0x16, 0x26, 0x30, 0x6D, 0x15, 0x0B, 0x12, name="IBackgroundCopyJob", strid="37668D37-507E-4160-9316-26306D150B12")
|
||||
_functions_ = {
|
||||
@@ -247,8 +201,8 @@ class IBackgroundCopyJob(COMInterface):
|
||||
"TakeOwnership": ctypes.WINFUNCTYPE(HRESULT)(34, "TakeOwnership"),
|
||||
}
|
||||
|
||||
class IWbemClassObject(COMInterface):
|
||||
IID = generate_IID(0xDC12A681, 0x737F, 0x11CF, 0x88, 0x4D, 0x00, 0xAA, 0x00, 0x4B, 0x2E, 0x24, name="IWbemClassObject", strid="DC12A681-737F-11CF-884D-00AA004B2E24")
|
||||
class IBackgroundCopyManager(COMInterface):
|
||||
IID = generate_IID(0x5CE34C0D, 0x0DC9, 0x4C1F, 0x89, 0x7C, 0xDA, 0xA1, 0xB7, 0x8C, 0xEE, 0x7C, name="IBackgroundCopyManager", strid="5CE34C0D-0DC9-4C1F-897C-DAA1B78CEE7C")
|
||||
_functions_ = {
|
||||
# QueryInterface -> riid:REFIID, ppvObject:**void
|
||||
"QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"),
|
||||
@@ -256,54 +210,94 @@ class IWbemClassObject(COMInterface):
|
||||
"AddRef": ctypes.WINFUNCTYPE(ULONG)(1, "AddRef"),
|
||||
# Release ->
|
||||
"Release": ctypes.WINFUNCTYPE(ULONG)(2, "Release"),
|
||||
# GetQualifierSet -> ppQualSet:**IWbemQualifierSet
|
||||
"GetQualifierSet": ctypes.WINFUNCTYPE(HRESULT, POINTER(PVOID))(3, "GetQualifierSet"),
|
||||
# Get -> wszName:LPCWSTR, lFlags:LONG, pVal:*VARIANT, pType:*CIMTYPE, plFlavor:*LONG
|
||||
"Get": ctypes.WINFUNCTYPE(HRESULT, LPCWSTR, LONG, POINTER(VARIANT), POINTER(CIMTYPE), POINTER(LONG))(4, "Get"),
|
||||
# Put -> wszName:LPCWSTR, lFlags:LONG, pVal:*VARIANT, Type:CIMTYPE
|
||||
"Put": ctypes.WINFUNCTYPE(HRESULT, LPCWSTR, LONG, POINTER(VARIANT), CIMTYPE)(5, "Put"),
|
||||
# Delete -> wszName:LPCWSTR
|
||||
"Delete": ctypes.WINFUNCTYPE(HRESULT, LPCWSTR)(6, "Delete"),
|
||||
# GetNames -> wszQualifierName:LPCWSTR, lFlags:LONG, pQualifierVal:*VARIANT, pNames:**SAFEARRAY
|
||||
"GetNames": ctypes.WINFUNCTYPE(HRESULT, LPCWSTR, LONG, POINTER(VARIANT), POINTER(POINTER(SAFEARRAY)))(7, "GetNames"),
|
||||
# BeginEnumeration -> lEnumFlags:LONG
|
||||
"BeginEnumeration": ctypes.WINFUNCTYPE(HRESULT, LONG)(8, "BeginEnumeration"),
|
||||
# Next -> lFlags:LONG, strName:*BSTR, pVal:*VARIANT, pType:*CIMTYPE, plFlavor:*LONG
|
||||
"Next": ctypes.WINFUNCTYPE(HRESULT, LONG, POINTER(BSTR), POINTER(VARIANT), POINTER(CIMTYPE), POINTER(LONG))(9, "Next"),
|
||||
# EndEnumeration ->
|
||||
"EndEnumeration": ctypes.WINFUNCTYPE(HRESULT)(10, "EndEnumeration"),
|
||||
# GetPropertyQualifierSet -> wszProperty:LPCWSTR, ppQualSet:**IWbemQualifierSet
|
||||
"GetPropertyQualifierSet": ctypes.WINFUNCTYPE(HRESULT, LPCWSTR, POINTER(PVOID))(11, "GetPropertyQualifierSet"),
|
||||
# Clone -> ppCopy:**IWbemClassObject
|
||||
"Clone": ctypes.WINFUNCTYPE(HRESULT, POINTER(PVOID))(12, "Clone"),
|
||||
# GetObjectText -> lFlags:LONG, pstrObjectText:*BSTR
|
||||
"GetObjectText": ctypes.WINFUNCTYPE(HRESULT, LONG, POINTER(BSTR))(13, "GetObjectText"),
|
||||
# SpawnDerivedClass -> lFlags:LONG, ppNewClass:**IWbemClassObject
|
||||
"SpawnDerivedClass": ctypes.WINFUNCTYPE(HRESULT, LONG, POINTER(PVOID))(14, "SpawnDerivedClass"),
|
||||
# SpawnInstance -> lFlags:LONG, ppNewInstance:**IWbemClassObject
|
||||
"SpawnInstance": ctypes.WINFUNCTYPE(HRESULT, LONG, POINTER(PVOID))(15, "SpawnInstance"),
|
||||
# CompareTo -> lFlags:LONG, pCompareTo:*IWbemClassObject
|
||||
"CompareTo": ctypes.WINFUNCTYPE(HRESULT, LONG, PVOID)(16, "CompareTo"),
|
||||
# GetPropertyOrigin -> wszName:LPCWSTR, pstrClassName:*BSTR
|
||||
"GetPropertyOrigin": ctypes.WINFUNCTYPE(HRESULT, LPCWSTR, POINTER(BSTR))(17, "GetPropertyOrigin"),
|
||||
# InheritsFrom -> strAncestor:LPCWSTR
|
||||
"InheritsFrom": ctypes.WINFUNCTYPE(HRESULT, LPCWSTR)(18, "InheritsFrom"),
|
||||
# GetMethod -> wszName:LPCWSTR, lFlags:LONG, ppInSignature:**IWbemClassObject, ppOutSignature:**IWbemClassObject
|
||||
"GetMethod": ctypes.WINFUNCTYPE(HRESULT, LPCWSTR, LONG, POINTER(PVOID), POINTER(PVOID))(19, "GetMethod"),
|
||||
# PutMethod -> wszName:LPCWSTR, lFlags:LONG, pInSignature:*IWbemClassObject, pOutSignature:*IWbemClassObject
|
||||
"PutMethod": ctypes.WINFUNCTYPE(HRESULT, LPCWSTR, LONG, PVOID, PVOID)(20, "PutMethod"),
|
||||
# DeleteMethod -> wszName:LPCWSTR
|
||||
"DeleteMethod": ctypes.WINFUNCTYPE(HRESULT, LPCWSTR)(21, "DeleteMethod"),
|
||||
# BeginMethodEnumeration -> lEnumFlags:LONG
|
||||
"BeginMethodEnumeration": ctypes.WINFUNCTYPE(HRESULT, LONG)(22, "BeginMethodEnumeration"),
|
||||
# NextMethod -> lFlags:LONG, pstrName:*BSTR, ppInSignature:**IWbemClassObject, ppOutSignature:**IWbemClassObject
|
||||
"NextMethod": ctypes.WINFUNCTYPE(HRESULT, LONG, POINTER(BSTR), POINTER(PVOID), POINTER(PVOID))(23, "NextMethod"),
|
||||
# EndMethodEnumeration ->
|
||||
"EndMethodEnumeration": ctypes.WINFUNCTYPE(HRESULT)(24, "EndMethodEnumeration"),
|
||||
# GetMethodQualifierSet -> wszMethod:LPCWSTR, ppQualSet:**IWbemQualifierSet
|
||||
"GetMethodQualifierSet": ctypes.WINFUNCTYPE(HRESULT, LPCWSTR, POINTER(PVOID))(25, "GetMethodQualifierSet"),
|
||||
# GetMethodOrigin -> wszMethodName:LPCWSTR, pstrClassName:*BSTR
|
||||
"GetMethodOrigin": ctypes.WINFUNCTYPE(HRESULT, LPCWSTR, POINTER(BSTR))(26, "GetMethodOrigin"),
|
||||
# CreateJob -> DisplayName:LPCWSTR, Type:BG_JOB_TYPE, pJobId:*GUID, ppJob:**IBackgroundCopyJob
|
||||
"CreateJob": ctypes.WINFUNCTYPE(HRESULT, LPCWSTR, BG_JOB_TYPE, POINTER(GUID), POINTER(PVOID))(3, "CreateJob"),
|
||||
# GetJob -> jobID:REFGUID, ppJob:**IBackgroundCopyJob
|
||||
"GetJob": ctypes.WINFUNCTYPE(HRESULT, REFGUID, POINTER(PVOID))(4, "GetJob"),
|
||||
# EnumJobs -> dwFlags:DWORD, ppEnum:**IEnumBackgroundCopyJobs
|
||||
"EnumJobs": ctypes.WINFUNCTYPE(HRESULT, DWORD, POINTER(PVOID))(5, "EnumJobs"),
|
||||
# GetErrorDescription -> hResult:HRESULT, LanguageId:DWORD, pErrorDescription:*LPWSTR
|
||||
"GetErrorDescription": ctypes.WINFUNCTYPE(HRESULT, HRESULT, DWORD, POINTER(LPWSTR))(6, "GetErrorDescription"),
|
||||
}
|
||||
|
||||
class IDispatch(COMInterface):
|
||||
IID = generate_IID(0x00020400, 0x0000, 0x0000, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, name="IDispatch", strid="00020400-0000-0000-C000-000000000046")
|
||||
_functions_ = {
|
||||
# QueryInterface -> riid:REFIID, ppvObject:**void
|
||||
"QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"),
|
||||
# AddRef ->
|
||||
"AddRef": ctypes.WINFUNCTYPE(ULONG)(1, "AddRef"),
|
||||
# Release ->
|
||||
"Release": ctypes.WINFUNCTYPE(ULONG)(2, "Release"),
|
||||
# GetTypeInfoCount -> pctinfo:*UINT
|
||||
"GetTypeInfoCount": ctypes.WINFUNCTYPE(HRESULT, POINTER(UINT))(3, "GetTypeInfoCount"),
|
||||
# GetTypeInfo -> iTInfo:UINT, lcid:LCID, ppTInfo:**ITypeInfo
|
||||
"GetTypeInfo": ctypes.WINFUNCTYPE(HRESULT, UINT, LCID, POINTER(PVOID))(4, "GetTypeInfo"),
|
||||
# GetIDsOfNames -> riid:REFIID, rgszNames:*LPOLESTR, cNames:UINT, lcid:LCID, rgDispId:*DISPID
|
||||
"GetIDsOfNames": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(LPOLESTR), UINT, LCID, POINTER(DISPID))(5, "GetIDsOfNames"),
|
||||
# Invoke -> dispIdMember:DISPID, riid:REFIID, lcid:LCID, wFlags:WORD, pDispParams:*DISPPARAMS, pVarResult:*VARIANT, pExcepInfo:*EXCEPINFO, puArgErr:*UINT
|
||||
"Invoke": ctypes.WINFUNCTYPE(HRESULT, DISPID, REFIID, LCID, WORD, POINTER(DISPPARAMS), POINTER(VARIANT), POINTER(EXCEPINFO), POINTER(UINT))(6, "Invoke"),
|
||||
}
|
||||
|
||||
class IEnumBackgroundCopyFiles(COMInterface):
|
||||
IID = generate_IID(0xCA51E165, 0xC365, 0x424C, 0x8D, 0x41, 0x24, 0xAA, 0xA4, 0xFF, 0x3C, 0x40, name="IEnumBackgroundCopyFiles", strid="CA51E165-C365-424C-8D41-24AAA4FF3C40")
|
||||
_functions_ = {
|
||||
# QueryInterface -> riid:REFIID, ppvObject:**void
|
||||
"QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"),
|
||||
# AddRef ->
|
||||
"AddRef": ctypes.WINFUNCTYPE(ULONG)(1, "AddRef"),
|
||||
# Release ->
|
||||
"Release": ctypes.WINFUNCTYPE(ULONG)(2, "Release"),
|
||||
# Next -> celt:ULONG, rgelt:**IBackgroundCopyFile, pceltFetched:*ULONG
|
||||
"Next": ctypes.WINFUNCTYPE(HRESULT, ULONG, POINTER(PVOID), POINTER(ULONG))(3, "Next"),
|
||||
# Skip -> celt:ULONG
|
||||
"Skip": ctypes.WINFUNCTYPE(HRESULT, ULONG)(4, "Skip"),
|
||||
# Reset ->
|
||||
"Reset": ctypes.WINFUNCTYPE(HRESULT)(5, "Reset"),
|
||||
# Clone -> ppenum:**IEnumBackgroundCopyFiles
|
||||
"Clone": ctypes.WINFUNCTYPE(HRESULT, POINTER(PVOID))(6, "Clone"),
|
||||
# GetCount -> puCount:*ULONG
|
||||
"GetCount": ctypes.WINFUNCTYPE(HRESULT, POINTER(ULONG))(7, "GetCount"),
|
||||
}
|
||||
|
||||
class IEnumBackgroundCopyJobs(COMInterface):
|
||||
IID = generate_IID(0x1AF4F612, 0x3B71, 0x466F, 0x8F, 0x58, 0x7B, 0x6F, 0x73, 0xAC, 0x57, 0xAD, name="IEnumBackgroundCopyJobs", strid="1AF4F612-3B71-466F-8F58-7B6F73AC57AD")
|
||||
_functions_ = {
|
||||
# QueryInterface -> riid:REFIID, ppvObject:**void
|
||||
"QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"),
|
||||
# AddRef ->
|
||||
"AddRef": ctypes.WINFUNCTYPE(ULONG)(1, "AddRef"),
|
||||
# Release ->
|
||||
"Release": ctypes.WINFUNCTYPE(ULONG)(2, "Release"),
|
||||
# Next -> celt:ULONG, rgelt:**IBackgroundCopyJob, pceltFetched:*ULONG
|
||||
"Next": ctypes.WINFUNCTYPE(HRESULT, ULONG, POINTER(PVOID), POINTER(ULONG))(3, "Next"),
|
||||
# Skip -> celt:ULONG
|
||||
"Skip": ctypes.WINFUNCTYPE(HRESULT, ULONG)(4, "Skip"),
|
||||
# Reset ->
|
||||
"Reset": ctypes.WINFUNCTYPE(HRESULT)(5, "Reset"),
|
||||
# Clone -> ppenum:**IEnumBackgroundCopyJobs
|
||||
"Clone": ctypes.WINFUNCTYPE(HRESULT, POINTER(PVOID))(6, "Clone"),
|
||||
# GetCount -> puCount:*ULONG
|
||||
"GetCount": ctypes.WINFUNCTYPE(HRESULT, POINTER(ULONG))(7, "GetCount"),
|
||||
}
|
||||
|
||||
class IEnumVARIANT(COMInterface):
|
||||
IID = generate_IID(0x00020404, 0x0000, 0x0000, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, name="IEnumVARIANT", strid="00020404-0000-0000-C000-000000000046")
|
||||
_functions_ = {
|
||||
# QueryInterface -> riid:REFIID, ppvObject:**void
|
||||
"QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"),
|
||||
# AddRef ->
|
||||
"AddRef": ctypes.WINFUNCTYPE(ULONG)(1, "AddRef"),
|
||||
# Release ->
|
||||
"Release": ctypes.WINFUNCTYPE(ULONG)(2, "Release"),
|
||||
# Next -> celt:ULONG, rgVar:*VARIANT, pCeltFetched:*ULONG
|
||||
"Next": ctypes.WINFUNCTYPE(HRESULT, ULONG, POINTER(VARIANT), POINTER(ULONG))(3, "Next"),
|
||||
# Skip -> celt:ULONG
|
||||
"Skip": ctypes.WINFUNCTYPE(HRESULT, ULONG)(4, "Skip"),
|
||||
# Reset ->
|
||||
"Reset": ctypes.WINFUNCTYPE(HRESULT)(5, "Reset"),
|
||||
# Clone -> ppEnum:**IEnumVARIANT
|
||||
"Clone": ctypes.WINFUNCTYPE(HRESULT, POINTER(PVOID))(6, "Clone"),
|
||||
}
|
||||
|
||||
class IEnumWbemClassObject(COMInterface):
|
||||
@@ -390,213 +384,6 @@ class INetFwPolicy2(COMInterface):
|
||||
"get_LocalPolicyModifyState": ctypes.WINFUNCTYPE(HRESULT, POINTER(NET_FW_MODIFY_STATE))(28, "get_LocalPolicyModifyState"),
|
||||
}
|
||||
|
||||
class IWbemCallResult(COMInterface):
|
||||
IID = generate_IID(0x44ACA675, 0xE8FC, 0x11D0, 0xA0, 0x7C, 0x00, 0xC0, 0x4F, 0xB6, 0x88, 0x20, name="IWbemCallResult", strid="44ACA675-E8FC-11D0-A07C-00C04FB68820")
|
||||
_functions_ = {
|
||||
# QueryInterface -> riid:REFIID, ppvObject:**void
|
||||
"QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"),
|
||||
# AddRef ->
|
||||
"AddRef": ctypes.WINFUNCTYPE(ULONG)(1, "AddRef"),
|
||||
# Release ->
|
||||
"Release": ctypes.WINFUNCTYPE(ULONG)(2, "Release"),
|
||||
# GetResultObject -> lTimeout:LONG, ppResultObject:**IWbemClassObject
|
||||
"GetResultObject": ctypes.WINFUNCTYPE(HRESULT, LONG, POINTER(PVOID))(3, "GetResultObject"),
|
||||
# GetResultString -> lTimeout:LONG, pstrResultString:*BSTR
|
||||
"GetResultString": ctypes.WINFUNCTYPE(HRESULT, LONG, POINTER(BSTR))(4, "GetResultString"),
|
||||
# GetResultServices -> lTimeout:LONG, ppServices:**IWbemServices
|
||||
"GetResultServices": ctypes.WINFUNCTYPE(HRESULT, LONG, POINTER(PVOID))(5, "GetResultServices"),
|
||||
# GetCallStatus -> lTimeout:LONG, plStatus:*LONG
|
||||
"GetCallStatus": ctypes.WINFUNCTYPE(HRESULT, LONG, POINTER(LONG))(6, "GetCallStatus"),
|
||||
}
|
||||
|
||||
class IEnumBackgroundCopyJobs(COMInterface):
|
||||
IID = generate_IID(0x1AF4F612, 0x3B71, 0x466F, 0x8F, 0x58, 0x7B, 0x6F, 0x73, 0xAC, 0x57, 0xAD, name="IEnumBackgroundCopyJobs", strid="1AF4F612-3B71-466F-8F58-7B6F73AC57AD")
|
||||
_functions_ = {
|
||||
# QueryInterface -> riid:REFIID, ppvObject:**void
|
||||
"QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"),
|
||||
# AddRef ->
|
||||
"AddRef": ctypes.WINFUNCTYPE(ULONG)(1, "AddRef"),
|
||||
# Release ->
|
||||
"Release": ctypes.WINFUNCTYPE(ULONG)(2, "Release"),
|
||||
# Next -> celt:ULONG, rgelt:**IBackgroundCopyJob, pceltFetched:*ULONG
|
||||
"Next": ctypes.WINFUNCTYPE(HRESULT, ULONG, POINTER(PVOID), POINTER(ULONG))(3, "Next"),
|
||||
# Skip -> celt:ULONG
|
||||
"Skip": ctypes.WINFUNCTYPE(HRESULT, ULONG)(4, "Skip"),
|
||||
# Reset ->
|
||||
"Reset": ctypes.WINFUNCTYPE(HRESULT)(5, "Reset"),
|
||||
# Clone -> ppenum:**IEnumBackgroundCopyJobs
|
||||
"Clone": ctypes.WINFUNCTYPE(HRESULT, POINTER(PVOID))(6, "Clone"),
|
||||
# GetCount -> puCount:*ULONG
|
||||
"GetCount": ctypes.WINFUNCTYPE(HRESULT, POINTER(ULONG))(7, "GetCount"),
|
||||
}
|
||||
|
||||
class IBackgroundCopyManager(COMInterface):
|
||||
IID = generate_IID(0x5CE34C0D, 0x0DC9, 0x4C1F, 0x89, 0x7C, 0xDA, 0xA1, 0xB7, 0x8C, 0xEE, 0x7C, name="IBackgroundCopyManager", strid="5CE34C0D-0DC9-4C1F-897C-DAA1B78CEE7C")
|
||||
_functions_ = {
|
||||
# QueryInterface -> riid:REFIID, ppvObject:**void
|
||||
"QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"),
|
||||
# AddRef ->
|
||||
"AddRef": ctypes.WINFUNCTYPE(ULONG)(1, "AddRef"),
|
||||
# Release ->
|
||||
"Release": ctypes.WINFUNCTYPE(ULONG)(2, "Release"),
|
||||
# CreateJob -> DisplayName:LPCWSTR, Type:BG_JOB_TYPE, pJobId:*GUID, ppJob:**IBackgroundCopyJob
|
||||
"CreateJob": ctypes.WINFUNCTYPE(HRESULT, LPCWSTR, BG_JOB_TYPE, POINTER(GUID), POINTER(PVOID))(3, "CreateJob"),
|
||||
# GetJob -> jobID:REFGUID, ppJob:**IBackgroundCopyJob
|
||||
"GetJob": ctypes.WINFUNCTYPE(HRESULT, REFGUID, POINTER(PVOID))(4, "GetJob"),
|
||||
# EnumJobs -> dwFlags:DWORD, ppEnum:**IEnumBackgroundCopyJobs
|
||||
"EnumJobs": ctypes.WINFUNCTYPE(HRESULT, DWORD, POINTER(PVOID))(5, "EnumJobs"),
|
||||
# GetErrorDescription -> hResult:HRESULT, LanguageId:DWORD, pErrorDescription:*LPWSTR
|
||||
"GetErrorDescription": ctypes.WINFUNCTYPE(HRESULT, HRESULT, DWORD, POINTER(LPWSTR))(6, "GetErrorDescription"),
|
||||
}
|
||||
|
||||
class IDispatch(COMInterface):
|
||||
IID = generate_IID(0x00020400, 0x0000, 0x0000, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, name="IDispatch", strid="00020400-0000-0000-C000-000000000046")
|
||||
_functions_ = {
|
||||
# QueryInterface -> riid:REFIID, ppvObject:**void
|
||||
"QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"),
|
||||
# AddRef ->
|
||||
"AddRef": ctypes.WINFUNCTYPE(ULONG)(1, "AddRef"),
|
||||
# Release ->
|
||||
"Release": ctypes.WINFUNCTYPE(ULONG)(2, "Release"),
|
||||
# GetTypeInfoCount -> pctinfo:*UINT
|
||||
"GetTypeInfoCount": ctypes.WINFUNCTYPE(HRESULT, POINTER(UINT))(3, "GetTypeInfoCount"),
|
||||
# GetTypeInfo -> iTInfo:UINT, lcid:LCID, ppTInfo:**ITypeInfo
|
||||
"GetTypeInfo": ctypes.WINFUNCTYPE(HRESULT, UINT, LCID, POINTER(PVOID))(4, "GetTypeInfo"),
|
||||
# GetIDsOfNames -> riid:REFIID, rgszNames:*LPOLESTR, cNames:UINT, lcid:LCID, rgDispId:*DISPID
|
||||
"GetIDsOfNames": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(LPOLESTR), UINT, LCID, POINTER(DISPID))(5, "GetIDsOfNames"),
|
||||
# Invoke -> dispIdMember:DISPID, riid:REFIID, lcid:LCID, wFlags:WORD, pDispParams:*DISPPARAMS, pVarResult:*VARIANT, pExcepInfo:*EXCEPINFO, puArgErr:*UINT
|
||||
"Invoke": ctypes.WINFUNCTYPE(HRESULT, DISPID, REFIID, LCID, WORD, POINTER(DISPPARAMS), POINTER(VARIANT), POINTER(EXCEPINFO), POINTER(UINT))(6, "Invoke"),
|
||||
}
|
||||
|
||||
class IWbemServices(COMInterface):
|
||||
IID = generate_IID(0x9556DC99, 0x828C, 0x11CF, 0xA3, 0x7E, 0x00, 0xAA, 0x00, 0x32, 0x40, 0xC7, name="IWbemServices", strid="9556DC99-828C-11CF-A37E-00AA003240C7")
|
||||
_functions_ = {
|
||||
# QueryInterface -> riid:REFIID, ppvObject:**void
|
||||
"QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"),
|
||||
# AddRef ->
|
||||
"AddRef": ctypes.WINFUNCTYPE(ULONG)(1, "AddRef"),
|
||||
# Release ->
|
||||
"Release": ctypes.WINFUNCTYPE(ULONG)(2, "Release"),
|
||||
# OpenNamespace -> strNamespace:BSTR, lFlags:LONG, pCtx:*IWbemContext, ppWorkingNamespace:**IWbemServices, ppResult:**IWbemCallResult
|
||||
"OpenNamespace": ctypes.WINFUNCTYPE(HRESULT, BSTR, LONG, PVOID, POINTER(PVOID), POINTER(PVOID))(3, "OpenNamespace"),
|
||||
# CancelAsyncCall -> pSink:*IWbemObjectSink
|
||||
"CancelAsyncCall": ctypes.WINFUNCTYPE(HRESULT, PVOID)(4, "CancelAsyncCall"),
|
||||
# QueryObjectSink -> lFlags:LONG, ppResponseHandler:**IWbemObjectSink
|
||||
"QueryObjectSink": ctypes.WINFUNCTYPE(HRESULT, LONG, POINTER(PVOID))(5, "QueryObjectSink"),
|
||||
# GetObject -> strObjectPath:BSTR, lFlags:LONG, pCtx:*IWbemContext, ppObject:**IWbemClassObject, ppCallResult:**IWbemCallResult
|
||||
"GetObject": ctypes.WINFUNCTYPE(HRESULT, BSTR, LONG, PVOID, POINTER(PVOID), POINTER(PVOID))(6, "GetObject"),
|
||||
# GetObjectAsync -> strObjectPath:BSTR, lFlags:LONG, pCtx:*IWbemContext, pResponseHandler:*IWbemObjectSink
|
||||
"GetObjectAsync": ctypes.WINFUNCTYPE(HRESULT, BSTR, LONG, PVOID, PVOID)(7, "GetObjectAsync"),
|
||||
# PutClass -> pObject:*IWbemClassObject, lFlags:LONG, pCtx:*IWbemContext, ppCallResult:**IWbemCallResult
|
||||
"PutClass": ctypes.WINFUNCTYPE(HRESULT, PVOID, LONG, PVOID, POINTER(PVOID))(8, "PutClass"),
|
||||
# PutClassAsync -> pObject:*IWbemClassObject, lFlags:LONG, pCtx:*IWbemContext, pResponseHandler:*IWbemObjectSink
|
||||
"PutClassAsync": ctypes.WINFUNCTYPE(HRESULT, PVOID, LONG, PVOID, PVOID)(9, "PutClassAsync"),
|
||||
# DeleteClass -> strClass:BSTR, lFlags:LONG, pCtx:*IWbemContext, ppCallResult:**IWbemCallResult
|
||||
"DeleteClass": ctypes.WINFUNCTYPE(HRESULT, BSTR, LONG, PVOID, POINTER(PVOID))(10, "DeleteClass"),
|
||||
# DeleteClassAsync -> strClass:BSTR, lFlags:LONG, pCtx:*IWbemContext, pResponseHandler:*IWbemObjectSink
|
||||
"DeleteClassAsync": ctypes.WINFUNCTYPE(HRESULT, BSTR, LONG, PVOID, PVOID)(11, "DeleteClassAsync"),
|
||||
# CreateClassEnum -> strSuperclass:BSTR, lFlags:LONG, pCtx:*IWbemContext, ppEnum:**IEnumWbemClassObject
|
||||
"CreateClassEnum": ctypes.WINFUNCTYPE(HRESULT, BSTR, LONG, PVOID, POINTER(PVOID))(12, "CreateClassEnum"),
|
||||
# CreateClassEnumAsync -> strSuperclass:BSTR, lFlags:LONG, pCtx:*IWbemContext, pResponseHandler:*IWbemObjectSink
|
||||
"CreateClassEnumAsync": ctypes.WINFUNCTYPE(HRESULT, BSTR, LONG, PVOID, PVOID)(13, "CreateClassEnumAsync"),
|
||||
# PutInstance -> pInst:*IWbemClassObject, lFlags:LONG, pCtx:*IWbemContext, ppCallResult:**IWbemCallResult
|
||||
"PutInstance": ctypes.WINFUNCTYPE(HRESULT, PVOID, LONG, PVOID, POINTER(PVOID))(14, "PutInstance"),
|
||||
# PutInstanceAsync -> pInst:*IWbemClassObject, lFlags:LONG, pCtx:*IWbemContext, pResponseHandler:*IWbemObjectSink
|
||||
"PutInstanceAsync": ctypes.WINFUNCTYPE(HRESULT, PVOID, LONG, PVOID, PVOID)(15, "PutInstanceAsync"),
|
||||
# DeleteInstance -> strObjectPath:BSTR, lFlags:LONG, pCtx:*IWbemContext, ppCallResult:**IWbemCallResult
|
||||
"DeleteInstance": ctypes.WINFUNCTYPE(HRESULT, BSTR, LONG, PVOID, POINTER(PVOID))(16, "DeleteInstance"),
|
||||
# DeleteInstanceAsync -> strObjectPath:BSTR, lFlags:LONG, pCtx:*IWbemContext, pResponseHandler:*IWbemObjectSink
|
||||
"DeleteInstanceAsync": ctypes.WINFUNCTYPE(HRESULT, BSTR, LONG, PVOID, PVOID)(17, "DeleteInstanceAsync"),
|
||||
# CreateInstanceEnum -> strFilter:BSTR, lFlags:LONG, pCtx:*IWbemContext, ppEnum:**IEnumWbemClassObject
|
||||
"CreateInstanceEnum": ctypes.WINFUNCTYPE(HRESULT, BSTR, LONG, PVOID, POINTER(PVOID))(18, "CreateInstanceEnum"),
|
||||
# CreateInstanceEnumAsync -> strFilter:BSTR, lFlags:LONG, pCtx:*IWbemContext, pResponseHandler:*IWbemObjectSink
|
||||
"CreateInstanceEnumAsync": ctypes.WINFUNCTYPE(HRESULT, BSTR, LONG, PVOID, PVOID)(19, "CreateInstanceEnumAsync"),
|
||||
# ExecQuery -> strQueryLanguage:BSTR, strQuery:BSTR, lFlags:LONG, pCtx:*IWbemContext, ppEnum:**IEnumWbemClassObject
|
||||
"ExecQuery": ctypes.WINFUNCTYPE(HRESULT, BSTR, BSTR, LONG, PVOID, POINTER(PVOID))(20, "ExecQuery"),
|
||||
# ExecQueryAsync -> strQueryLanguage:BSTR, strQuery:BSTR, lFlags:LONG, pCtx:*IWbemContext, pResponseHandler:*IWbemObjectSink
|
||||
"ExecQueryAsync": ctypes.WINFUNCTYPE(HRESULT, BSTR, BSTR, LONG, PVOID, PVOID)(21, "ExecQueryAsync"),
|
||||
# ExecNotificationQuery -> strQueryLanguage:BSTR, strQuery:BSTR, lFlags:LONG, pCtx:*IWbemContext, ppEnum:**IEnumWbemClassObject
|
||||
"ExecNotificationQuery": ctypes.WINFUNCTYPE(HRESULT, BSTR, BSTR, LONG, PVOID, POINTER(PVOID))(22, "ExecNotificationQuery"),
|
||||
# ExecNotificationQueryAsync -> strQueryLanguage:BSTR, strQuery:BSTR, lFlags:LONG, pCtx:*IWbemContext, pResponseHandler:*IWbemObjectSink
|
||||
"ExecNotificationQueryAsync": ctypes.WINFUNCTYPE(HRESULT, BSTR, BSTR, LONG, PVOID, PVOID)(23, "ExecNotificationQueryAsync"),
|
||||
# ExecMethod -> strObjectPath:BSTR, strMethodName:BSTR, lFlags:LONG, pCtx:*IWbemContext, pInParams:*IWbemClassObject, ppOutParams:**IWbemClassObject, ppCallResult:**IWbemCallResult
|
||||
"ExecMethod": ctypes.WINFUNCTYPE(HRESULT, BSTR, BSTR, LONG, PVOID, PVOID, POINTER(PVOID), POINTER(PVOID))(24, "ExecMethod"),
|
||||
# ExecMethodAsync -> strObjectPath:BSTR, strMethodName:BSTR, lFlags:LONG, pCtx:*IWbemContext, pInParams:*IWbemClassObject, pResponseHandler:*IWbemObjectSink
|
||||
"ExecMethodAsync": ctypes.WINFUNCTYPE(HRESULT, BSTR, BSTR, LONG, PVOID, PVOID, PVOID)(25, "ExecMethodAsync"),
|
||||
}
|
||||
|
||||
class IWbemQualifierSet(COMInterface):
|
||||
IID = generate_IID(0xDC12A680, 0x737F, 0x11CF, 0x88, 0x4D, 0x00, 0xAA, 0x00, 0x4B, 0x2E, 0x24, name="IWbemQualifierSet", strid="DC12A680-737F-11CF-884D-00AA004B2E24")
|
||||
_functions_ = {
|
||||
# QueryInterface -> riid:REFIID, ppvObject:**void
|
||||
"QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"),
|
||||
# AddRef ->
|
||||
"AddRef": ctypes.WINFUNCTYPE(ULONG)(1, "AddRef"),
|
||||
# Release ->
|
||||
"Release": ctypes.WINFUNCTYPE(ULONG)(2, "Release"),
|
||||
# Get -> wszName:LPCWSTR, lFlags:LONG, pVal:*VARIANT, plFlavor:*LONG
|
||||
"Get": ctypes.WINFUNCTYPE(HRESULT, LPCWSTR, LONG, POINTER(VARIANT), POINTER(LONG))(3, "Get"),
|
||||
# Put -> wszName:LPCWSTR, pVal:*VARIANT, lFlavor:LONG
|
||||
"Put": ctypes.WINFUNCTYPE(HRESULT, LPCWSTR, POINTER(VARIANT), LONG)(4, "Put"),
|
||||
# Delete -> wszName:LPCWSTR
|
||||
"Delete": ctypes.WINFUNCTYPE(HRESULT, LPCWSTR)(5, "Delete"),
|
||||
# GetNames -> lFlags:LONG, pNames:**SAFEARRAY
|
||||
"GetNames": ctypes.WINFUNCTYPE(HRESULT, LONG, POINTER(POINTER(SAFEARRAY)))(6, "GetNames"),
|
||||
# BeginEnumeration -> lFlags:LONG
|
||||
"BeginEnumeration": ctypes.WINFUNCTYPE(HRESULT, LONG)(7, "BeginEnumeration"),
|
||||
# Next -> lFlags:LONG, pstrName:*BSTR, pVal:*VARIANT, plFlavor:*LONG
|
||||
"Next": ctypes.WINFUNCTYPE(HRESULT, LONG, POINTER(BSTR), POINTER(VARIANT), POINTER(LONG))(8, "Next"),
|
||||
# EndEnumeration ->
|
||||
"EndEnumeration": ctypes.WINFUNCTYPE(HRESULT)(9, "EndEnumeration"),
|
||||
}
|
||||
|
||||
class IWbemLocator(COMInterface):
|
||||
IID = generate_IID(0xDC12A687, 0x737F, 0x11CF, 0x88, 0x4D, 0x00, 0xAA, 0x00, 0x4B, 0x2E, 0x24, name="IWbemLocator", strid="DC12A687-737F-11CF-884D-00AA004B2E24")
|
||||
_functions_ = {
|
||||
# QueryInterface -> riid:REFIID, ppvObject:**void
|
||||
"QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"),
|
||||
# AddRef ->
|
||||
"AddRef": ctypes.WINFUNCTYPE(ULONG)(1, "AddRef"),
|
||||
# Release ->
|
||||
"Release": ctypes.WINFUNCTYPE(ULONG)(2, "Release"),
|
||||
# ConnectServer -> strNetworkResource:BSTR, strUser:BSTR, strPassword:BSTR, strLocale:BSTR, lSecurityFlags:LONG, strAuthority:BSTR, pCtx:*IWbemContext, ppNamespace:**IWbemServices
|
||||
"ConnectServer": ctypes.WINFUNCTYPE(HRESULT, BSTR, BSTR, BSTR, BSTR, LONG, BSTR, PVOID, POINTER(PVOID))(3, "ConnectServer"),
|
||||
}
|
||||
|
||||
class IWbemObjectSink(COMInterface):
|
||||
IID = generate_IID(0x7C857801, 0x7381, 0x11CF, 0x88, 0x4D, 0x00, 0xAA, 0x00, 0x4B, 0x2E, 0x24, name="IWbemObjectSink", strid="7C857801-7381-11CF-884D-00AA004B2E24")
|
||||
_functions_ = {
|
||||
# QueryInterface -> riid:REFIID, ppvObject:**void
|
||||
"QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"),
|
||||
# AddRef ->
|
||||
"AddRef": ctypes.WINFUNCTYPE(ULONG)(1, "AddRef"),
|
||||
# Release ->
|
||||
"Release": ctypes.WINFUNCTYPE(ULONG)(2, "Release"),
|
||||
# Indicate -> lObjectCount:LONG, apObjArray:**IWbemClassObject
|
||||
"Indicate": ctypes.WINFUNCTYPE(HRESULT, LONG, POINTER(PVOID))(3, "Indicate"),
|
||||
# SetStatus -> lFlags:LONG, hResult:HRESULT, strParam:BSTR, pObjParam:*IWbemClassObject
|
||||
"SetStatus": ctypes.WINFUNCTYPE(HRESULT, LONG, HRESULT, BSTR, PVOID)(4, "SetStatus"),
|
||||
}
|
||||
|
||||
class IEnumVARIANT(COMInterface):
|
||||
IID = generate_IID(0x00020404, 0x0000, 0x0000, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, name="IEnumVARIANT", strid="00020404-0000-0000-C000-000000000046")
|
||||
_functions_ = {
|
||||
# QueryInterface -> riid:REFIID, ppvObject:**void
|
||||
"QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"),
|
||||
# AddRef ->
|
||||
"AddRef": ctypes.WINFUNCTYPE(ULONG)(1, "AddRef"),
|
||||
# Release ->
|
||||
"Release": ctypes.WINFUNCTYPE(ULONG)(2, "Release"),
|
||||
# Next -> celt:ULONG, rgVar:*VARIANT, pCeltFetched:*ULONG
|
||||
"Next": ctypes.WINFUNCTYPE(HRESULT, ULONG, POINTER(VARIANT), POINTER(ULONG))(3, "Next"),
|
||||
# Skip -> celt:ULONG
|
||||
"Skip": ctypes.WINFUNCTYPE(HRESULT, ULONG)(4, "Skip"),
|
||||
# Reset ->
|
||||
"Reset": ctypes.WINFUNCTYPE(HRESULT)(5, "Reset"),
|
||||
# Clone -> ppEnum:**IEnumVARIANT
|
||||
"Clone": ctypes.WINFUNCTYPE(HRESULT, POINTER(PVOID))(6, "Clone"),
|
||||
}
|
||||
|
||||
class INetFwRules(COMInterface):
|
||||
IID = generate_IID(0x9C4C6277, 0x5027, 0x441E, 0xAF, 0xAE, 0xCA, 0x1F, 0x54, 0x2D, 0xA0, 0x09, name="INetFwRules", strid="9C4C6277-5027-441E-AFAE-CA1F542DA009")
|
||||
_functions_ = {
|
||||
@@ -626,35 +413,6 @@ class INetFwRules(COMInterface):
|
||||
"get__NewEnum": ctypes.WINFUNCTYPE(HRESULT, POINTER(PVOID))(11, "get__NewEnum"),
|
||||
}
|
||||
|
||||
class IWbemContext(COMInterface):
|
||||
IID = generate_IID(0x44ACA674, 0xE8FC, 0x11D0, 0xA0, 0x7C, 0x00, 0xC0, 0x4F, 0xB6, 0x88, 0x20, name="IWbemContext", strid="44ACA674-E8FC-11D0-A07C-00C04FB68820")
|
||||
_functions_ = {
|
||||
# QueryInterface -> riid:REFIID, ppvObject:**void
|
||||
"QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"),
|
||||
# AddRef ->
|
||||
"AddRef": ctypes.WINFUNCTYPE(ULONG)(1, "AddRef"),
|
||||
# Release ->
|
||||
"Release": ctypes.WINFUNCTYPE(ULONG)(2, "Release"),
|
||||
# Clone -> ppNewCopy:**IWbemContext
|
||||
"Clone": ctypes.WINFUNCTYPE(HRESULT, POINTER(PVOID))(3, "Clone"),
|
||||
# GetNames -> lFlags:LONG, pNames:**SAFEARRAY
|
||||
"GetNames": ctypes.WINFUNCTYPE(HRESULT, LONG, POINTER(POINTER(SAFEARRAY)))(4, "GetNames"),
|
||||
# BeginEnumeration -> lFlags:LONG
|
||||
"BeginEnumeration": ctypes.WINFUNCTYPE(HRESULT, LONG)(5, "BeginEnumeration"),
|
||||
# Next -> lFlags:LONG, pstrName:*BSTR, pValue:*VARIANT
|
||||
"Next": ctypes.WINFUNCTYPE(HRESULT, LONG, POINTER(BSTR), POINTER(VARIANT))(6, "Next"),
|
||||
# EndEnumeration ->
|
||||
"EndEnumeration": ctypes.WINFUNCTYPE(HRESULT)(7, "EndEnumeration"),
|
||||
# SetValue -> wszName:LPCWSTR, lFlags:LONG, pValue:*VARIANT
|
||||
"SetValue": ctypes.WINFUNCTYPE(HRESULT, LPCWSTR, LONG, POINTER(VARIANT))(8, "SetValue"),
|
||||
# GetValue -> wszName:LPCWSTR, lFlags:LONG, pValue:*VARIANT
|
||||
"GetValue": ctypes.WINFUNCTYPE(HRESULT, LPCWSTR, LONG, POINTER(VARIANT))(9, "GetValue"),
|
||||
# DeleteValue -> wszName:LPCWSTR, lFlags:LONG
|
||||
"DeleteValue": ctypes.WINFUNCTYPE(HRESULT, LPCWSTR, LONG)(10, "DeleteValue"),
|
||||
# DeleteAll ->
|
||||
"DeleteAll": ctypes.WINFUNCTYPE(HRESULT)(11, "DeleteAll"),
|
||||
}
|
||||
|
||||
class INetFwRule(COMInterface):
|
||||
IID = generate_IID(0xAF230D27, 0xBABA, 0x4E42, 0xAC, 0xED, 0xF5, 0x24, 0xF2, 0x2C, 0xFC, 0xE2, name="INetFwRule", strid="AF230D27-BABA-4E42-ACED-F524F22CFCE2")
|
||||
_functions_ = {
|
||||
@@ -746,6 +504,101 @@ class INetFwRule(COMInterface):
|
||||
"put_Action": ctypes.WINFUNCTYPE(HRESULT, NET_FW_ACTION)(42, "put_Action"),
|
||||
}
|
||||
|
||||
class INetFwServiceRestriction(COMInterface):
|
||||
IID = generate_IID(0x8267BBE3, 0xF890, 0x491C, 0xB7, 0xB6, 0x2D, 0xB1, 0xEF, 0x0E, 0x5D, 0x2B, name="INetFwServiceRestriction", strid="8267BBE3-F890-491C-B7B6-2DB1EF0E5D2B")
|
||||
_functions_ = {
|
||||
# QueryInterface -> riid:REFIID, ppvObject:**void
|
||||
"QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"),
|
||||
# AddRef ->
|
||||
"AddRef": ctypes.WINFUNCTYPE(ULONG)(1, "AddRef"),
|
||||
# Release ->
|
||||
"Release": ctypes.WINFUNCTYPE(ULONG)(2, "Release"),
|
||||
# GetTypeInfoCount -> pctinfo:*UINT
|
||||
"GetTypeInfoCount": ctypes.WINFUNCTYPE(HRESULT, POINTER(UINT))(3, "GetTypeInfoCount"),
|
||||
# GetTypeInfo -> iTInfo:UINT, lcid:LCID, ppTInfo:**ITypeInfo
|
||||
"GetTypeInfo": ctypes.WINFUNCTYPE(HRESULT, UINT, LCID, POINTER(PVOID))(4, "GetTypeInfo"),
|
||||
# GetIDsOfNames -> riid:REFIID, rgszNames:*LPOLESTR, cNames:UINT, lcid:LCID, rgDispId:*DISPID
|
||||
"GetIDsOfNames": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(LPOLESTR), UINT, LCID, POINTER(DISPID))(5, "GetIDsOfNames"),
|
||||
# Invoke -> dispIdMember:DISPID, riid:REFIID, lcid:LCID, wFlags:WORD, pDispParams:*DISPPARAMS, pVarResult:*VARIANT, pExcepInfo:*EXCEPINFO, puArgErr:*UINT
|
||||
"Invoke": ctypes.WINFUNCTYPE(HRESULT, DISPID, REFIID, LCID, WORD, POINTER(DISPPARAMS), POINTER(VARIANT), POINTER(EXCEPINFO), POINTER(UINT))(6, "Invoke"),
|
||||
# RestrictService -> serviceName:BSTR, appName:BSTR, restrictService:VARIANT_BOOL, serviceSidRestricted:VARIANT_BOOL
|
||||
"RestrictService": ctypes.WINFUNCTYPE(HRESULT, BSTR, BSTR, VARIANT_BOOL, VARIANT_BOOL)(7, "RestrictService"),
|
||||
# ServiceRestricted -> serviceName:BSTR, appName:BSTR, serviceRestricted:*VARIANT_BOOL
|
||||
"ServiceRestricted": ctypes.WINFUNCTYPE(HRESULT, BSTR, BSTR, POINTER(VARIANT_BOOL))(8, "ServiceRestricted"),
|
||||
# get_Rules -> rules:**INetFwRules
|
||||
"get_Rules": ctypes.WINFUNCTYPE(HRESULT, POINTER(PVOID))(9, "get_Rules"),
|
||||
}
|
||||
|
||||
class IPersistFile(COMInterface):
|
||||
IID = generate_IID(0x0000010B, 0x0000, 0x0000, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, name="IPersistFile", strid="0000010B-0000-0000-C000-000000000046")
|
||||
_functions_ = {
|
||||
# QueryInterface -> riid:REFIID, ppvObject:**void
|
||||
"QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"),
|
||||
# AddRef ->
|
||||
"AddRef": ctypes.WINFUNCTYPE(ULONG)(1, "AddRef"),
|
||||
# Release ->
|
||||
"Release": ctypes.WINFUNCTYPE(ULONG)(2, "Release"),
|
||||
# GetClassID -> pClassID:*CLSID
|
||||
"GetClassID": ctypes.WINFUNCTYPE(HRESULT, POINTER(CLSID))(3, "GetClassID"),
|
||||
# IsDirty ->
|
||||
"IsDirty": ctypes.WINFUNCTYPE(HRESULT)(4, "IsDirty"),
|
||||
# Load -> pszFileName:LPCOLESTR, dwMode:DWORD
|
||||
"Load": ctypes.WINFUNCTYPE(HRESULT, LPCOLESTR, DWORD)(5, "Load"),
|
||||
# Save -> pszFileName:LPCOLESTR, fRemember:BOOL
|
||||
"Save": ctypes.WINFUNCTYPE(HRESULT, LPCOLESTR, BOOL)(6, "Save"),
|
||||
# SaveCompleted -> pszFileName:LPCOLESTR
|
||||
"SaveCompleted": ctypes.WINFUNCTYPE(HRESULT, LPCOLESTR)(7, "SaveCompleted"),
|
||||
# GetCurFile -> ppszFileName:*LPOLESTR
|
||||
"GetCurFile": ctypes.WINFUNCTYPE(HRESULT, POINTER(LPOLESTR))(8, "GetCurFile"),
|
||||
}
|
||||
|
||||
class IShellLinkA(COMInterface):
|
||||
IID = generate_IID(0x000214EE, 0x0000, 0x0000, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, name="IShellLinkA", strid="000214EE-0000-0000-C000-000000000046")
|
||||
_functions_ = {
|
||||
# QueryInterface -> riid:REFIID, ppvObject:**void
|
||||
"QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"),
|
||||
# AddRef ->
|
||||
"AddRef": ctypes.WINFUNCTYPE(ULONG)(1, "AddRef"),
|
||||
# Release ->
|
||||
"Release": ctypes.WINFUNCTYPE(ULONG)(2, "Release"),
|
||||
# GetPath -> pszFile:LPSTR, cch:INT, pfd:*WIN32_FIND_DATAA, fFlags:DWORD
|
||||
"GetPath": ctypes.WINFUNCTYPE(HRESULT, LPSTR, INT, POINTER(WIN32_FIND_DATAA), DWORD)(3, "GetPath"),
|
||||
# GetIDList -> ppidl:*PIDLIST_ABSOLUTE
|
||||
"GetIDList": ctypes.WINFUNCTYPE(HRESULT, POINTER(PIDLIST_ABSOLUTE))(4, "GetIDList"),
|
||||
# SetIDList -> pidl:PCIDLIST_ABSOLUTE
|
||||
"SetIDList": ctypes.WINFUNCTYPE(HRESULT, PCIDLIST_ABSOLUTE)(5, "SetIDList"),
|
||||
# GetDescription -> pszName:LPSTR, cch:INT
|
||||
"GetDescription": ctypes.WINFUNCTYPE(HRESULT, LPSTR, INT)(6, "GetDescription"),
|
||||
# SetDescription -> pszName:LPCSTR
|
||||
"SetDescription": ctypes.WINFUNCTYPE(HRESULT, LPCSTR)(7, "SetDescription"),
|
||||
# GetWorkingDirectory -> pszDir:LPSTR, cch:INT
|
||||
"GetWorkingDirectory": ctypes.WINFUNCTYPE(HRESULT, LPSTR, INT)(8, "GetWorkingDirectory"),
|
||||
# SetWorkingDirectory -> pszDir:LPCSTR
|
||||
"SetWorkingDirectory": ctypes.WINFUNCTYPE(HRESULT, LPCSTR)(9, "SetWorkingDirectory"),
|
||||
# GetArguments -> pszArgs:LPSTR, cch:INT
|
||||
"GetArguments": ctypes.WINFUNCTYPE(HRESULT, LPSTR, INT)(10, "GetArguments"),
|
||||
# SetArguments -> pszArgs:LPCSTR
|
||||
"SetArguments": ctypes.WINFUNCTYPE(HRESULT, LPCSTR)(11, "SetArguments"),
|
||||
# GetHotkey -> pwHotkey:*WORD
|
||||
"GetHotkey": ctypes.WINFUNCTYPE(HRESULT, POINTER(WORD))(12, "GetHotkey"),
|
||||
# SetHotkey -> wHotkey:WORD
|
||||
"SetHotkey": ctypes.WINFUNCTYPE(HRESULT, WORD)(13, "SetHotkey"),
|
||||
# GetShowCmd -> piShowCmd:*INT
|
||||
"GetShowCmd": ctypes.WINFUNCTYPE(HRESULT, POINTER(INT))(14, "GetShowCmd"),
|
||||
# SetShowCmd -> iShowCmd:INT
|
||||
"SetShowCmd": ctypes.WINFUNCTYPE(HRESULT, INT)(15, "SetShowCmd"),
|
||||
# GetIconLocation -> pszIconPath:LPSTR, cch:INT, piIcon:*INT
|
||||
"GetIconLocation": ctypes.WINFUNCTYPE(HRESULT, LPSTR, INT, POINTER(INT))(16, "GetIconLocation"),
|
||||
# SetIconLocation -> pszIconPath:LPCSTR, iIcon:INT
|
||||
"SetIconLocation": ctypes.WINFUNCTYPE(HRESULT, LPCSTR, INT)(17, "SetIconLocation"),
|
||||
# SetRelativePath -> pszPathRel:LPCSTR, dwReserved:DWORD
|
||||
"SetRelativePath": ctypes.WINFUNCTYPE(HRESULT, LPCSTR, DWORD)(18, "SetRelativePath"),
|
||||
# Resolve -> hwnd:HWND, fFlags:DWORD
|
||||
"Resolve": ctypes.WINFUNCTYPE(HRESULT, HWND, DWORD)(19, "Resolve"),
|
||||
# SetPath -> pszFile:LPCSTR
|
||||
"SetPath": ctypes.WINFUNCTYPE(HRESULT, LPCSTR)(20, "SetPath"),
|
||||
}
|
||||
|
||||
class IUnknown(COMInterface):
|
||||
IID = generate_IID(0x00000000, 0x0000, 0x0000, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, name="IUnknown", strid="00000000-0000-0000-C000-000000000046")
|
||||
_functions_ = {
|
||||
@@ -757,3 +610,220 @@ class IUnknown(COMInterface):
|
||||
"Release": ctypes.WINFUNCTYPE(ULONG)(2, "Release"),
|
||||
}
|
||||
|
||||
class IWbemCallResult(COMInterface):
|
||||
IID = generate_IID(0x44ACA675, 0xE8FC, 0x11D0, 0xA0, 0x7C, 0x00, 0xC0, 0x4F, 0xB6, 0x88, 0x20, name="IWbemCallResult", strid="44ACA675-E8FC-11D0-A07C-00C04FB68820")
|
||||
_functions_ = {
|
||||
# QueryInterface -> riid:REFIID, ppvObject:**void
|
||||
"QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"),
|
||||
# AddRef ->
|
||||
"AddRef": ctypes.WINFUNCTYPE(ULONG)(1, "AddRef"),
|
||||
# Release ->
|
||||
"Release": ctypes.WINFUNCTYPE(ULONG)(2, "Release"),
|
||||
# GetResultObject -> lTimeout:LONG, ppResultObject:**IWbemClassObject
|
||||
"GetResultObject": ctypes.WINFUNCTYPE(HRESULT, LONG, POINTER(PVOID))(3, "GetResultObject"),
|
||||
# GetResultString -> lTimeout:LONG, pstrResultString:*BSTR
|
||||
"GetResultString": ctypes.WINFUNCTYPE(HRESULT, LONG, POINTER(BSTR))(4, "GetResultString"),
|
||||
# GetResultServices -> lTimeout:LONG, ppServices:**IWbemServices
|
||||
"GetResultServices": ctypes.WINFUNCTYPE(HRESULT, LONG, POINTER(PVOID))(5, "GetResultServices"),
|
||||
# GetCallStatus -> lTimeout:LONG, plStatus:*LONG
|
||||
"GetCallStatus": ctypes.WINFUNCTYPE(HRESULT, LONG, POINTER(LONG))(6, "GetCallStatus"),
|
||||
}
|
||||
|
||||
class IWbemClassObject(COMInterface):
|
||||
IID = generate_IID(0xDC12A681, 0x737F, 0x11CF, 0x88, 0x4D, 0x00, 0xAA, 0x00, 0x4B, 0x2E, 0x24, name="IWbemClassObject", strid="DC12A681-737F-11CF-884D-00AA004B2E24")
|
||||
_functions_ = {
|
||||
# QueryInterface -> riid:REFIID, ppvObject:**void
|
||||
"QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"),
|
||||
# AddRef ->
|
||||
"AddRef": ctypes.WINFUNCTYPE(ULONG)(1, "AddRef"),
|
||||
# Release ->
|
||||
"Release": ctypes.WINFUNCTYPE(ULONG)(2, "Release"),
|
||||
# GetQualifierSet -> ppQualSet:**IWbemQualifierSet
|
||||
"GetQualifierSet": ctypes.WINFUNCTYPE(HRESULT, POINTER(PVOID))(3, "GetQualifierSet"),
|
||||
# Get -> wszName:LPCWSTR, lFlags:LONG, pVal:*VARIANT, pType:*CIMTYPE, plFlavor:*LONG
|
||||
"Get": ctypes.WINFUNCTYPE(HRESULT, LPCWSTR, LONG, POINTER(VARIANT), POINTER(CIMTYPE), POINTER(LONG))(4, "Get"),
|
||||
# Put -> wszName:LPCWSTR, lFlags:LONG, pVal:*VARIANT, Type:CIMTYPE
|
||||
"Put": ctypes.WINFUNCTYPE(HRESULT, LPCWSTR, LONG, POINTER(VARIANT), CIMTYPE)(5, "Put"),
|
||||
# Delete -> wszName:LPCWSTR
|
||||
"Delete": ctypes.WINFUNCTYPE(HRESULT, LPCWSTR)(6, "Delete"),
|
||||
# GetNames -> wszQualifierName:LPCWSTR, lFlags:LONG, pQualifierVal:*VARIANT, pNames:**SAFEARRAY
|
||||
"GetNames": ctypes.WINFUNCTYPE(HRESULT, LPCWSTR, LONG, POINTER(VARIANT), POINTER(POINTER(SAFEARRAY)))(7, "GetNames"),
|
||||
# BeginEnumeration -> lEnumFlags:LONG
|
||||
"BeginEnumeration": ctypes.WINFUNCTYPE(HRESULT, LONG)(8, "BeginEnumeration"),
|
||||
# Next -> lFlags:LONG, strName:*BSTR, pVal:*VARIANT, pType:*CIMTYPE, plFlavor:*LONG
|
||||
"Next": ctypes.WINFUNCTYPE(HRESULT, LONG, POINTER(BSTR), POINTER(VARIANT), POINTER(CIMTYPE), POINTER(LONG))(9, "Next"),
|
||||
# EndEnumeration ->
|
||||
"EndEnumeration": ctypes.WINFUNCTYPE(HRESULT)(10, "EndEnumeration"),
|
||||
# GetPropertyQualifierSet -> wszProperty:LPCWSTR, ppQualSet:**IWbemQualifierSet
|
||||
"GetPropertyQualifierSet": ctypes.WINFUNCTYPE(HRESULT, LPCWSTR, POINTER(PVOID))(11, "GetPropertyQualifierSet"),
|
||||
# Clone -> ppCopy:**IWbemClassObject
|
||||
"Clone": ctypes.WINFUNCTYPE(HRESULT, POINTER(PVOID))(12, "Clone"),
|
||||
# GetObjectText -> lFlags:LONG, pstrObjectText:*BSTR
|
||||
"GetObjectText": ctypes.WINFUNCTYPE(HRESULT, LONG, POINTER(BSTR))(13, "GetObjectText"),
|
||||
# SpawnDerivedClass -> lFlags:LONG, ppNewClass:**IWbemClassObject
|
||||
"SpawnDerivedClass": ctypes.WINFUNCTYPE(HRESULT, LONG, POINTER(PVOID))(14, "SpawnDerivedClass"),
|
||||
# SpawnInstance -> lFlags:LONG, ppNewInstance:**IWbemClassObject
|
||||
"SpawnInstance": ctypes.WINFUNCTYPE(HRESULT, LONG, POINTER(PVOID))(15, "SpawnInstance"),
|
||||
# CompareTo -> lFlags:LONG, pCompareTo:*IWbemClassObject
|
||||
"CompareTo": ctypes.WINFUNCTYPE(HRESULT, LONG, PVOID)(16, "CompareTo"),
|
||||
# GetPropertyOrigin -> wszName:LPCWSTR, pstrClassName:*BSTR
|
||||
"GetPropertyOrigin": ctypes.WINFUNCTYPE(HRESULT, LPCWSTR, POINTER(BSTR))(17, "GetPropertyOrigin"),
|
||||
# InheritsFrom -> strAncestor:LPCWSTR
|
||||
"InheritsFrom": ctypes.WINFUNCTYPE(HRESULT, LPCWSTR)(18, "InheritsFrom"),
|
||||
# GetMethod -> wszName:LPCWSTR, lFlags:LONG, ppInSignature:**IWbemClassObject, ppOutSignature:**IWbemClassObject
|
||||
"GetMethod": ctypes.WINFUNCTYPE(HRESULT, LPCWSTR, LONG, POINTER(PVOID), POINTER(PVOID))(19, "GetMethod"),
|
||||
# PutMethod -> wszName:LPCWSTR, lFlags:LONG, pInSignature:*IWbemClassObject, pOutSignature:*IWbemClassObject
|
||||
"PutMethod": ctypes.WINFUNCTYPE(HRESULT, LPCWSTR, LONG, PVOID, PVOID)(20, "PutMethod"),
|
||||
# DeleteMethod -> wszName:LPCWSTR
|
||||
"DeleteMethod": ctypes.WINFUNCTYPE(HRESULT, LPCWSTR)(21, "DeleteMethod"),
|
||||
# BeginMethodEnumeration -> lEnumFlags:LONG
|
||||
"BeginMethodEnumeration": ctypes.WINFUNCTYPE(HRESULT, LONG)(22, "BeginMethodEnumeration"),
|
||||
# NextMethod -> lFlags:LONG, pstrName:*BSTR, ppInSignature:**IWbemClassObject, ppOutSignature:**IWbemClassObject
|
||||
"NextMethod": ctypes.WINFUNCTYPE(HRESULT, LONG, POINTER(BSTR), POINTER(PVOID), POINTER(PVOID))(23, "NextMethod"),
|
||||
# EndMethodEnumeration ->
|
||||
"EndMethodEnumeration": ctypes.WINFUNCTYPE(HRESULT)(24, "EndMethodEnumeration"),
|
||||
# GetMethodQualifierSet -> wszMethod:LPCWSTR, ppQualSet:**IWbemQualifierSet
|
||||
"GetMethodQualifierSet": ctypes.WINFUNCTYPE(HRESULT, LPCWSTR, POINTER(PVOID))(25, "GetMethodQualifierSet"),
|
||||
# GetMethodOrigin -> wszMethodName:LPCWSTR, pstrClassName:*BSTR
|
||||
"GetMethodOrigin": ctypes.WINFUNCTYPE(HRESULT, LPCWSTR, POINTER(BSTR))(26, "GetMethodOrigin"),
|
||||
}
|
||||
|
||||
class IWbemContext(COMInterface):
|
||||
IID = generate_IID(0x44ACA674, 0xE8FC, 0x11D0, 0xA0, 0x7C, 0x00, 0xC0, 0x4F, 0xB6, 0x88, 0x20, name="IWbemContext", strid="44ACA674-E8FC-11D0-A07C-00C04FB68820")
|
||||
_functions_ = {
|
||||
# QueryInterface -> riid:REFIID, ppvObject:**void
|
||||
"QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"),
|
||||
# AddRef ->
|
||||
"AddRef": ctypes.WINFUNCTYPE(ULONG)(1, "AddRef"),
|
||||
# Release ->
|
||||
"Release": ctypes.WINFUNCTYPE(ULONG)(2, "Release"),
|
||||
# Clone -> ppNewCopy:**IWbemContext
|
||||
"Clone": ctypes.WINFUNCTYPE(HRESULT, POINTER(PVOID))(3, "Clone"),
|
||||
# GetNames -> lFlags:LONG, pNames:**SAFEARRAY
|
||||
"GetNames": ctypes.WINFUNCTYPE(HRESULT, LONG, POINTER(POINTER(SAFEARRAY)))(4, "GetNames"),
|
||||
# BeginEnumeration -> lFlags:LONG
|
||||
"BeginEnumeration": ctypes.WINFUNCTYPE(HRESULT, LONG)(5, "BeginEnumeration"),
|
||||
# Next -> lFlags:LONG, pstrName:*BSTR, pValue:*VARIANT
|
||||
"Next": ctypes.WINFUNCTYPE(HRESULT, LONG, POINTER(BSTR), POINTER(VARIANT))(6, "Next"),
|
||||
# EndEnumeration ->
|
||||
"EndEnumeration": ctypes.WINFUNCTYPE(HRESULT)(7, "EndEnumeration"),
|
||||
# SetValue -> wszName:LPCWSTR, lFlags:LONG, pValue:*VARIANT
|
||||
"SetValue": ctypes.WINFUNCTYPE(HRESULT, LPCWSTR, LONG, POINTER(VARIANT))(8, "SetValue"),
|
||||
# GetValue -> wszName:LPCWSTR, lFlags:LONG, pValue:*VARIANT
|
||||
"GetValue": ctypes.WINFUNCTYPE(HRESULT, LPCWSTR, LONG, POINTER(VARIANT))(9, "GetValue"),
|
||||
# DeleteValue -> wszName:LPCWSTR, lFlags:LONG
|
||||
"DeleteValue": ctypes.WINFUNCTYPE(HRESULT, LPCWSTR, LONG)(10, "DeleteValue"),
|
||||
# DeleteAll ->
|
||||
"DeleteAll": ctypes.WINFUNCTYPE(HRESULT)(11, "DeleteAll"),
|
||||
}
|
||||
|
||||
class IWbemLocator(COMInterface):
|
||||
IID = generate_IID(0xDC12A687, 0x737F, 0x11CF, 0x88, 0x4D, 0x00, 0xAA, 0x00, 0x4B, 0x2E, 0x24, name="IWbemLocator", strid="DC12A687-737F-11CF-884D-00AA004B2E24")
|
||||
_functions_ = {
|
||||
# QueryInterface -> riid:REFIID, ppvObject:**void
|
||||
"QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"),
|
||||
# AddRef ->
|
||||
"AddRef": ctypes.WINFUNCTYPE(ULONG)(1, "AddRef"),
|
||||
# Release ->
|
||||
"Release": ctypes.WINFUNCTYPE(ULONG)(2, "Release"),
|
||||
# ConnectServer -> strNetworkResource:BSTR, strUser:BSTR, strPassword:BSTR, strLocale:BSTR, lSecurityFlags:LONG, strAuthority:BSTR, pCtx:*IWbemContext, ppNamespace:**IWbemServices
|
||||
"ConnectServer": ctypes.WINFUNCTYPE(HRESULT, BSTR, BSTR, BSTR, BSTR, LONG, BSTR, PVOID, POINTER(PVOID))(3, "ConnectServer"),
|
||||
}
|
||||
|
||||
class IWbemObjectSink(COMInterface):
|
||||
IID = generate_IID(0x7C857801, 0x7381, 0x11CF, 0x88, 0x4D, 0x00, 0xAA, 0x00, 0x4B, 0x2E, 0x24, name="IWbemObjectSink", strid="7C857801-7381-11CF-884D-00AA004B2E24")
|
||||
_functions_ = {
|
||||
# QueryInterface -> riid:REFIID, ppvObject:**void
|
||||
"QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"),
|
||||
# AddRef ->
|
||||
"AddRef": ctypes.WINFUNCTYPE(ULONG)(1, "AddRef"),
|
||||
# Release ->
|
||||
"Release": ctypes.WINFUNCTYPE(ULONG)(2, "Release"),
|
||||
# Indicate -> lObjectCount:LONG, apObjArray:**IWbemClassObject
|
||||
"Indicate": ctypes.WINFUNCTYPE(HRESULT, LONG, POINTER(PVOID))(3, "Indicate"),
|
||||
# SetStatus -> lFlags:LONG, hResult:HRESULT, strParam:BSTR, pObjParam:*IWbemClassObject
|
||||
"SetStatus": ctypes.WINFUNCTYPE(HRESULT, LONG, HRESULT, BSTR, PVOID)(4, "SetStatus"),
|
||||
}
|
||||
|
||||
class IWbemQualifierSet(COMInterface):
|
||||
IID = generate_IID(0xDC12A680, 0x737F, 0x11CF, 0x88, 0x4D, 0x00, 0xAA, 0x00, 0x4B, 0x2E, 0x24, name="IWbemQualifierSet", strid="DC12A680-737F-11CF-884D-00AA004B2E24")
|
||||
_functions_ = {
|
||||
# QueryInterface -> riid:REFIID, ppvObject:**void
|
||||
"QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"),
|
||||
# AddRef ->
|
||||
"AddRef": ctypes.WINFUNCTYPE(ULONG)(1, "AddRef"),
|
||||
# Release ->
|
||||
"Release": ctypes.WINFUNCTYPE(ULONG)(2, "Release"),
|
||||
# Get -> wszName:LPCWSTR, lFlags:LONG, pVal:*VARIANT, plFlavor:*LONG
|
||||
"Get": ctypes.WINFUNCTYPE(HRESULT, LPCWSTR, LONG, POINTER(VARIANT), POINTER(LONG))(3, "Get"),
|
||||
# Put -> wszName:LPCWSTR, pVal:*VARIANT, lFlavor:LONG
|
||||
"Put": ctypes.WINFUNCTYPE(HRESULT, LPCWSTR, POINTER(VARIANT), LONG)(4, "Put"),
|
||||
# Delete -> wszName:LPCWSTR
|
||||
"Delete": ctypes.WINFUNCTYPE(HRESULT, LPCWSTR)(5, "Delete"),
|
||||
# GetNames -> lFlags:LONG, pNames:**SAFEARRAY
|
||||
"GetNames": ctypes.WINFUNCTYPE(HRESULT, LONG, POINTER(POINTER(SAFEARRAY)))(6, "GetNames"),
|
||||
# BeginEnumeration -> lFlags:LONG
|
||||
"BeginEnumeration": ctypes.WINFUNCTYPE(HRESULT, LONG)(7, "BeginEnumeration"),
|
||||
# Next -> lFlags:LONG, pstrName:*BSTR, pVal:*VARIANT, plFlavor:*LONG
|
||||
"Next": ctypes.WINFUNCTYPE(HRESULT, LONG, POINTER(BSTR), POINTER(VARIANT), POINTER(LONG))(8, "Next"),
|
||||
# EndEnumeration ->
|
||||
"EndEnumeration": ctypes.WINFUNCTYPE(HRESULT)(9, "EndEnumeration"),
|
||||
}
|
||||
|
||||
class IWbemServices(COMInterface):
|
||||
IID = generate_IID(0x9556DC99, 0x828C, 0x11CF, 0xA3, 0x7E, 0x00, 0xAA, 0x00, 0x32, 0x40, 0xC7, name="IWbemServices", strid="9556DC99-828C-11CF-A37E-00AA003240C7")
|
||||
_functions_ = {
|
||||
# QueryInterface -> riid:REFIID, ppvObject:**void
|
||||
"QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"),
|
||||
# AddRef ->
|
||||
"AddRef": ctypes.WINFUNCTYPE(ULONG)(1, "AddRef"),
|
||||
# Release ->
|
||||
"Release": ctypes.WINFUNCTYPE(ULONG)(2, "Release"),
|
||||
# OpenNamespace -> strNamespace:BSTR, lFlags:LONG, pCtx:*IWbemContext, ppWorkingNamespace:**IWbemServices, ppResult:**IWbemCallResult
|
||||
"OpenNamespace": ctypes.WINFUNCTYPE(HRESULT, BSTR, LONG, PVOID, POINTER(PVOID), POINTER(PVOID))(3, "OpenNamespace"),
|
||||
# CancelAsyncCall -> pSink:*IWbemObjectSink
|
||||
"CancelAsyncCall": ctypes.WINFUNCTYPE(HRESULT, PVOID)(4, "CancelAsyncCall"),
|
||||
# QueryObjectSink -> lFlags:LONG, ppResponseHandler:**IWbemObjectSink
|
||||
"QueryObjectSink": ctypes.WINFUNCTYPE(HRESULT, LONG, POINTER(PVOID))(5, "QueryObjectSink"),
|
||||
# GetObject -> strObjectPath:BSTR, lFlags:LONG, pCtx:*IWbemContext, ppObject:**IWbemClassObject, ppCallResult:**IWbemCallResult
|
||||
"GetObject": ctypes.WINFUNCTYPE(HRESULT, BSTR, LONG, PVOID, POINTER(PVOID), POINTER(PVOID))(6, "GetObject"),
|
||||
# GetObjectAsync -> strObjectPath:BSTR, lFlags:LONG, pCtx:*IWbemContext, pResponseHandler:*IWbemObjectSink
|
||||
"GetObjectAsync": ctypes.WINFUNCTYPE(HRESULT, BSTR, LONG, PVOID, PVOID)(7, "GetObjectAsync"),
|
||||
# PutClass -> pObject:*IWbemClassObject, lFlags:LONG, pCtx:*IWbemContext, ppCallResult:**IWbemCallResult
|
||||
"PutClass": ctypes.WINFUNCTYPE(HRESULT, PVOID, LONG, PVOID, POINTER(PVOID))(8, "PutClass"),
|
||||
# PutClassAsync -> pObject:*IWbemClassObject, lFlags:LONG, pCtx:*IWbemContext, pResponseHandler:*IWbemObjectSink
|
||||
"PutClassAsync": ctypes.WINFUNCTYPE(HRESULT, PVOID, LONG, PVOID, PVOID)(9, "PutClassAsync"),
|
||||
# DeleteClass -> strClass:BSTR, lFlags:LONG, pCtx:*IWbemContext, ppCallResult:**IWbemCallResult
|
||||
"DeleteClass": ctypes.WINFUNCTYPE(HRESULT, BSTR, LONG, PVOID, POINTER(PVOID))(10, "DeleteClass"),
|
||||
# DeleteClassAsync -> strClass:BSTR, lFlags:LONG, pCtx:*IWbemContext, pResponseHandler:*IWbemObjectSink
|
||||
"DeleteClassAsync": ctypes.WINFUNCTYPE(HRESULT, BSTR, LONG, PVOID, PVOID)(11, "DeleteClassAsync"),
|
||||
# CreateClassEnum -> strSuperclass:BSTR, lFlags:LONG, pCtx:*IWbemContext, ppEnum:**IEnumWbemClassObject
|
||||
"CreateClassEnum": ctypes.WINFUNCTYPE(HRESULT, BSTR, LONG, PVOID, POINTER(PVOID))(12, "CreateClassEnum"),
|
||||
# CreateClassEnumAsync -> strSuperclass:BSTR, lFlags:LONG, pCtx:*IWbemContext, pResponseHandler:*IWbemObjectSink
|
||||
"CreateClassEnumAsync": ctypes.WINFUNCTYPE(HRESULT, BSTR, LONG, PVOID, PVOID)(13, "CreateClassEnumAsync"),
|
||||
# PutInstance -> pInst:*IWbemClassObject, lFlags:LONG, pCtx:*IWbemContext, ppCallResult:**IWbemCallResult
|
||||
"PutInstance": ctypes.WINFUNCTYPE(HRESULT, PVOID, LONG, PVOID, POINTER(PVOID))(14, "PutInstance"),
|
||||
# PutInstanceAsync -> pInst:*IWbemClassObject, lFlags:LONG, pCtx:*IWbemContext, pResponseHandler:*IWbemObjectSink
|
||||
"PutInstanceAsync": ctypes.WINFUNCTYPE(HRESULT, PVOID, LONG, PVOID, PVOID)(15, "PutInstanceAsync"),
|
||||
# DeleteInstance -> strObjectPath:BSTR, lFlags:LONG, pCtx:*IWbemContext, ppCallResult:**IWbemCallResult
|
||||
"DeleteInstance": ctypes.WINFUNCTYPE(HRESULT, BSTR, LONG, PVOID, POINTER(PVOID))(16, "DeleteInstance"),
|
||||
# DeleteInstanceAsync -> strObjectPath:BSTR, lFlags:LONG, pCtx:*IWbemContext, pResponseHandler:*IWbemObjectSink
|
||||
"DeleteInstanceAsync": ctypes.WINFUNCTYPE(HRESULT, BSTR, LONG, PVOID, PVOID)(17, "DeleteInstanceAsync"),
|
||||
# CreateInstanceEnum -> strFilter:BSTR, lFlags:LONG, pCtx:*IWbemContext, ppEnum:**IEnumWbemClassObject
|
||||
"CreateInstanceEnum": ctypes.WINFUNCTYPE(HRESULT, BSTR, LONG, PVOID, POINTER(PVOID))(18, "CreateInstanceEnum"),
|
||||
# CreateInstanceEnumAsync -> strFilter:BSTR, lFlags:LONG, pCtx:*IWbemContext, pResponseHandler:*IWbemObjectSink
|
||||
"CreateInstanceEnumAsync": ctypes.WINFUNCTYPE(HRESULT, BSTR, LONG, PVOID, PVOID)(19, "CreateInstanceEnumAsync"),
|
||||
# ExecQuery -> strQueryLanguage:BSTR, strQuery:BSTR, lFlags:LONG, pCtx:*IWbemContext, ppEnum:**IEnumWbemClassObject
|
||||
"ExecQuery": ctypes.WINFUNCTYPE(HRESULT, BSTR, BSTR, LONG, PVOID, POINTER(PVOID))(20, "ExecQuery"),
|
||||
# ExecQueryAsync -> strQueryLanguage:BSTR, strQuery:BSTR, lFlags:LONG, pCtx:*IWbemContext, pResponseHandler:*IWbemObjectSink
|
||||
"ExecQueryAsync": ctypes.WINFUNCTYPE(HRESULT, BSTR, BSTR, LONG, PVOID, PVOID)(21, "ExecQueryAsync"),
|
||||
# ExecNotificationQuery -> strQueryLanguage:BSTR, strQuery:BSTR, lFlags:LONG, pCtx:*IWbemContext, ppEnum:**IEnumWbemClassObject
|
||||
"ExecNotificationQuery": ctypes.WINFUNCTYPE(HRESULT, BSTR, BSTR, LONG, PVOID, POINTER(PVOID))(22, "ExecNotificationQuery"),
|
||||
# ExecNotificationQueryAsync -> strQueryLanguage:BSTR, strQuery:BSTR, lFlags:LONG, pCtx:*IWbemContext, pResponseHandler:*IWbemObjectSink
|
||||
"ExecNotificationQueryAsync": ctypes.WINFUNCTYPE(HRESULT, BSTR, BSTR, LONG, PVOID, PVOID)(23, "ExecNotificationQueryAsync"),
|
||||
# ExecMethod -> strObjectPath:BSTR, strMethodName:BSTR, lFlags:LONG, pCtx:*IWbemContext, pInParams:*IWbemClassObject, ppOutParams:**IWbemClassObject, ppCallResult:**IWbemCallResult
|
||||
"ExecMethod": ctypes.WINFUNCTYPE(HRESULT, BSTR, BSTR, LONG, PVOID, PVOID, POINTER(PVOID), POINTER(PVOID))(24, "ExecMethod"),
|
||||
# ExecMethodAsync -> strObjectPath:BSTR, strMethodName:BSTR, lFlags:LONG, pCtx:*IWbemContext, pInParams:*IWbemClassObject, pResponseHandler:*IWbemObjectSink
|
||||
"ExecMethodAsync": ctypes.WINFUNCTYPE(HRESULT, BSTR, BSTR, LONG, PVOID, PVOID, PVOID)(25, "ExecMethodAsync"),
|
||||
}
|
||||
|
||||
|
||||
File diff suppressed because one or more lines are too long
+947
-913
File diff suppressed because it is too large
Load Diff
+435
-320
@@ -1,4 +1,439 @@
|
||||
from winstructs import *
|
||||
#def CreateFileTransactedA(lpFileName, dwDesiredAccess, dwShareMode, lpSecurityAttributes, dwCreationDisposition, dwFlagsAndAttributes, hTemplateFile, hTransaction, pusMiniVersion, pExtendedParameter):
|
||||
# return CreateFileTransactedA.ctypes_function(lpFileName, dwDesiredAccess, dwShareMode, lpSecurityAttributes, dwCreationDisposition, dwFlagsAndAttributes, hTemplateFile, hTransaction, pusMiniVersion, pExtendedParameter)
|
||||
CreateFileTransactedAPrototype = WINFUNCTYPE(HANDLE, LPCSTR, DWORD, DWORD, LPSECURITY_ATTRIBUTES, DWORD, DWORD, HANDLE, HANDLE, PUSHORT, PVOID)
|
||||
CreateFileTransactedAParams = ((1, 'lpFileName'), (1, 'dwDesiredAccess'), (1, 'dwShareMode'), (1, 'lpSecurityAttributes'), (1, 'dwCreationDisposition'), (1, 'dwFlagsAndAttributes'), (1, 'hTemplateFile'), (1, 'hTransaction'), (1, 'pusMiniVersion'), (1, 'pExtendedParameter'))
|
||||
|
||||
#def CreateFileTransactedW(lpFileName, dwDesiredAccess, dwShareMode, lpSecurityAttributes, dwCreationDisposition, dwFlagsAndAttributes, hTemplateFile, hTransaction, pusMiniVersion, pExtendedParameter):
|
||||
# return CreateFileTransactedW.ctypes_function(lpFileName, dwDesiredAccess, dwShareMode, lpSecurityAttributes, dwCreationDisposition, dwFlagsAndAttributes, hTemplateFile, hTransaction, pusMiniVersion, pExtendedParameter)
|
||||
CreateFileTransactedWPrototype = WINFUNCTYPE(HANDLE, LPWSTR, DWORD, DWORD, LPSECURITY_ATTRIBUTES, DWORD, DWORD, HANDLE, HANDLE, PUSHORT, PVOID)
|
||||
CreateFileTransactedWParams = ((1, 'lpFileName'), (1, 'dwDesiredAccess'), (1, 'dwShareMode'), (1, 'lpSecurityAttributes'), (1, 'dwCreationDisposition'), (1, 'dwFlagsAndAttributes'), (1, 'hTemplateFile'), (1, 'hTransaction'), (1, 'pusMiniVersion'), (1, 'pExtendedParameter'))
|
||||
|
||||
#def CommitTransaction(TransactionHandle):
|
||||
# return CommitTransaction.ctypes_function(TransactionHandle)
|
||||
CommitTransactionPrototype = WINFUNCTYPE(BOOL, HANDLE)
|
||||
CommitTransactionParams = ((1, 'TransactionHandle'),)
|
||||
|
||||
#def CreateTransaction(lpTransactionAttributes, UOW, CreateOptions, IsolationLevel, IsolationFlags, Timeout, Description):
|
||||
# return CreateTransaction.ctypes_function(lpTransactionAttributes, UOW, CreateOptions, IsolationLevel, IsolationFlags, Timeout, Description)
|
||||
CreateTransactionPrototype = WINFUNCTYPE(HANDLE, LPSECURITY_ATTRIBUTES, LPGUID, DWORD, DWORD, DWORD, DWORD, LPWSTR)
|
||||
CreateTransactionParams = ((1, 'lpTransactionAttributes'), (1, 'UOW'), (1, 'CreateOptions'), (1, 'IsolationLevel'), (1, 'IsolationFlags'), (1, 'Timeout'), (1, 'Description'))
|
||||
|
||||
#def RollbackTransaction(TransactionHandle):
|
||||
# return RollbackTransaction.ctypes_function(TransactionHandle)
|
||||
RollbackTransactionPrototype = WINFUNCTYPE(BOOL, HANDLE)
|
||||
RollbackTransactionParams = ((1, 'TransactionHandle'),)
|
||||
|
||||
#def OpenTransaction(dwDesiredAccess, TransactionId):
|
||||
# return OpenTransaction.ctypes_function(dwDesiredAccess, TransactionId)
|
||||
OpenTransactionPrototype = WINFUNCTYPE(HANDLE, DWORD, LPGUID)
|
||||
OpenTransactionParams = ((1, 'dwDesiredAccess'), (1, 'TransactionId'))
|
||||
|
||||
#def TpCallbackSendAlpcMessageOnCompletion(TpHandle, PortHandle, Flags, SendMessage):
|
||||
# return TpCallbackSendAlpcMessageOnCompletion.ctypes_function(TpHandle, PortHandle, Flags, SendMessage)
|
||||
TpCallbackSendAlpcMessageOnCompletionPrototype = WINFUNCTYPE(NTSTATUS, HANDLE, HANDLE, ULONG, PPORT_MESSAGE)
|
||||
TpCallbackSendAlpcMessageOnCompletionParams = ((1, 'TpHandle'), (1, 'PortHandle'), (1, 'Flags'), (1, 'SendMessage'))
|
||||
|
||||
#def CryptCATAdminCalcHashFromFileHandle(hFile, pcbHash, pbHash, dwFlags):
|
||||
# return CryptCATAdminCalcHashFromFileHandle.ctypes_function(hFile, pcbHash, pbHash, dwFlags)
|
||||
CryptCATAdminCalcHashFromFileHandlePrototype = WINFUNCTYPE(BOOL, HANDLE, POINTER(DWORD), POINTER(BYTE), DWORD)
|
||||
CryptCATAdminCalcHashFromFileHandleParams = ((1, 'hFile'), (1, 'pcbHash'), (1, 'pbHash'), (1, 'dwFlags'))
|
||||
|
||||
#def CryptCATAdminEnumCatalogFromHash(hCatAdmin, pbHash, cbHash, dwFlags, phPrevCatInfo):
|
||||
# return CryptCATAdminEnumCatalogFromHash.ctypes_function(hCatAdmin, pbHash, cbHash, dwFlags, phPrevCatInfo)
|
||||
CryptCATAdminEnumCatalogFromHashPrototype = WINFUNCTYPE(HCATINFO, HCATADMIN, POINTER(BYTE), DWORD, DWORD, POINTER(HCATINFO))
|
||||
CryptCATAdminEnumCatalogFromHashParams = ((1, 'hCatAdmin'), (1, 'pbHash'), (1, 'cbHash'), (1, 'dwFlags'), (1, 'phPrevCatInfo'))
|
||||
|
||||
#def CryptCATAdminAcquireContext(phCatAdmin, pgSubsystem, dwFlags):
|
||||
# return CryptCATAdminAcquireContext.ctypes_function(phCatAdmin, pgSubsystem, dwFlags)
|
||||
CryptCATAdminAcquireContextPrototype = WINFUNCTYPE(BOOL, POINTER(HCATADMIN), POINTER(GUID), DWORD)
|
||||
CryptCATAdminAcquireContextParams = ((1, 'phCatAdmin'), (1, 'pgSubsystem'), (1, 'dwFlags'))
|
||||
|
||||
#def CryptCATCatalogInfoFromContext(hCatInfo, psCatInfo, dwFlags):
|
||||
# return CryptCATCatalogInfoFromContext.ctypes_function(hCatInfo, psCatInfo, dwFlags)
|
||||
CryptCATCatalogInfoFromContextPrototype = WINFUNCTYPE(BOOL, HCATINFO, POINTER(CATALOG_INFO), DWORD)
|
||||
CryptCATCatalogInfoFromContextParams = ((1, 'hCatInfo'), (1, 'psCatInfo'), (1, 'dwFlags'))
|
||||
|
||||
#def CryptCATAdminReleaseCatalogContext(hCatAdmin, hCatInfo, dwFlags):
|
||||
# return CryptCATAdminReleaseCatalogContext.ctypes_function(hCatAdmin, hCatInfo, dwFlags)
|
||||
CryptCATAdminReleaseCatalogContextPrototype = WINFUNCTYPE(BOOL, HCATADMIN, HCATINFO, DWORD)
|
||||
CryptCATAdminReleaseCatalogContextParams = ((1, 'hCatAdmin'), (1, 'hCatInfo'), (1, 'dwFlags'))
|
||||
|
||||
#def CryptCATAdminReleaseContext(hCatAdmin, dwFlags):
|
||||
# return CryptCATAdminReleaseContext.ctypes_function(hCatAdmin, dwFlags)
|
||||
CryptCATAdminReleaseContextPrototype = WINFUNCTYPE(BOOL, HCATADMIN, DWORD)
|
||||
CryptCATAdminReleaseContextParams = ((1, 'hCatAdmin'), (1, 'dwFlags'))
|
||||
|
||||
#def CryptCATGetAttrInfo(hCatalog, pCatMember, pwszReferenceTag):
|
||||
# return CryptCATGetAttrInfo.ctypes_function(hCatalog, pCatMember, pwszReferenceTag)
|
||||
CryptCATGetAttrInfoPrototype = WINFUNCTYPE(POINTER(CRYPTCATATTRIBUTE), HANDLE, POINTER(CRYPTCATMEMBER), LPWSTR)
|
||||
CryptCATGetAttrInfoParams = ((1, 'hCatalog'), (1, 'pCatMember'), (1, 'pwszReferenceTag'))
|
||||
|
||||
#def CryptCATGetMemberInfo(hCatalog, pwszReferenceTag):
|
||||
# return CryptCATGetMemberInfo.ctypes_function(hCatalog, pwszReferenceTag)
|
||||
CryptCATGetMemberInfoPrototype = WINFUNCTYPE(POINTER(CRYPTCATMEMBER), HANDLE, LPWSTR)
|
||||
CryptCATGetMemberInfoParams = ((1, 'hCatalog'), (1, 'pwszReferenceTag'))
|
||||
|
||||
#def CryptCATGetAttrInfo(hCatalog, pCatMember, pwszReferenceTag):
|
||||
# return CryptCATGetAttrInfo.ctypes_function(hCatalog, pCatMember, pwszReferenceTag)
|
||||
CryptCATGetAttrInfoPrototype = WINFUNCTYPE(POINTER(CRYPTCATATTRIBUTE), HANDLE, POINTER(CRYPTCATMEMBER), LPWSTR)
|
||||
CryptCATGetAttrInfoParams = ((1, 'hCatalog'), (1, 'pCatMember'), (1, 'pwszReferenceTag'))
|
||||
|
||||
#def CryptCATEnumerateCatAttr(hCatalog, pPrevAttr):
|
||||
# return CryptCATEnumerateCatAttr.ctypes_function(hCatalog, pPrevAttr)
|
||||
CryptCATEnumerateCatAttrPrototype = WINFUNCTYPE(POINTER(CRYPTCATATTRIBUTE), HANDLE, POINTER(CRYPTCATATTRIBUTE))
|
||||
CryptCATEnumerateCatAttrParams = ((1, 'hCatalog'), (1, 'pPrevAttr'))
|
||||
|
||||
#def CryptCATEnumerateAttr(hCatalog, pCatMember, pPrevAttr):
|
||||
# return CryptCATEnumerateAttr.ctypes_function(hCatalog, pCatMember, pPrevAttr)
|
||||
CryptCATEnumerateAttrPrototype = WINFUNCTYPE(POINTER(CRYPTCATATTRIBUTE), HANDLE, POINTER(CRYPTCATMEMBER), POINTER(CRYPTCATATTRIBUTE))
|
||||
CryptCATEnumerateAttrParams = ((1, 'hCatalog'), (1, 'pCatMember'), (1, 'pPrevAttr'))
|
||||
|
||||
#def CryptCATEnumerateMember(hCatalog, pPrevMember):
|
||||
# return CryptCATEnumerateMember.ctypes_function(hCatalog, pPrevMember)
|
||||
CryptCATEnumerateMemberPrototype = WINFUNCTYPE(POINTER(CRYPTCATMEMBER), HANDLE, POINTER(CRYPTCATMEMBER))
|
||||
CryptCATEnumerateMemberParams = ((1, 'hCatalog'), (1, 'pPrevMember'))
|
||||
|
||||
#def CryptQueryObject(dwObjectType, pvObject, dwExpectedContentTypeFlags, dwExpectedFormatTypeFlags, dwFlags, pdwMsgAndCertEncodingType, pdwContentType, pdwFormatType, phCertStore, phMsg, ppvContext):
|
||||
# return CryptQueryObject.ctypes_function(dwObjectType, pvObject, dwExpectedContentTypeFlags, dwExpectedFormatTypeFlags, dwFlags, pdwMsgAndCertEncodingType, pdwContentType, pdwFormatType, phCertStore, phMsg, ppvContext)
|
||||
CryptQueryObjectPrototype = WINFUNCTYPE(BOOL, DWORD, PVOID, DWORD, DWORD, DWORD, POINTER(DWORD), POINTER(DWORD), POINTER(DWORD), POINTER(HCERTSTORE), POINTER(HCRYPTMSG), POINTER(PVOID))
|
||||
CryptQueryObjectParams = ((1, 'dwObjectType'), (1, 'pvObject'), (1, 'dwExpectedContentTypeFlags'), (1, 'dwExpectedFormatTypeFlags'), (1, 'dwFlags'), (1, 'pdwMsgAndCertEncodingType'), (1, 'pdwContentType'), (1, 'pdwFormatType'), (1, 'phCertStore'), (1, 'phMsg'), (1, 'ppvContext'))
|
||||
|
||||
#def CryptMsgGetParam(hCryptMsg, dwParamType, dwIndex, pvData, pcbData):
|
||||
# return CryptMsgGetParam.ctypes_function(hCryptMsg, dwParamType, dwIndex, pvData, pcbData)
|
||||
CryptMsgGetParamPrototype = WINFUNCTYPE(BOOL, HCRYPTMSG, DWORD, DWORD, PVOID, POINTER(DWORD))
|
||||
CryptMsgGetParamParams = ((1, 'hCryptMsg'), (1, 'dwParamType'), (1, 'dwIndex'), (1, 'pvData'), (1, 'pcbData'))
|
||||
|
||||
#def CryptDecodeObject(dwCertEncodingType, lpszStructType, pbEncoded, cbEncoded, dwFlags, pvStructInfo, pcbStructInfo):
|
||||
# return CryptDecodeObject.ctypes_function(dwCertEncodingType, lpszStructType, pbEncoded, cbEncoded, dwFlags, pvStructInfo, pcbStructInfo)
|
||||
CryptDecodeObjectPrototype = WINFUNCTYPE(BOOL, DWORD, LPCSTR, POINTER(BYTE), DWORD, DWORD, PVOID, POINTER(DWORD))
|
||||
CryptDecodeObjectParams = ((1, 'dwCertEncodingType'), (1, 'lpszStructType'), (1, 'pbEncoded'), (1, 'cbEncoded'), (1, 'dwFlags'), (1, 'pvStructInfo'), (1, 'pcbStructInfo'))
|
||||
|
||||
#def CertFindCertificateInStore(hCertStore, dwCertEncodingType, dwFindFlags, dwFindType, pvFindPara, pPrevCertContext):
|
||||
# return CertFindCertificateInStore.ctypes_function(hCertStore, dwCertEncodingType, dwFindFlags, dwFindType, pvFindPara, pPrevCertContext)
|
||||
CertFindCertificateInStorePrototype = WINFUNCTYPE(PCCERT_CONTEXT, HCERTSTORE, DWORD, DWORD, DWORD, PVOID, PCCERT_CONTEXT)
|
||||
CertFindCertificateInStoreParams = ((1, 'hCertStore'), (1, 'dwCertEncodingType'), (1, 'dwFindFlags'), (1, 'dwFindType'), (1, 'pvFindPara'), (1, 'pPrevCertContext'))
|
||||
|
||||
#def CertGetNameStringA(pCertContext, dwType, dwFlags, pvTypePara, pszNameString, cchNameString):
|
||||
# return CertGetNameStringA.ctypes_function(pCertContext, dwType, dwFlags, pvTypePara, pszNameString, cchNameString)
|
||||
CertGetNameStringAPrototype = WINFUNCTYPE(DWORD, PCCERT_CONTEXT, DWORD, DWORD, PVOID, LPCSTR, DWORD)
|
||||
CertGetNameStringAParams = ((1, 'pCertContext'), (1, 'dwType'), (1, 'dwFlags'), (1, 'pvTypePara'), (1, 'pszNameString'), (1, 'cchNameString'))
|
||||
|
||||
#def CertGetNameStringW(pCertContext, dwType, dwFlags, pvTypePara, pszNameString, cchNameString):
|
||||
# return CertGetNameStringW.ctypes_function(pCertContext, dwType, dwFlags, pvTypePara, pszNameString, cchNameString)
|
||||
CertGetNameStringWPrototype = WINFUNCTYPE(DWORD, PCCERT_CONTEXT, DWORD, DWORD, PVOID, LPWSTR, DWORD)
|
||||
CertGetNameStringWParams = ((1, 'pCertContext'), (1, 'dwType'), (1, 'dwFlags'), (1, 'pvTypePara'), (1, 'pszNameString'), (1, 'cchNameString'))
|
||||
|
||||
#def CertGetCertificateChain(hChainEngine, pCertContext, pTime, hAdditionalStore, pChainPara, dwFlags, pvReserved, ppChainContext):
|
||||
# return CertGetCertificateChain.ctypes_function(hChainEngine, pCertContext, pTime, hAdditionalStore, pChainPara, dwFlags, pvReserved, ppChainContext)
|
||||
CertGetCertificateChainPrototype = WINFUNCTYPE(BOOL, HCERTCHAINENGINE, PCCERT_CONTEXT, LPFILETIME, HCERTSTORE, PCERT_CHAIN_PARA, DWORD, LPVOID, POINTER(PCCERT_CHAIN_CONTEXT))
|
||||
CertGetCertificateChainParams = ((1, 'hChainEngine'), (1, 'pCertContext'), (1, 'pTime'), (1, 'hAdditionalStore'), (1, 'pChainPara'), (1, 'dwFlags'), (1, 'pvReserved'), (1, 'ppChainContext'))
|
||||
|
||||
#def CertCreateSelfSignCertificate(hCryptProvOrNCryptKey, pSubjectIssuerBlob, dwFlags, pKeyProvInfo, pSignatureAlgorithm, pStartTime, pEndTime, pExtensions):
|
||||
# return CertCreateSelfSignCertificate.ctypes_function(hCryptProvOrNCryptKey, pSubjectIssuerBlob, dwFlags, pKeyProvInfo, pSignatureAlgorithm, pStartTime, pEndTime, pExtensions)
|
||||
CertCreateSelfSignCertificatePrototype = WINFUNCTYPE(PCCERT_CONTEXT, HCRYPTPROV_OR_NCRYPT_KEY_HANDLE, PCERT_NAME_BLOB, DWORD, PCRYPT_KEY_PROV_INFO, PCRYPT_ALGORITHM_IDENTIFIER, PSYSTEMTIME, PSYSTEMTIME, PCERT_EXTENSIONS)
|
||||
CertCreateSelfSignCertificateParams = ((1, 'hCryptProvOrNCryptKey'), (1, 'pSubjectIssuerBlob'), (1, 'dwFlags'), (1, 'pKeyProvInfo'), (1, 'pSignatureAlgorithm'), (1, 'pStartTime'), (1, 'pEndTime'), (1, 'pExtensions'))
|
||||
|
||||
#def CertStrToNameA(dwCertEncodingType, pszX500, dwStrType, pvReserved, pbEncoded, pcbEncoded, ppszError):
|
||||
# return CertStrToNameA.ctypes_function(dwCertEncodingType, pszX500, dwStrType, pvReserved, pbEncoded, pcbEncoded, ppszError)
|
||||
CertStrToNameAPrototype = WINFUNCTYPE(BOOL, DWORD, LPCSTR, DWORD, PVOID, POINTER(BYTE), POINTER(DWORD), POINTER(LPCSTR))
|
||||
CertStrToNameAParams = ((1, 'dwCertEncodingType'), (1, 'pszX500'), (1, 'dwStrType'), (1, 'pvReserved'), (1, 'pbEncoded'), (1, 'pcbEncoded'), (1, 'ppszError'))
|
||||
|
||||
#def CertStrToNameW(dwCertEncodingType, pszX500, dwStrType, pvReserved, pbEncoded, pcbEncoded, ppszError):
|
||||
# return CertStrToNameW.ctypes_function(dwCertEncodingType, pszX500, dwStrType, pvReserved, pbEncoded, pcbEncoded, ppszError)
|
||||
CertStrToNameWPrototype = WINFUNCTYPE(BOOL, DWORD, LPWSTR, DWORD, PVOID, POINTER(BYTE), POINTER(DWORD), POINTER(LPWSTR))
|
||||
CertStrToNameWParams = ((1, 'dwCertEncodingType'), (1, 'pszX500'), (1, 'dwStrType'), (1, 'pvReserved'), (1, 'pbEncoded'), (1, 'pcbEncoded'), (1, 'ppszError'))
|
||||
|
||||
#def CertOpenStore(lpszStoreProvider, dwMsgAndCertEncodingType, hCryptProv, dwFlags, pvPara):
|
||||
# return CertOpenStore.ctypes_function(lpszStoreProvider, dwMsgAndCertEncodingType, hCryptProv, dwFlags, pvPara)
|
||||
CertOpenStorePrototype = WINFUNCTYPE(HCERTSTORE, LPCSTR, DWORD, HCRYPTPROV_LEGACY, DWORD, PVOID)
|
||||
CertOpenStoreParams = ((1, 'lpszStoreProvider'), (1, 'dwMsgAndCertEncodingType'), (1, 'hCryptProv'), (1, 'dwFlags'), (1, 'pvPara'))
|
||||
|
||||
#def CertAddCertificateContextToStore(hCertStore, pCertContext, dwAddDisposition, ppStoreContext):
|
||||
# return CertAddCertificateContextToStore.ctypes_function(hCertStore, pCertContext, dwAddDisposition, ppStoreContext)
|
||||
CertAddCertificateContextToStorePrototype = WINFUNCTYPE(BOOL, HCERTSTORE, PCCERT_CONTEXT, DWORD, POINTER(PCCERT_CONTEXT))
|
||||
CertAddCertificateContextToStoreParams = ((1, 'hCertStore'), (1, 'pCertContext'), (1, 'dwAddDisposition'), (1, 'ppStoreContext'))
|
||||
|
||||
#def PFXExportCertStoreEx(hStore, pPFX, szPassword, pvPara, dwFlags):
|
||||
# return PFXExportCertStoreEx.ctypes_function(hStore, pPFX, szPassword, pvPara, dwFlags)
|
||||
PFXExportCertStoreExPrototype = WINFUNCTYPE(BOOL, HCERTSTORE, POINTER(CRYPT_DATA_BLOB), LPCWSTR, PVOID, DWORD)
|
||||
PFXExportCertStoreExParams = ((1, 'hStore'), (1, 'pPFX'), (1, 'szPassword'), (1, 'pvPara'), (1, 'dwFlags'))
|
||||
|
||||
#def PFXImportCertStore(pPFX, szPassword, dwFlags):
|
||||
# return PFXImportCertStore.ctypes_function(pPFX, szPassword, dwFlags)
|
||||
PFXImportCertStorePrototype = WINFUNCTYPE(HCERTSTORE, POINTER(CRYPT_DATA_BLOB), LPCWSTR, DWORD)
|
||||
PFXImportCertStoreParams = ((1, 'pPFX'), (1, 'szPassword'), (1, 'dwFlags'))
|
||||
|
||||
#def CryptGenKey(hProv, Algid, dwFlags, phKey):
|
||||
# return CryptGenKey.ctypes_function(hProv, Algid, dwFlags, phKey)
|
||||
CryptGenKeyPrototype = WINFUNCTYPE(BOOL, HCRYPTPROV, ALG_ID, DWORD, POINTER(HCRYPTKEY))
|
||||
CryptGenKeyParams = ((1, 'hProv'), (1, 'Algid'), (1, 'dwFlags'), (1, 'phKey'))
|
||||
|
||||
#def CryptDestroyKey(hKey):
|
||||
# return CryptDestroyKey.ctypes_function(hKey)
|
||||
CryptDestroyKeyPrototype = WINFUNCTYPE(BOOL, HCRYPTKEY)
|
||||
CryptDestroyKeyParams = ((1, 'hKey'),)
|
||||
|
||||
#def CryptAcquireContextA(phProv, pszContainer, pszProvider, dwProvType, dwFlags):
|
||||
# return CryptAcquireContextA.ctypes_function(phProv, pszContainer, pszProvider, dwProvType, dwFlags)
|
||||
CryptAcquireContextAPrototype = WINFUNCTYPE(BOOL, POINTER(HCRYPTPROV), LPCSTR, LPCSTR, DWORD, DWORD)
|
||||
CryptAcquireContextAParams = ((1, 'phProv'), (1, 'pszContainer'), (1, 'pszProvider'), (1, 'dwProvType'), (1, 'dwFlags'))
|
||||
|
||||
#def CryptAcquireContextW(phProv, pszContainer, pszProvider, dwProvType, dwFlags):
|
||||
# return CryptAcquireContextW.ctypes_function(phProv, pszContainer, pszProvider, dwProvType, dwFlags)
|
||||
CryptAcquireContextWPrototype = WINFUNCTYPE(BOOL, POINTER(HCRYPTPROV), LPWSTR, LPWSTR, DWORD, DWORD)
|
||||
CryptAcquireContextWParams = ((1, 'phProv'), (1, 'pszContainer'), (1, 'pszProvider'), (1, 'dwProvType'), (1, 'dwFlags'))
|
||||
|
||||
#def CryptReleaseContext(hProv, dwFlags):
|
||||
# return CryptReleaseContext.ctypes_function(hProv, dwFlags)
|
||||
CryptReleaseContextPrototype = WINFUNCTYPE(BOOL, HCRYPTPROV, DWORD)
|
||||
CryptReleaseContextParams = ((1, 'hProv'), (1, 'dwFlags'))
|
||||
|
||||
#def CryptExportKey(hKey, hExpKey, dwBlobType, dwFlags, pbData, pdwDataLen):
|
||||
# return CryptExportKey.ctypes_function(hKey, hExpKey, dwBlobType, dwFlags, pbData, pdwDataLen)
|
||||
CryptExportKeyPrototype = WINFUNCTYPE(BOOL, HCRYPTKEY, HCRYPTKEY, DWORD, DWORD, POINTER(BYTE), POINTER(DWORD))
|
||||
CryptExportKeyParams = ((1, 'hKey'), (1, 'hExpKey'), (1, 'dwBlobType'), (1, 'dwFlags'), (1, 'pbData'), (1, 'pdwDataLen'))
|
||||
|
||||
#def CertGetCertificateContextProperty(pCertContext, dwPropId, pvData, pcbData):
|
||||
# return CertGetCertificateContextProperty.ctypes_function(pCertContext, dwPropId, pvData, pcbData)
|
||||
CertGetCertificateContextPropertyPrototype = WINFUNCTYPE(BOOL, PCCERT_CONTEXT, DWORD, PVOID, POINTER(DWORD))
|
||||
CertGetCertificateContextPropertyParams = ((1, 'pCertContext'), (1, 'dwPropId'), (1, 'pvData'), (1, 'pcbData'))
|
||||
|
||||
#def CertEnumCertificateContextProperties(pCertContext, dwPropId):
|
||||
# return CertEnumCertificateContextProperties.ctypes_function(pCertContext, dwPropId)
|
||||
CertEnumCertificateContextPropertiesPrototype = WINFUNCTYPE(DWORD, PCCERT_CONTEXT, DWORD)
|
||||
CertEnumCertificateContextPropertiesParams = ((1, 'pCertContext'), (1, 'dwPropId'))
|
||||
|
||||
#def CryptEncryptMessage(pEncryptPara, cRecipientCert, rgpRecipientCert, pbToBeEncrypted, cbToBeEncrypted, pbEncryptedBlob, pcbEncryptedBlob):
|
||||
# return CryptEncryptMessage.ctypes_function(pEncryptPara, cRecipientCert, rgpRecipientCert, pbToBeEncrypted, cbToBeEncrypted, pbEncryptedBlob, pcbEncryptedBlob)
|
||||
CryptEncryptMessagePrototype = WINFUNCTYPE(BOOL, PCRYPT_ENCRYPT_MESSAGE_PARA, DWORD, POINTER(PCCERT_CONTEXT), POINTER(BYTE), DWORD, POINTER(BYTE), POINTER(DWORD))
|
||||
CryptEncryptMessageParams = ((1, 'pEncryptPara'), (1, 'cRecipientCert'), (1, 'rgpRecipientCert'), (1, 'pbToBeEncrypted'), (1, 'cbToBeEncrypted'), (1, 'pbEncryptedBlob'), (1, 'pcbEncryptedBlob'))
|
||||
|
||||
#def CryptDecryptMessage(pDecryptPara, pbEncryptedBlob, cbEncryptedBlob, pbDecrypted, pcbDecrypted, ppXchgCert):
|
||||
# return CryptDecryptMessage.ctypes_function(pDecryptPara, pbEncryptedBlob, cbEncryptedBlob, pbDecrypted, pcbDecrypted, ppXchgCert)
|
||||
CryptDecryptMessagePrototype = WINFUNCTYPE(BOOL, PCRYPT_DECRYPT_MESSAGE_PARA, POINTER(BYTE), DWORD, POINTER(BYTE), POINTER(DWORD), POINTER(PCCERT_CONTEXT))
|
||||
CryptDecryptMessageParams = ((1, 'pDecryptPara'), (1, 'pbEncryptedBlob'), (1, 'cbEncryptedBlob'), (1, 'pbDecrypted'), (1, 'pcbDecrypted'), (1, 'ppXchgCert'))
|
||||
|
||||
#def CryptAcquireCertificatePrivateKey(pCert, dwFlags, pvParameters, phCryptProvOrNCryptKey, pdwKeySpec, pfCallerFreeProvOrNCryptKey):
|
||||
# return CryptAcquireCertificatePrivateKey.ctypes_function(pCert, dwFlags, pvParameters, phCryptProvOrNCryptKey, pdwKeySpec, pfCallerFreeProvOrNCryptKey)
|
||||
CryptAcquireCertificatePrivateKeyPrototype = WINFUNCTYPE(BOOL, PCCERT_CONTEXT, DWORD, PVOID, POINTER(HCRYPTPROV_OR_NCRYPT_KEY_HANDLE), POINTER(DWORD), POINTER(BOOL))
|
||||
CryptAcquireCertificatePrivateKeyParams = ((1, 'pCert'), (1, 'dwFlags'), (1, 'pvParameters'), (1, 'phCryptProvOrNCryptKey'), (1, 'pdwKeySpec'), (1, 'pfCallerFreeProvOrNCryptKey'))
|
||||
|
||||
#def CertDuplicateCertificateContext(pCertContext):
|
||||
# return CertDuplicateCertificateContext.ctypes_function(pCertContext)
|
||||
CertDuplicateCertificateContextPrototype = WINFUNCTYPE(PCCERT_CONTEXT, PCCERT_CONTEXT)
|
||||
CertDuplicateCertificateContextParams = ((1, 'pCertContext'),)
|
||||
|
||||
#def CertEnumCertificatesInStore(hCertStore, pPrevCertContext):
|
||||
# return CertEnumCertificatesInStore.ctypes_function(hCertStore, pPrevCertContext)
|
||||
CertEnumCertificatesInStorePrototype = WINFUNCTYPE(PCCERT_CONTEXT, HCERTSTORE, PCCERT_CONTEXT)
|
||||
CertEnumCertificatesInStoreParams = ((1, 'hCertStore'), (1, 'pPrevCertContext'))
|
||||
|
||||
#def CryptEncodeObjectEx(dwCertEncodingType, lpszStructType, pvStructInfo, dwFlags, pEncodePara, pvEncoded, pcbEncoded):
|
||||
# return CryptEncodeObjectEx.ctypes_function(dwCertEncodingType, lpszStructType, pvStructInfo, dwFlags, pEncodePara, pvEncoded, pcbEncoded)
|
||||
CryptEncodeObjectExPrototype = WINFUNCTYPE(BOOL, DWORD, LPCSTR, PVOID, DWORD, PCRYPT_ENCODE_PARA, PVOID, POINTER(DWORD))
|
||||
CryptEncodeObjectExParams = ((1, 'dwCertEncodingType'), (1, 'lpszStructType'), (1, 'pvStructInfo'), (1, 'dwFlags'), (1, 'pEncodePara'), (1, 'pvEncoded'), (1, 'pcbEncoded'))
|
||||
|
||||
#def CertCreateCertificateContext(dwCertEncodingType, pbCertEncoded, cbCertEncoded):
|
||||
# return CertCreateCertificateContext.ctypes_function(dwCertEncodingType, pbCertEncoded, cbCertEncoded)
|
||||
CertCreateCertificateContextPrototype = WINFUNCTYPE(PCCERT_CONTEXT, DWORD, POINTER(BYTE), DWORD)
|
||||
CertCreateCertificateContextParams = ((1, 'dwCertEncodingType'), (1, 'pbCertEncoded'), (1, 'cbCertEncoded'))
|
||||
|
||||
#def CertCompareCertificate(dwCertEncodingType, pCertId1, pCertId2):
|
||||
# return CertCompareCertificate.ctypes_function(dwCertEncodingType, pCertId1, pCertId2)
|
||||
CertCompareCertificatePrototype = WINFUNCTYPE(BOOL, DWORD, PCERT_INFO, PCERT_INFO)
|
||||
CertCompareCertificateParams = ((1, 'dwCertEncodingType'), (1, 'pCertId1'), (1, 'pCertId2'))
|
||||
|
||||
#def CertEnumCTLsInStore(hCertStore, pPrevCtlContext):
|
||||
# return CertEnumCTLsInStore.ctypes_function(hCertStore, pPrevCtlContext)
|
||||
CertEnumCTLsInStorePrototype = WINFUNCTYPE(PCCTL_CONTEXT, HCERTSTORE, PCCTL_CONTEXT)
|
||||
CertEnumCTLsInStoreParams = ((1, 'hCertStore'), (1, 'pPrevCtlContext'))
|
||||
|
||||
#def CertDuplicateCTLContext(pCtlContext):
|
||||
# return CertDuplicateCTLContext.ctypes_function(pCtlContext)
|
||||
CertDuplicateCTLContextPrototype = WINFUNCTYPE(PCCTL_CONTEXT, PCCTL_CONTEXT)
|
||||
CertDuplicateCTLContextParams = ((1, 'pCtlContext'),)
|
||||
|
||||
#def CertFreeCTLContext(pCtlContext):
|
||||
# return CertFreeCTLContext.ctypes_function(pCtlContext)
|
||||
CertFreeCTLContextPrototype = WINFUNCTYPE(BOOL, PCCTL_CONTEXT)
|
||||
CertFreeCTLContextParams = ((1, 'pCtlContext'),)
|
||||
|
||||
#def CryptUIDlgViewContext(dwContextType, pvContext, hwnd, pwszTitle, dwFlags, pvReserved):
|
||||
# return CryptUIDlgViewContext.ctypes_function(dwContextType, pvContext, hwnd, pwszTitle, dwFlags, pvReserved)
|
||||
CryptUIDlgViewContextPrototype = WINFUNCTYPE(BOOL, DWORD, PVOID, HWND, LPCWSTR, DWORD, PVOID)
|
||||
CryptUIDlgViewContextParams = ((1, 'dwContextType'), (1, 'pvContext'), (1, 'hwnd'), (1, 'pwszTitle'), (1, 'dwFlags'), (1, 'pvReserved'))
|
||||
|
||||
#def CryptMsgVerifyCountersignatureEncoded(hCryptProv, dwEncodingType, pbSignerInfo, cbSignerInfo, pbSignerInfoCountersignature, cbSignerInfoCountersignature, pciCountersigner):
|
||||
# return CryptMsgVerifyCountersignatureEncoded.ctypes_function(hCryptProv, dwEncodingType, pbSignerInfo, cbSignerInfo, pbSignerInfoCountersignature, cbSignerInfoCountersignature, pciCountersigner)
|
||||
CryptMsgVerifyCountersignatureEncodedPrototype = WINFUNCTYPE(BOOL, HCRYPTPROV_LEGACY, DWORD, PBYTE, DWORD, PBYTE, DWORD, PCERT_INFO)
|
||||
CryptMsgVerifyCountersignatureEncodedParams = ((1, 'hCryptProv'), (1, 'dwEncodingType'), (1, 'pbSignerInfo'), (1, 'cbSignerInfo'), (1, 'pbSignerInfoCountersignature'), (1, 'cbSignerInfoCountersignature'), (1, 'pciCountersigner'))
|
||||
|
||||
#def CryptMsgVerifyCountersignatureEncodedEx(hCryptProv, dwEncodingType, pbSignerInfo, cbSignerInfo, pbSignerInfoCountersignature, cbSignerInfoCountersignature, dwSignerType, pvSigner, dwFlags, pvExtra):
|
||||
# return CryptMsgVerifyCountersignatureEncodedEx.ctypes_function(hCryptProv, dwEncodingType, pbSignerInfo, cbSignerInfo, pbSignerInfoCountersignature, cbSignerInfoCountersignature, dwSignerType, pvSigner, dwFlags, pvExtra)
|
||||
CryptMsgVerifyCountersignatureEncodedExPrototype = WINFUNCTYPE(BOOL, HCRYPTPROV_LEGACY, DWORD, PBYTE, DWORD, PBYTE, DWORD, DWORD, PVOID, DWORD, PVOID)
|
||||
CryptMsgVerifyCountersignatureEncodedExParams = ((1, 'hCryptProv'), (1, 'dwEncodingType'), (1, 'pbSignerInfo'), (1, 'cbSignerInfo'), (1, 'pbSignerInfoCountersignature'), (1, 'cbSignerInfoCountersignature'), (1, 'dwSignerType'), (1, 'pvSigner'), (1, 'dwFlags'), (1, 'pvExtra'))
|
||||
|
||||
#def GetCursorPos(lpPoint):
|
||||
# return GetCursorPos.ctypes_function(lpPoint)
|
||||
GetCursorPosPrototype = WINFUNCTYPE(BOOL, LPPOINT)
|
||||
GetCursorPosParams = ((1, 'lpPoint'),)
|
||||
|
||||
#def WindowFromPoint(Point):
|
||||
# return WindowFromPoint.ctypes_function(Point)
|
||||
WindowFromPointPrototype = WINFUNCTYPE(HWND, POINT)
|
||||
WindowFromPointParams = ((1, 'Point'),)
|
||||
|
||||
#def GetWindowRect(hWnd, lpRect):
|
||||
# return GetWindowRect.ctypes_function(hWnd, lpRect)
|
||||
GetWindowRectPrototype = WINFUNCTYPE(BOOL, HWND, LPRECT)
|
||||
GetWindowRectParams = ((1, 'hWnd'), (1, 'lpRect'))
|
||||
|
||||
#def EnumWindows(lpEnumFunc, lParam):
|
||||
# return EnumWindows.ctypes_function(lpEnumFunc, lParam)
|
||||
EnumWindowsPrototype = WINFUNCTYPE(BOOL, WNDENUMPROC, LPARAM)
|
||||
EnumWindowsParams = ((1, 'lpEnumFunc'), (1, 'lParam'))
|
||||
|
||||
#def GetWindowTextA(hWnd, lpString, nMaxCount):
|
||||
# return GetWindowTextA.ctypes_function(hWnd, lpString, nMaxCount)
|
||||
GetWindowTextAPrototype = WINFUNCTYPE(INT, HWND, LPSTR, INT)
|
||||
GetWindowTextAParams = ((1, 'hWnd'), (1, 'lpString'), (1, 'nMaxCount'))
|
||||
|
||||
#def GetParent(hWnd):
|
||||
# return GetParent.ctypes_function(hWnd)
|
||||
GetParentPrototype = WINFUNCTYPE(HWND, HWND)
|
||||
GetParentParams = ((1, 'hWnd'),)
|
||||
|
||||
#def GetWindowTextW(hWnd, lpString, nMaxCount):
|
||||
# return GetWindowTextW.ctypes_function(hWnd, lpString, nMaxCount)
|
||||
GetWindowTextWPrototype = WINFUNCTYPE(INT, HWND, LPWSTR, INT)
|
||||
GetWindowTextWParams = ((1, 'hWnd'), (1, 'lpString'), (1, 'nMaxCount'))
|
||||
|
||||
#def GetWindowModuleFileNameA(hwnd, pszFileName, cchFileNameMax):
|
||||
# return GetWindowModuleFileNameA.ctypes_function(hwnd, pszFileName, cchFileNameMax)
|
||||
GetWindowModuleFileNameAPrototype = WINFUNCTYPE(UINT, HWND, LPSTR, UINT)
|
||||
GetWindowModuleFileNameAParams = ((1, 'hwnd'), (1, 'pszFileName'), (1, 'cchFileNameMax'))
|
||||
|
||||
#def GetWindowModuleFileNameW(hwnd, pszFileName, cchFileNameMax):
|
||||
# return GetWindowModuleFileNameW.ctypes_function(hwnd, pszFileName, cchFileNameMax)
|
||||
GetWindowModuleFileNameWPrototype = WINFUNCTYPE(UINT, HWND, LPWSTR, UINT)
|
||||
GetWindowModuleFileNameWParams = ((1, 'hwnd'), (1, 'pszFileName'), (1, 'cchFileNameMax'))
|
||||
|
||||
#def EnumChildWindows(hWndParent, lpEnumFunc, lParam):
|
||||
# return EnumChildWindows.ctypes_function(hWndParent, lpEnumFunc, lParam)
|
||||
EnumChildWindowsPrototype = WINFUNCTYPE(BOOL, HWND, WNDENUMPROC, LPARAM)
|
||||
EnumChildWindowsParams = ((1, 'hWndParent'), (1, 'lpEnumFunc'), (1, 'lParam'))
|
||||
|
||||
#def CloseWindow(hWnd):
|
||||
# return CloseWindow.ctypes_function(hWnd)
|
||||
CloseWindowPrototype = WINFUNCTYPE(BOOL, HWND)
|
||||
CloseWindowParams = ((1, 'hWnd'),)
|
||||
|
||||
#def GetDesktopWindow():
|
||||
# return GetDesktopWindow.ctypes_function()
|
||||
GetDesktopWindowPrototype = WINFUNCTYPE(HWND)
|
||||
GetDesktopWindowParams = ()
|
||||
|
||||
#def GetForegroundWindow():
|
||||
# return GetForegroundWindow.ctypes_function()
|
||||
GetForegroundWindowPrototype = WINFUNCTYPE(HWND)
|
||||
GetForegroundWindowParams = ()
|
||||
|
||||
#def BringWindowToTop(hWnd):
|
||||
# return BringWindowToTop.ctypes_function(hWnd)
|
||||
BringWindowToTopPrototype = WINFUNCTYPE(BOOL, HWND)
|
||||
BringWindowToTopParams = ((1, 'hWnd'),)
|
||||
|
||||
#def MoveWindow(hWnd, X, Y, nWidth, nHeight, bRepaint):
|
||||
# return MoveWindow.ctypes_function(hWnd, X, Y, nWidth, nHeight, bRepaint)
|
||||
MoveWindowPrototype = WINFUNCTYPE(BOOL, HWND, INT, INT, INT, INT, BOOL)
|
||||
MoveWindowParams = ((1, 'hWnd'), (1, 'X'), (1, 'Y'), (1, 'nWidth'), (1, 'nHeight'), (1, 'bRepaint'))
|
||||
|
||||
#def SetWindowPos(hWnd, hWndInsertAfter, X, Y, cx, cy, uFlags):
|
||||
# return SetWindowPos.ctypes_function(hWnd, hWndInsertAfter, X, Y, cx, cy, uFlags)
|
||||
SetWindowPosPrototype = WINFUNCTYPE(BOOL, HWND, HWND, INT, INT, INT, INT, UINT)
|
||||
SetWindowPosParams = ((1, 'hWnd'), (1, 'hWndInsertAfter'), (1, 'X'), (1, 'Y'), (1, 'cx'), (1, 'cy'), (1, 'uFlags'))
|
||||
|
||||
#def SetWindowTextA(hWnd, lpString):
|
||||
# return SetWindowTextA.ctypes_function(hWnd, lpString)
|
||||
SetWindowTextAPrototype = WINFUNCTYPE(BOOL, HWND, LPCSTR)
|
||||
SetWindowTextAParams = ((1, 'hWnd'), (1, 'lpString'))
|
||||
|
||||
#def SetWindowTextW(hWnd, lpString):
|
||||
# return SetWindowTextW.ctypes_function(hWnd, lpString)
|
||||
SetWindowTextWPrototype = WINFUNCTYPE(BOOL, HWND, LPWSTR)
|
||||
SetWindowTextWParams = ((1, 'hWnd'), (1, 'lpString'))
|
||||
|
||||
#def RealGetWindowClassA(hwnd, pszType, cchType):
|
||||
# return RealGetWindowClassA.ctypes_function(hwnd, pszType, cchType)
|
||||
RealGetWindowClassAPrototype = WINFUNCTYPE(UINT, HWND, LPCSTR, UINT)
|
||||
RealGetWindowClassAParams = ((1, 'hwnd'), (1, 'pszType'), (1, 'cchType'))
|
||||
|
||||
#def RealGetWindowClassW(hwnd, pszType, cchType):
|
||||
# return RealGetWindowClassW.ctypes_function(hwnd, pszType, cchType)
|
||||
RealGetWindowClassWPrototype = WINFUNCTYPE(UINT, HWND, LPWSTR, UINT)
|
||||
RealGetWindowClassWParams = ((1, 'hwnd'), (1, 'pszType'), (1, 'cchType'))
|
||||
|
||||
#def GetClassInfoExA(hinst, lpszClass, lpwcx):
|
||||
# return GetClassInfoExA.ctypes_function(hinst, lpszClass, lpwcx)
|
||||
GetClassInfoExAPrototype = WINFUNCTYPE(BOOL, HINSTANCE, LPCSTR, LPWNDCLASSEXA)
|
||||
GetClassInfoExAParams = ((1, 'hinst'), (1, 'lpszClass'), (1, 'lpwcx'))
|
||||
|
||||
#def GetClassInfoExW(hinst, lpszClass, lpwcx):
|
||||
# return GetClassInfoExW.ctypes_function(hinst, lpszClass, lpwcx)
|
||||
GetClassInfoExWPrototype = WINFUNCTYPE(BOOL, HINSTANCE, LPCWSTR, LPWNDCLASSEXW)
|
||||
GetClassInfoExWParams = ((1, 'hinst'), (1, 'lpszClass'), (1, 'lpwcx'))
|
||||
|
||||
#def GetClassNameA(hWnd, lpClassName, nMaxCount):
|
||||
# return GetClassNameA.ctypes_function(hWnd, lpClassName, nMaxCount)
|
||||
GetClassNameAPrototype = WINFUNCTYPE(INT, HWND, LPCSTR, INT)
|
||||
GetClassNameAParams = ((1, 'hWnd'), (1, 'lpClassName'), (1, 'nMaxCount'))
|
||||
|
||||
#def GetClassNameW(hWnd, lpClassName, nMaxCount):
|
||||
# return GetClassNameW.ctypes_function(hWnd, lpClassName, nMaxCount)
|
||||
GetClassNameWPrototype = WINFUNCTYPE(INT, HWND, LPWSTR, INT)
|
||||
GetClassNameWParams = ((1, 'hWnd'), (1, 'lpClassName'), (1, 'nMaxCount'))
|
||||
|
||||
#def GetWindowThreadProcessId(hWnd, lpdwProcessId):
|
||||
# return GetWindowThreadProcessId.ctypes_function(hWnd, lpdwProcessId)
|
||||
GetWindowThreadProcessIdPrototype = WINFUNCTYPE(DWORD, HWND, LPDWORD)
|
||||
GetWindowThreadProcessIdParams = ((1, 'hWnd'), (1, 'lpdwProcessId'))
|
||||
|
||||
#def OpenEventLogA(lpUNCServerName, lpSourceName):
|
||||
# return OpenEventLogA.ctypes_function(lpUNCServerName, lpSourceName)
|
||||
OpenEventLogAPrototype = WINFUNCTYPE(HANDLE, LPCSTR, LPCSTR)
|
||||
OpenEventLogAParams = ((1, 'lpUNCServerName'), (1, 'lpSourceName'))
|
||||
|
||||
#def OpenEventLogW(lpUNCServerName, lpSourceName):
|
||||
# return OpenEventLogW.ctypes_function(lpUNCServerName, lpSourceName)
|
||||
OpenEventLogWPrototype = WINFUNCTYPE(HANDLE, LPWSTR, LPWSTR)
|
||||
OpenEventLogWParams = ((1, 'lpUNCServerName'), (1, 'lpSourceName'))
|
||||
|
||||
#def ReadEventLogA(hEventLog, dwReadFlags, dwRecordOffset, lpBuffer, nNumberOfBytesToRead, pnBytesRead, pnMinNumberOfBytesNeeded):
|
||||
# return ReadEventLogA.ctypes_function(hEventLog, dwReadFlags, dwRecordOffset, lpBuffer, nNumberOfBytesToRead, pnBytesRead, pnMinNumberOfBytesNeeded)
|
||||
ReadEventLogAPrototype = WINFUNCTYPE(BOOL, HANDLE, DWORD, DWORD, LPVOID, DWORD, POINTER(DWORD), POINTER(DWORD))
|
||||
ReadEventLogAParams = ((1, 'hEventLog'), (1, 'dwReadFlags'), (1, 'dwRecordOffset'), (1, 'lpBuffer'), (1, 'nNumberOfBytesToRead'), (1, 'pnBytesRead'), (1, 'pnMinNumberOfBytesNeeded'))
|
||||
|
||||
#def ReadEventLogW(hEventLog, dwReadFlags, dwRecordOffset, lpBuffer, nNumberOfBytesToRead, pnBytesRead, pnMinNumberOfBytesNeeded):
|
||||
# return ReadEventLogW.ctypes_function(hEventLog, dwReadFlags, dwRecordOffset, lpBuffer, nNumberOfBytesToRead, pnBytesRead, pnMinNumberOfBytesNeeded)
|
||||
ReadEventLogWPrototype = WINFUNCTYPE(BOOL, HANDLE, DWORD, DWORD, LPVOID, DWORD, POINTER(DWORD), POINTER(DWORD))
|
||||
ReadEventLogWParams = ((1, 'hEventLog'), (1, 'dwReadFlags'), (1, 'dwRecordOffset'), (1, 'lpBuffer'), (1, 'nNumberOfBytesToRead'), (1, 'pnBytesRead'), (1, 'pnMinNumberOfBytesNeeded'))
|
||||
|
||||
#def GetEventLogInformation(hEventLog, dwInfoLevel, lpBuffer, cbBufSize, pcbBytesNeeded):
|
||||
# return GetEventLogInformation.ctypes_function(hEventLog, dwInfoLevel, lpBuffer, cbBufSize, pcbBytesNeeded)
|
||||
GetEventLogInformationPrototype = WINFUNCTYPE(BOOL, HANDLE, DWORD, LPVOID, DWORD, LPDWORD)
|
||||
GetEventLogInformationParams = ((1, 'hEventLog'), (1, 'dwInfoLevel'), (1, 'lpBuffer'), (1, 'cbBufSize'), (1, 'pcbBytesNeeded'))
|
||||
|
||||
#def GetNumberOfEventLogRecords(hEventLog, NumberOfRecords):
|
||||
# return GetNumberOfEventLogRecords.ctypes_function(hEventLog, NumberOfRecords)
|
||||
GetNumberOfEventLogRecordsPrototype = WINFUNCTYPE(BOOL, HANDLE, PDWORD)
|
||||
GetNumberOfEventLogRecordsParams = ((1, 'hEventLog'), (1, 'NumberOfRecords'))
|
||||
|
||||
#def CloseEventLog(hEventLog):
|
||||
# return CloseEventLog.ctypes_function(hEventLog)
|
||||
CloseEventLogPrototype = WINFUNCTYPE(BOOL, HANDLE)
|
||||
CloseEventLogParams = ((1, 'hEventLog'),)
|
||||
|
||||
#def ExitProcess(uExitCode):
|
||||
# return ExitProcess.ctypes_function(uExitCode)
|
||||
ExitProcessPrototype = WINFUNCTYPE(VOID, UINT)
|
||||
@@ -984,31 +1419,6 @@ OpenServiceAParams = ((1, 'hSCManager'), (1, 'lpServiceName'), (1, 'dwDesiredAcc
|
||||
OpenServiceWPrototype = WINFUNCTYPE(SC_HANDLE, SC_HANDLE, LPCWSTR, DWORD)
|
||||
OpenServiceWParams = ((1, 'hSCManager'), (1, 'lpServiceName'), (1, 'dwDesiredAccess'))
|
||||
|
||||
#def EnumWindows(lpEnumFunc, lParam):
|
||||
# return EnumWindows.ctypes_function(lpEnumFunc, lParam)
|
||||
EnumWindowsPrototype = WINFUNCTYPE(BOOL, WNDENUMPROC, LPARAM)
|
||||
EnumWindowsParams = ((1, 'lpEnumFunc'), (1, 'lParam'))
|
||||
|
||||
#def GetWindowTextA(hWnd, lpString, nMaxCount):
|
||||
# return GetWindowTextA.ctypes_function(hWnd, lpString, nMaxCount)
|
||||
GetWindowTextAPrototype = WINFUNCTYPE(INT, HWND, LPSTR, INT)
|
||||
GetWindowTextAParams = ((1, 'hWnd'), (1, 'lpString'), (1, 'nMaxCount'))
|
||||
|
||||
#def GetWindowTextW(hWnd, lpString, nMaxCount):
|
||||
# return GetWindowTextW.ctypes_function(hWnd, lpString, nMaxCount)
|
||||
GetWindowTextWPrototype = WINFUNCTYPE(INT, HWND, LPWSTR, INT)
|
||||
GetWindowTextWParams = ((1, 'hWnd'), (1, 'lpString'), (1, 'nMaxCount'))
|
||||
|
||||
#def GetWindowModuleFileNameA(hwnd, pszFileName, cchFileNameMax):
|
||||
# return GetWindowModuleFileNameA.ctypes_function(hwnd, pszFileName, cchFileNameMax)
|
||||
GetWindowModuleFileNameAPrototype = WINFUNCTYPE(UINT, HWND, LPSTR, UINT)
|
||||
GetWindowModuleFileNameAParams = ((1, 'hwnd'), (1, 'pszFileName'), (1, 'cchFileNameMax'))
|
||||
|
||||
#def GetWindowModuleFileNameW(hwnd, pszFileName, cchFileNameMax):
|
||||
# return GetWindowModuleFileNameW.ctypes_function(hwnd, pszFileName, cchFileNameMax)
|
||||
GetWindowModuleFileNameWPrototype = WINFUNCTYPE(UINT, HWND, LPWSTR, UINT)
|
||||
GetWindowModuleFileNameWParams = ((1, 'hwnd'), (1, 'pszFileName'), (1, 'cchFileNameMax'))
|
||||
|
||||
#def GetLogicalDriveStringsA(nBufferLength, lpBuffer):
|
||||
# return GetLogicalDriveStringsA.ctypes_function(nBufferLength, lpBuffer)
|
||||
GetLogicalDriveStringsAPrototype = WINFUNCTYPE(DWORD, DWORD, LPCSTR)
|
||||
@@ -1249,21 +1659,6 @@ GetLongPathNameWParams = ((1, 'lpszShortPath'), (1, 'lpszLongPath'), (1, 'cchBuf
|
||||
GetProcessDEPPolicyPrototype = WINFUNCTYPE(BOOL, HANDLE, LPDWORD, PBOOL)
|
||||
GetProcessDEPPolicyParams = ((1, 'hProcess'), (1, 'lpFlags'), (1, 'lpPermanent'))
|
||||
|
||||
#def GetCursorPos(lpPoint):
|
||||
# return GetCursorPos.ctypes_function(lpPoint)
|
||||
GetCursorPosPrototype = WINFUNCTYPE(BOOL, LPPOINT)
|
||||
GetCursorPosParams = ((1, 'lpPoint'),)
|
||||
|
||||
#def WindowFromPoint(Point):
|
||||
# return WindowFromPoint.ctypes_function(Point)
|
||||
WindowFromPointPrototype = WINFUNCTYPE(HWND, POINT)
|
||||
WindowFromPointParams = ((1, 'Point'),)
|
||||
|
||||
#def GetWindowRect(hWnd, lpRect):
|
||||
# return GetWindowRect.ctypes_function(hWnd, lpRect)
|
||||
GetWindowRectPrototype = WINFUNCTYPE(BOOL, HWND, LPRECT)
|
||||
GetWindowRectParams = ((1, 'hWnd'), (1, 'lpRect'))
|
||||
|
||||
#def GetNamedSecurityInfoA(pObjectName, ObjectType, SecurityInfo, ppsidOwner, ppsidGroup, ppDacl, ppSacl, ppSecurityDescriptor):
|
||||
# return GetNamedSecurityInfoA.ctypes_function(pObjectName, ObjectType, SecurityInfo, ppsidOwner, ppsidGroup, ppDacl, ppSacl, ppSecurityDescriptor)
|
||||
GetNamedSecurityInfoAPrototype = WINFUNCTYPE(DWORD, LPCSTR, SE_OBJECT_TYPE, SECURITY_INFORMATION, POINTER(PSID), POINTER(PSID), POINTER(PACL), POINTER(PACL), POINTER(PSECURITY_DESCRIPTOR))
|
||||
@@ -1384,283 +1779,3 @@ RtlDosPathNameToNtPathName_UParams = ((1, 'DosName'), (1, 'NtName'), (1, 'PartNa
|
||||
ApiSetResolveToHostPrototype = WINFUNCTYPE(NTSTATUS, PVOID, PUNICODE_STRING, PUNICODE_STRING, PBOOLEAN, PUNICODE_STRING)
|
||||
ApiSetResolveToHostParams = ((1, 'Schema'), (1, 'FileNameIn'), (1, 'ParentName'), (1, 'Resolved'), (1, 'HostBinary'))
|
||||
|
||||
#def TpCallbackSendAlpcMessageOnCompletion(TpHandle, PortHandle, Flags, SendMessage):
|
||||
# return TpCallbackSendAlpcMessageOnCompletion.ctypes_function(TpHandle, PortHandle, Flags, SendMessage)
|
||||
TpCallbackSendAlpcMessageOnCompletionPrototype = WINFUNCTYPE(NTSTATUS, HANDLE, HANDLE, ULONG, PPORT_MESSAGE)
|
||||
TpCallbackSendAlpcMessageOnCompletionParams = ((1, 'TpHandle'), (1, 'PortHandle'), (1, 'Flags'), (1, 'SendMessage'))
|
||||
|
||||
#def CryptCATAdminCalcHashFromFileHandle(hFile, pcbHash, pbHash, dwFlags):
|
||||
# return CryptCATAdminCalcHashFromFileHandle.ctypes_function(hFile, pcbHash, pbHash, dwFlags)
|
||||
CryptCATAdminCalcHashFromFileHandlePrototype = WINFUNCTYPE(BOOL, HANDLE, POINTER(DWORD), POINTER(BYTE), DWORD)
|
||||
CryptCATAdminCalcHashFromFileHandleParams = ((1, 'hFile'), (1, 'pcbHash'), (1, 'pbHash'), (1, 'dwFlags'))
|
||||
|
||||
#def CryptCATAdminEnumCatalogFromHash(hCatAdmin, pbHash, cbHash, dwFlags, phPrevCatInfo):
|
||||
# return CryptCATAdminEnumCatalogFromHash.ctypes_function(hCatAdmin, pbHash, cbHash, dwFlags, phPrevCatInfo)
|
||||
CryptCATAdminEnumCatalogFromHashPrototype = WINFUNCTYPE(HCATINFO, HCATADMIN, POINTER(BYTE), DWORD, DWORD, POINTER(HCATINFO))
|
||||
CryptCATAdminEnumCatalogFromHashParams = ((1, 'hCatAdmin'), (1, 'pbHash'), (1, 'cbHash'), (1, 'dwFlags'), (1, 'phPrevCatInfo'))
|
||||
|
||||
#def CryptCATAdminAcquireContext(phCatAdmin, pgSubsystem, dwFlags):
|
||||
# return CryptCATAdminAcquireContext.ctypes_function(phCatAdmin, pgSubsystem, dwFlags)
|
||||
CryptCATAdminAcquireContextPrototype = WINFUNCTYPE(BOOL, POINTER(HCATADMIN), POINTER(GUID), DWORD)
|
||||
CryptCATAdminAcquireContextParams = ((1, 'phCatAdmin'), (1, 'pgSubsystem'), (1, 'dwFlags'))
|
||||
|
||||
#def CryptCATCatalogInfoFromContext(hCatInfo, psCatInfo, dwFlags):
|
||||
# return CryptCATCatalogInfoFromContext.ctypes_function(hCatInfo, psCatInfo, dwFlags)
|
||||
CryptCATCatalogInfoFromContextPrototype = WINFUNCTYPE(BOOL, HCATINFO, POINTER(CATALOG_INFO), DWORD)
|
||||
CryptCATCatalogInfoFromContextParams = ((1, 'hCatInfo'), (1, 'psCatInfo'), (1, 'dwFlags'))
|
||||
|
||||
#def CryptCATAdminReleaseCatalogContext(hCatAdmin, hCatInfo, dwFlags):
|
||||
# return CryptCATAdminReleaseCatalogContext.ctypes_function(hCatAdmin, hCatInfo, dwFlags)
|
||||
CryptCATAdminReleaseCatalogContextPrototype = WINFUNCTYPE(BOOL, HCATADMIN, HCATINFO, DWORD)
|
||||
CryptCATAdminReleaseCatalogContextParams = ((1, 'hCatAdmin'), (1, 'hCatInfo'), (1, 'dwFlags'))
|
||||
|
||||
#def CryptCATAdminReleaseContext(hCatAdmin, dwFlags):
|
||||
# return CryptCATAdminReleaseContext.ctypes_function(hCatAdmin, dwFlags)
|
||||
CryptCATAdminReleaseContextPrototype = WINFUNCTYPE(BOOL, HCATADMIN, DWORD)
|
||||
CryptCATAdminReleaseContextParams = ((1, 'hCatAdmin'), (1, 'dwFlags'))
|
||||
|
||||
#def CryptCATGetAttrInfo(hCatalog, pCatMember, pwszReferenceTag):
|
||||
# return CryptCATGetAttrInfo.ctypes_function(hCatalog, pCatMember, pwszReferenceTag)
|
||||
CryptCATGetAttrInfoPrototype = WINFUNCTYPE(POINTER(CRYPTCATATTRIBUTE), HANDLE, POINTER(CRYPTCATMEMBER), LPWSTR)
|
||||
CryptCATGetAttrInfoParams = ((1, 'hCatalog'), (1, 'pCatMember'), (1, 'pwszReferenceTag'))
|
||||
|
||||
#def CryptCATGetMemberInfo(hCatalog, pwszReferenceTag):
|
||||
# return CryptCATGetMemberInfo.ctypes_function(hCatalog, pwszReferenceTag)
|
||||
CryptCATGetMemberInfoPrototype = WINFUNCTYPE(POINTER(CRYPTCATMEMBER), HANDLE, LPWSTR)
|
||||
CryptCATGetMemberInfoParams = ((1, 'hCatalog'), (1, 'pwszReferenceTag'))
|
||||
|
||||
#def CryptCATGetAttrInfo(hCatalog, pCatMember, pwszReferenceTag):
|
||||
# return CryptCATGetAttrInfo.ctypes_function(hCatalog, pCatMember, pwszReferenceTag)
|
||||
CryptCATGetAttrInfoPrototype = WINFUNCTYPE(POINTER(CRYPTCATATTRIBUTE), HANDLE, POINTER(CRYPTCATMEMBER), LPWSTR)
|
||||
CryptCATGetAttrInfoParams = ((1, 'hCatalog'), (1, 'pCatMember'), (1, 'pwszReferenceTag'))
|
||||
|
||||
#def CryptCATEnumerateCatAttr(hCatalog, pPrevAttr):
|
||||
# return CryptCATEnumerateCatAttr.ctypes_function(hCatalog, pPrevAttr)
|
||||
CryptCATEnumerateCatAttrPrototype = WINFUNCTYPE(POINTER(CRYPTCATATTRIBUTE), HANDLE, POINTER(CRYPTCATATTRIBUTE))
|
||||
CryptCATEnumerateCatAttrParams = ((1, 'hCatalog'), (1, 'pPrevAttr'))
|
||||
|
||||
#def CryptCATEnumerateAttr(hCatalog, pCatMember, pPrevAttr):
|
||||
# return CryptCATEnumerateAttr.ctypes_function(hCatalog, pCatMember, pPrevAttr)
|
||||
CryptCATEnumerateAttrPrototype = WINFUNCTYPE(POINTER(CRYPTCATATTRIBUTE), HANDLE, POINTER(CRYPTCATMEMBER), POINTER(CRYPTCATATTRIBUTE))
|
||||
CryptCATEnumerateAttrParams = ((1, 'hCatalog'), (1, 'pCatMember'), (1, 'pPrevAttr'))
|
||||
|
||||
#def CryptCATEnumerateMember(hCatalog, pPrevMember):
|
||||
# return CryptCATEnumerateMember.ctypes_function(hCatalog, pPrevMember)
|
||||
CryptCATEnumerateMemberPrototype = WINFUNCTYPE(POINTER(CRYPTCATMEMBER), HANDLE, POINTER(CRYPTCATMEMBER))
|
||||
CryptCATEnumerateMemberParams = ((1, 'hCatalog'), (1, 'pPrevMember'))
|
||||
|
||||
#def CryptQueryObject(dwObjectType, pvObject, dwExpectedContentTypeFlags, dwExpectedFormatTypeFlags, dwFlags, pdwMsgAndCertEncodingType, pdwContentType, pdwFormatType, phCertStore, phMsg, ppvContext):
|
||||
# return CryptQueryObject.ctypes_function(dwObjectType, pvObject, dwExpectedContentTypeFlags, dwExpectedFormatTypeFlags, dwFlags, pdwMsgAndCertEncodingType, pdwContentType, pdwFormatType, phCertStore, phMsg, ppvContext)
|
||||
CryptQueryObjectPrototype = WINFUNCTYPE(BOOL, DWORD, PVOID, DWORD, DWORD, DWORD, POINTER(DWORD), POINTER(DWORD), POINTER(DWORD), POINTER(HCERTSTORE), POINTER(HCRYPTMSG), POINTER(PVOID))
|
||||
CryptQueryObjectParams = ((1, 'dwObjectType'), (1, 'pvObject'), (1, 'dwExpectedContentTypeFlags'), (1, 'dwExpectedFormatTypeFlags'), (1, 'dwFlags'), (1, 'pdwMsgAndCertEncodingType'), (1, 'pdwContentType'), (1, 'pdwFormatType'), (1, 'phCertStore'), (1, 'phMsg'), (1, 'ppvContext'))
|
||||
|
||||
#def CryptMsgGetParam(hCryptMsg, dwParamType, dwIndex, pvData, pcbData):
|
||||
# return CryptMsgGetParam.ctypes_function(hCryptMsg, dwParamType, dwIndex, pvData, pcbData)
|
||||
CryptMsgGetParamPrototype = WINFUNCTYPE(BOOL, HCRYPTMSG, DWORD, DWORD, PVOID, POINTER(DWORD))
|
||||
CryptMsgGetParamParams = ((1, 'hCryptMsg'), (1, 'dwParamType'), (1, 'dwIndex'), (1, 'pvData'), (1, 'pcbData'))
|
||||
|
||||
#def CryptDecodeObject(dwCertEncodingType, lpszStructType, pbEncoded, cbEncoded, dwFlags, pvStructInfo, pcbStructInfo):
|
||||
# return CryptDecodeObject.ctypes_function(dwCertEncodingType, lpszStructType, pbEncoded, cbEncoded, dwFlags, pvStructInfo, pcbStructInfo)
|
||||
CryptDecodeObjectPrototype = WINFUNCTYPE(BOOL, DWORD, LPCSTR, POINTER(BYTE), DWORD, DWORD, PVOID, POINTER(DWORD))
|
||||
CryptDecodeObjectParams = ((1, 'dwCertEncodingType'), (1, 'lpszStructType'), (1, 'pbEncoded'), (1, 'cbEncoded'), (1, 'dwFlags'), (1, 'pvStructInfo'), (1, 'pcbStructInfo'))
|
||||
|
||||
#def CertFindCertificateInStore(hCertStore, dwCertEncodingType, dwFindFlags, dwFindType, pvFindPara, pPrevCertContext):
|
||||
# return CertFindCertificateInStore.ctypes_function(hCertStore, dwCertEncodingType, dwFindFlags, dwFindType, pvFindPara, pPrevCertContext)
|
||||
CertFindCertificateInStorePrototype = WINFUNCTYPE(PCCERT_CONTEXT, HCERTSTORE, DWORD, DWORD, DWORD, PVOID, PCCERT_CONTEXT)
|
||||
CertFindCertificateInStoreParams = ((1, 'hCertStore'), (1, 'dwCertEncodingType'), (1, 'dwFindFlags'), (1, 'dwFindType'), (1, 'pvFindPara'), (1, 'pPrevCertContext'))
|
||||
|
||||
#def CertGetNameStringA(pCertContext, dwType, dwFlags, pvTypePara, pszNameString, cchNameString):
|
||||
# return CertGetNameStringA.ctypes_function(pCertContext, dwType, dwFlags, pvTypePara, pszNameString, cchNameString)
|
||||
CertGetNameStringAPrototype = WINFUNCTYPE(DWORD, PCCERT_CONTEXT, DWORD, DWORD, PVOID, LPCSTR, DWORD)
|
||||
CertGetNameStringAParams = ((1, 'pCertContext'), (1, 'dwType'), (1, 'dwFlags'), (1, 'pvTypePara'), (1, 'pszNameString'), (1, 'cchNameString'))
|
||||
|
||||
#def CertGetNameStringW(pCertContext, dwType, dwFlags, pvTypePara, pszNameString, cchNameString):
|
||||
# return CertGetNameStringW.ctypes_function(pCertContext, dwType, dwFlags, pvTypePara, pszNameString, cchNameString)
|
||||
CertGetNameStringWPrototype = WINFUNCTYPE(DWORD, PCCERT_CONTEXT, DWORD, DWORD, PVOID, LPWSTR, DWORD)
|
||||
CertGetNameStringWParams = ((1, 'pCertContext'), (1, 'dwType'), (1, 'dwFlags'), (1, 'pvTypePara'), (1, 'pszNameString'), (1, 'cchNameString'))
|
||||
|
||||
#def CertGetCertificateChain(hChainEngine, pCertContext, pTime, hAdditionalStore, pChainPara, dwFlags, pvReserved, ppChainContext):
|
||||
# return CertGetCertificateChain.ctypes_function(hChainEngine, pCertContext, pTime, hAdditionalStore, pChainPara, dwFlags, pvReserved, ppChainContext)
|
||||
CertGetCertificateChainPrototype = WINFUNCTYPE(BOOL, HCERTCHAINENGINE, PCCERT_CONTEXT, LPFILETIME, HCERTSTORE, PCERT_CHAIN_PARA, DWORD, LPVOID, POINTER(PCCERT_CHAIN_CONTEXT))
|
||||
CertGetCertificateChainParams = ((1, 'hChainEngine'), (1, 'pCertContext'), (1, 'pTime'), (1, 'hAdditionalStore'), (1, 'pChainPara'), (1, 'dwFlags'), (1, 'pvReserved'), (1, 'ppChainContext'))
|
||||
|
||||
#def CertCreateSelfSignCertificate(hCryptProvOrNCryptKey, pSubjectIssuerBlob, dwFlags, pKeyProvInfo, pSignatureAlgorithm, pStartTime, pEndTime, pExtensions):
|
||||
# return CertCreateSelfSignCertificate.ctypes_function(hCryptProvOrNCryptKey, pSubjectIssuerBlob, dwFlags, pKeyProvInfo, pSignatureAlgorithm, pStartTime, pEndTime, pExtensions)
|
||||
CertCreateSelfSignCertificatePrototype = WINFUNCTYPE(PCCERT_CONTEXT, HCRYPTPROV_OR_NCRYPT_KEY_HANDLE, PCERT_NAME_BLOB, DWORD, PCRYPT_KEY_PROV_INFO, PCRYPT_ALGORITHM_IDENTIFIER, PSYSTEMTIME, PSYSTEMTIME, PCERT_EXTENSIONS)
|
||||
CertCreateSelfSignCertificateParams = ((1, 'hCryptProvOrNCryptKey'), (1, 'pSubjectIssuerBlob'), (1, 'dwFlags'), (1, 'pKeyProvInfo'), (1, 'pSignatureAlgorithm'), (1, 'pStartTime'), (1, 'pEndTime'), (1, 'pExtensions'))
|
||||
|
||||
#def CertStrToNameA(dwCertEncodingType, pszX500, dwStrType, pvReserved, pbEncoded, pcbEncoded, ppszError):
|
||||
# return CertStrToNameA.ctypes_function(dwCertEncodingType, pszX500, dwStrType, pvReserved, pbEncoded, pcbEncoded, ppszError)
|
||||
CertStrToNameAPrototype = WINFUNCTYPE(BOOL, DWORD, LPCSTR, DWORD, PVOID, POINTER(BYTE), POINTER(DWORD), POINTER(LPCSTR))
|
||||
CertStrToNameAParams = ((1, 'dwCertEncodingType'), (1, 'pszX500'), (1, 'dwStrType'), (1, 'pvReserved'), (1, 'pbEncoded'), (1, 'pcbEncoded'), (1, 'ppszError'))
|
||||
|
||||
#def CertStrToNameW(dwCertEncodingType, pszX500, dwStrType, pvReserved, pbEncoded, pcbEncoded, ppszError):
|
||||
# return CertStrToNameW.ctypes_function(dwCertEncodingType, pszX500, dwStrType, pvReserved, pbEncoded, pcbEncoded, ppszError)
|
||||
CertStrToNameWPrototype = WINFUNCTYPE(BOOL, DWORD, LPWSTR, DWORD, PVOID, POINTER(BYTE), POINTER(DWORD), POINTER(LPWSTR))
|
||||
CertStrToNameWParams = ((1, 'dwCertEncodingType'), (1, 'pszX500'), (1, 'dwStrType'), (1, 'pvReserved'), (1, 'pbEncoded'), (1, 'pcbEncoded'), (1, 'ppszError'))
|
||||
|
||||
#def CertOpenStore(lpszStoreProvider, dwMsgAndCertEncodingType, hCryptProv, dwFlags, pvPara):
|
||||
# return CertOpenStore.ctypes_function(lpszStoreProvider, dwMsgAndCertEncodingType, hCryptProv, dwFlags, pvPara)
|
||||
CertOpenStorePrototype = WINFUNCTYPE(HCERTSTORE, LPCSTR, DWORD, HCRYPTPROV_LEGACY, DWORD, PVOID)
|
||||
CertOpenStoreParams = ((1, 'lpszStoreProvider'), (1, 'dwMsgAndCertEncodingType'), (1, 'hCryptProv'), (1, 'dwFlags'), (1, 'pvPara'))
|
||||
|
||||
#def CertAddCertificateContextToStore(hCertStore, pCertContext, dwAddDisposition, ppStoreContext):
|
||||
# return CertAddCertificateContextToStore.ctypes_function(hCertStore, pCertContext, dwAddDisposition, ppStoreContext)
|
||||
CertAddCertificateContextToStorePrototype = WINFUNCTYPE(BOOL, HCERTSTORE, PCCERT_CONTEXT, DWORD, POINTER(PCCERT_CONTEXT))
|
||||
CertAddCertificateContextToStoreParams = ((1, 'hCertStore'), (1, 'pCertContext'), (1, 'dwAddDisposition'), (1, 'ppStoreContext'))
|
||||
|
||||
#def PFXExportCertStoreEx(hStore, pPFX, szPassword, pvPara, dwFlags):
|
||||
# return PFXExportCertStoreEx.ctypes_function(hStore, pPFX, szPassword, pvPara, dwFlags)
|
||||
PFXExportCertStoreExPrototype = WINFUNCTYPE(BOOL, HCERTSTORE, POINTER(CRYPT_DATA_BLOB), LPCWSTR, PVOID, DWORD)
|
||||
PFXExportCertStoreExParams = ((1, 'hStore'), (1, 'pPFX'), (1, 'szPassword'), (1, 'pvPara'), (1, 'dwFlags'))
|
||||
|
||||
#def PFXImportCertStore(pPFX, szPassword, dwFlags):
|
||||
# return PFXImportCertStore.ctypes_function(pPFX, szPassword, dwFlags)
|
||||
PFXImportCertStorePrototype = WINFUNCTYPE(HCERTSTORE, POINTER(CRYPT_DATA_BLOB), LPCWSTR, DWORD)
|
||||
PFXImportCertStoreParams = ((1, 'pPFX'), (1, 'szPassword'), (1, 'dwFlags'))
|
||||
|
||||
#def CryptGenKey(hProv, Algid, dwFlags, phKey):
|
||||
# return CryptGenKey.ctypes_function(hProv, Algid, dwFlags, phKey)
|
||||
CryptGenKeyPrototype = WINFUNCTYPE(BOOL, HCRYPTPROV, ALG_ID, DWORD, POINTER(HCRYPTKEY))
|
||||
CryptGenKeyParams = ((1, 'hProv'), (1, 'Algid'), (1, 'dwFlags'), (1, 'phKey'))
|
||||
|
||||
#def CryptDestroyKey(hKey):
|
||||
# return CryptDestroyKey.ctypes_function(hKey)
|
||||
CryptDestroyKeyPrototype = WINFUNCTYPE(BOOL, HCRYPTKEY)
|
||||
CryptDestroyKeyParams = ((1, 'hKey'),)
|
||||
|
||||
#def CryptAcquireContextA(phProv, pszContainer, pszProvider, dwProvType, dwFlags):
|
||||
# return CryptAcquireContextA.ctypes_function(phProv, pszContainer, pszProvider, dwProvType, dwFlags)
|
||||
CryptAcquireContextAPrototype = WINFUNCTYPE(BOOL, POINTER(HCRYPTPROV), LPCSTR, LPCSTR, DWORD, DWORD)
|
||||
CryptAcquireContextAParams = ((1, 'phProv'), (1, 'pszContainer'), (1, 'pszProvider'), (1, 'dwProvType'), (1, 'dwFlags'))
|
||||
|
||||
#def CryptAcquireContextW(phProv, pszContainer, pszProvider, dwProvType, dwFlags):
|
||||
# return CryptAcquireContextW.ctypes_function(phProv, pszContainer, pszProvider, dwProvType, dwFlags)
|
||||
CryptAcquireContextWPrototype = WINFUNCTYPE(BOOL, POINTER(HCRYPTPROV), LPWSTR, LPWSTR, DWORD, DWORD)
|
||||
CryptAcquireContextWParams = ((1, 'phProv'), (1, 'pszContainer'), (1, 'pszProvider'), (1, 'dwProvType'), (1, 'dwFlags'))
|
||||
|
||||
#def CryptReleaseContext(hProv, dwFlags):
|
||||
# return CryptReleaseContext.ctypes_function(hProv, dwFlags)
|
||||
CryptReleaseContextPrototype = WINFUNCTYPE(BOOL, HCRYPTPROV, DWORD)
|
||||
CryptReleaseContextParams = ((1, 'hProv'), (1, 'dwFlags'))
|
||||
|
||||
#def CryptExportKey(hKey, hExpKey, dwBlobType, dwFlags, pbData, pdwDataLen):
|
||||
# return CryptExportKey.ctypes_function(hKey, hExpKey, dwBlobType, dwFlags, pbData, pdwDataLen)
|
||||
CryptExportKeyPrototype = WINFUNCTYPE(BOOL, HCRYPTKEY, HCRYPTKEY, DWORD, DWORD, POINTER(BYTE), POINTER(DWORD))
|
||||
CryptExportKeyParams = ((1, 'hKey'), (1, 'hExpKey'), (1, 'dwBlobType'), (1, 'dwFlags'), (1, 'pbData'), (1, 'pdwDataLen'))
|
||||
|
||||
#def CertGetCertificateContextProperty(pCertContext, dwPropId, pvData, pcbData):
|
||||
# return CertGetCertificateContextProperty.ctypes_function(pCertContext, dwPropId, pvData, pcbData)
|
||||
CertGetCertificateContextPropertyPrototype = WINFUNCTYPE(BOOL, PCCERT_CONTEXT, DWORD, PVOID, POINTER(DWORD))
|
||||
CertGetCertificateContextPropertyParams = ((1, 'pCertContext'), (1, 'dwPropId'), (1, 'pvData'), (1, 'pcbData'))
|
||||
|
||||
#def CertEnumCertificateContextProperties(pCertContext, dwPropId):
|
||||
# return CertEnumCertificateContextProperties.ctypes_function(pCertContext, dwPropId)
|
||||
CertEnumCertificateContextPropertiesPrototype = WINFUNCTYPE(DWORD, PCCERT_CONTEXT, DWORD)
|
||||
CertEnumCertificateContextPropertiesParams = ((1, 'pCertContext'), (1, 'dwPropId'))
|
||||
|
||||
#def CryptEncryptMessage(pEncryptPara, cRecipientCert, rgpRecipientCert, pbToBeEncrypted, cbToBeEncrypted, pbEncryptedBlob, pcbEncryptedBlob):
|
||||
# return CryptEncryptMessage.ctypes_function(pEncryptPara, cRecipientCert, rgpRecipientCert, pbToBeEncrypted, cbToBeEncrypted, pbEncryptedBlob, pcbEncryptedBlob)
|
||||
CryptEncryptMessagePrototype = WINFUNCTYPE(BOOL, PCRYPT_ENCRYPT_MESSAGE_PARA, DWORD, POINTER(PCCERT_CONTEXT), POINTER(BYTE), DWORD, POINTER(BYTE), POINTER(DWORD))
|
||||
CryptEncryptMessageParams = ((1, 'pEncryptPara'), (1, 'cRecipientCert'), (1, 'rgpRecipientCert'), (1, 'pbToBeEncrypted'), (1, 'cbToBeEncrypted'), (1, 'pbEncryptedBlob'), (1, 'pcbEncryptedBlob'))
|
||||
|
||||
#def CryptDecryptMessage(pDecryptPara, pbEncryptedBlob, cbEncryptedBlob, pbDecrypted, pcbDecrypted, ppXchgCert):
|
||||
# return CryptDecryptMessage.ctypes_function(pDecryptPara, pbEncryptedBlob, cbEncryptedBlob, pbDecrypted, pcbDecrypted, ppXchgCert)
|
||||
CryptDecryptMessagePrototype = WINFUNCTYPE(BOOL, PCRYPT_DECRYPT_MESSAGE_PARA, POINTER(BYTE), DWORD, POINTER(BYTE), POINTER(DWORD), POINTER(PCCERT_CONTEXT))
|
||||
CryptDecryptMessageParams = ((1, 'pDecryptPara'), (1, 'pbEncryptedBlob'), (1, 'cbEncryptedBlob'), (1, 'pbDecrypted'), (1, 'pcbDecrypted'), (1, 'ppXchgCert'))
|
||||
|
||||
#def CryptAcquireCertificatePrivateKey(pCert, dwFlags, pvParameters, phCryptProvOrNCryptKey, pdwKeySpec, pfCallerFreeProvOrNCryptKey):
|
||||
# return CryptAcquireCertificatePrivateKey.ctypes_function(pCert, dwFlags, pvParameters, phCryptProvOrNCryptKey, pdwKeySpec, pfCallerFreeProvOrNCryptKey)
|
||||
CryptAcquireCertificatePrivateKeyPrototype = WINFUNCTYPE(BOOL, PCCERT_CONTEXT, DWORD, PVOID, POINTER(HCRYPTPROV_OR_NCRYPT_KEY_HANDLE), POINTER(DWORD), POINTER(BOOL))
|
||||
CryptAcquireCertificatePrivateKeyParams = ((1, 'pCert'), (1, 'dwFlags'), (1, 'pvParameters'), (1, 'phCryptProvOrNCryptKey'), (1, 'pdwKeySpec'), (1, 'pfCallerFreeProvOrNCryptKey'))
|
||||
|
||||
#def CertDuplicateCertificateContext(pCertContext):
|
||||
# return CertDuplicateCertificateContext.ctypes_function(pCertContext)
|
||||
CertDuplicateCertificateContextPrototype = WINFUNCTYPE(PCCERT_CONTEXT, PCCERT_CONTEXT)
|
||||
CertDuplicateCertificateContextParams = ((1, 'pCertContext'),)
|
||||
|
||||
#def CertEnumCertificatesInStore(hCertStore, pPrevCertContext):
|
||||
# return CertEnumCertificatesInStore.ctypes_function(hCertStore, pPrevCertContext)
|
||||
CertEnumCertificatesInStorePrototype = WINFUNCTYPE(PCCERT_CONTEXT, HCERTSTORE, PCCERT_CONTEXT)
|
||||
CertEnumCertificatesInStoreParams = ((1, 'hCertStore'), (1, 'pPrevCertContext'))
|
||||
|
||||
#def CryptEncodeObjectEx(dwCertEncodingType, lpszStructType, pvStructInfo, dwFlags, pEncodePara, pvEncoded, pcbEncoded):
|
||||
# return CryptEncodeObjectEx.ctypes_function(dwCertEncodingType, lpszStructType, pvStructInfo, dwFlags, pEncodePara, pvEncoded, pcbEncoded)
|
||||
CryptEncodeObjectExPrototype = WINFUNCTYPE(BOOL, DWORD, LPCSTR, PVOID, DWORD, PCRYPT_ENCODE_PARA, PVOID, POINTER(DWORD))
|
||||
CryptEncodeObjectExParams = ((1, 'dwCertEncodingType'), (1, 'lpszStructType'), (1, 'pvStructInfo'), (1, 'dwFlags'), (1, 'pEncodePara'), (1, 'pvEncoded'), (1, 'pcbEncoded'))
|
||||
|
||||
#def CertCreateCertificateContext(dwCertEncodingType, pbCertEncoded, cbCertEncoded):
|
||||
# return CertCreateCertificateContext.ctypes_function(dwCertEncodingType, pbCertEncoded, cbCertEncoded)
|
||||
CertCreateCertificateContextPrototype = WINFUNCTYPE(PCCERT_CONTEXT, DWORD, POINTER(BYTE), DWORD)
|
||||
CertCreateCertificateContextParams = ((1, 'dwCertEncodingType'), (1, 'pbCertEncoded'), (1, 'cbCertEncoded'))
|
||||
|
||||
#def CertCompareCertificate(dwCertEncodingType, pCertId1, pCertId2):
|
||||
# return CertCompareCertificate.ctypes_function(dwCertEncodingType, pCertId1, pCertId2)
|
||||
CertCompareCertificatePrototype = WINFUNCTYPE(BOOL, DWORD, PCERT_INFO, PCERT_INFO)
|
||||
CertCompareCertificateParams = ((1, 'dwCertEncodingType'), (1, 'pCertId1'), (1, 'pCertId2'))
|
||||
|
||||
#def CertEnumCTLsInStore(hCertStore, pPrevCtlContext):
|
||||
# return CertEnumCTLsInStore.ctypes_function(hCertStore, pPrevCtlContext)
|
||||
CertEnumCTLsInStorePrototype = WINFUNCTYPE(PCCTL_CONTEXT, HCERTSTORE, PCCTL_CONTEXT)
|
||||
CertEnumCTLsInStoreParams = ((1, 'hCertStore'), (1, 'pPrevCtlContext'))
|
||||
|
||||
#def CertDuplicateCTLContext(pCtlContext):
|
||||
# return CertDuplicateCTLContext.ctypes_function(pCtlContext)
|
||||
CertDuplicateCTLContextPrototype = WINFUNCTYPE(PCCTL_CONTEXT, PCCTL_CONTEXT)
|
||||
CertDuplicateCTLContextParams = ((1, 'pCtlContext'),)
|
||||
|
||||
#def CertFreeCTLContext(pCtlContext):
|
||||
# return CertFreeCTLContext.ctypes_function(pCtlContext)
|
||||
CertFreeCTLContextPrototype = WINFUNCTYPE(BOOL, PCCTL_CONTEXT)
|
||||
CertFreeCTLContextParams = ((1, 'pCtlContext'),)
|
||||
|
||||
#def CryptUIDlgViewContext(dwContextType, pvContext, hwnd, pwszTitle, dwFlags, pvReserved):
|
||||
# return CryptUIDlgViewContext.ctypes_function(dwContextType, pvContext, hwnd, pwszTitle, dwFlags, pvReserved)
|
||||
CryptUIDlgViewContextPrototype = WINFUNCTYPE(BOOL, DWORD, PVOID, HWND, LPCWSTR, DWORD, PVOID)
|
||||
CryptUIDlgViewContextParams = ((1, 'dwContextType'), (1, 'pvContext'), (1, 'hwnd'), (1, 'pwszTitle'), (1, 'dwFlags'), (1, 'pvReserved'))
|
||||
|
||||
#def CryptMsgVerifyCountersignatureEncoded(hCryptProv, dwEncodingType, pbSignerInfo, cbSignerInfo, pbSignerInfoCountersignature, cbSignerInfoCountersignature, pciCountersigner):
|
||||
# return CryptMsgVerifyCountersignatureEncoded.ctypes_function(hCryptProv, dwEncodingType, pbSignerInfo, cbSignerInfo, pbSignerInfoCountersignature, cbSignerInfoCountersignature, pciCountersigner)
|
||||
CryptMsgVerifyCountersignatureEncodedPrototype = WINFUNCTYPE(BOOL, HCRYPTPROV_LEGACY, DWORD, PBYTE, DWORD, PBYTE, DWORD, PCERT_INFO)
|
||||
CryptMsgVerifyCountersignatureEncodedParams = ((1, 'hCryptProv'), (1, 'dwEncodingType'), (1, 'pbSignerInfo'), (1, 'cbSignerInfo'), (1, 'pbSignerInfoCountersignature'), (1, 'cbSignerInfoCountersignature'), (1, 'pciCountersigner'))
|
||||
|
||||
#def CryptMsgVerifyCountersignatureEncodedEx(hCryptProv, dwEncodingType, pbSignerInfo, cbSignerInfo, pbSignerInfoCountersignature, cbSignerInfoCountersignature, dwSignerType, pvSigner, dwFlags, pvExtra):
|
||||
# return CryptMsgVerifyCountersignatureEncodedEx.ctypes_function(hCryptProv, dwEncodingType, pbSignerInfo, cbSignerInfo, pbSignerInfoCountersignature, cbSignerInfoCountersignature, dwSignerType, pvSigner, dwFlags, pvExtra)
|
||||
CryptMsgVerifyCountersignatureEncodedExPrototype = WINFUNCTYPE(BOOL, HCRYPTPROV_LEGACY, DWORD, PBYTE, DWORD, PBYTE, DWORD, DWORD, PVOID, DWORD, PVOID)
|
||||
CryptMsgVerifyCountersignatureEncodedExParams = ((1, 'hCryptProv'), (1, 'dwEncodingType'), (1, 'pbSignerInfo'), (1, 'cbSignerInfo'), (1, 'pbSignerInfoCountersignature'), (1, 'cbSignerInfoCountersignature'), (1, 'dwSignerType'), (1, 'pvSigner'), (1, 'dwFlags'), (1, 'pvExtra'))
|
||||
|
||||
#def OpenEventLogA(lpUNCServerName, lpSourceName):
|
||||
# return OpenEventLogA.ctypes_function(lpUNCServerName, lpSourceName)
|
||||
OpenEventLogAPrototype = WINFUNCTYPE(HANDLE, LPCSTR, LPCSTR)
|
||||
OpenEventLogAParams = ((1, 'lpUNCServerName'), (1, 'lpSourceName'))
|
||||
|
||||
#def OpenEventLogW(lpUNCServerName, lpSourceName):
|
||||
# return OpenEventLogW.ctypes_function(lpUNCServerName, lpSourceName)
|
||||
OpenEventLogWPrototype = WINFUNCTYPE(HANDLE, LPWSTR, LPWSTR)
|
||||
OpenEventLogWParams = ((1, 'lpUNCServerName'), (1, 'lpSourceName'))
|
||||
|
||||
#def ReadEventLogA(hEventLog, dwReadFlags, dwRecordOffset, lpBuffer, nNumberOfBytesToRead, pnBytesRead, pnMinNumberOfBytesNeeded):
|
||||
# return ReadEventLogA.ctypes_function(hEventLog, dwReadFlags, dwRecordOffset, lpBuffer, nNumberOfBytesToRead, pnBytesRead, pnMinNumberOfBytesNeeded)
|
||||
ReadEventLogAPrototype = WINFUNCTYPE(BOOL, HANDLE, DWORD, DWORD, LPVOID, DWORD, POINTER(DWORD), POINTER(DWORD))
|
||||
ReadEventLogAParams = ((1, 'hEventLog'), (1, 'dwReadFlags'), (1, 'dwRecordOffset'), (1, 'lpBuffer'), (1, 'nNumberOfBytesToRead'), (1, 'pnBytesRead'), (1, 'pnMinNumberOfBytesNeeded'))
|
||||
|
||||
#def ReadEventLogW(hEventLog, dwReadFlags, dwRecordOffset, lpBuffer, nNumberOfBytesToRead, pnBytesRead, pnMinNumberOfBytesNeeded):
|
||||
# return ReadEventLogW.ctypes_function(hEventLog, dwReadFlags, dwRecordOffset, lpBuffer, nNumberOfBytesToRead, pnBytesRead, pnMinNumberOfBytesNeeded)
|
||||
ReadEventLogWPrototype = WINFUNCTYPE(BOOL, HANDLE, DWORD, DWORD, LPVOID, DWORD, POINTER(DWORD), POINTER(DWORD))
|
||||
ReadEventLogWParams = ((1, 'hEventLog'), (1, 'dwReadFlags'), (1, 'dwRecordOffset'), (1, 'lpBuffer'), (1, 'nNumberOfBytesToRead'), (1, 'pnBytesRead'), (1, 'pnMinNumberOfBytesNeeded'))
|
||||
|
||||
#def GetEventLogInformation(hEventLog, dwInfoLevel, lpBuffer, cbBufSize, pcbBytesNeeded):
|
||||
# return GetEventLogInformation.ctypes_function(hEventLog, dwInfoLevel, lpBuffer, cbBufSize, pcbBytesNeeded)
|
||||
GetEventLogInformationPrototype = WINFUNCTYPE(BOOL, HANDLE, DWORD, LPVOID, DWORD, LPDWORD)
|
||||
GetEventLogInformationParams = ((1, 'hEventLog'), (1, 'dwInfoLevel'), (1, 'lpBuffer'), (1, 'cbBufSize'), (1, 'pcbBytesNeeded'))
|
||||
|
||||
#def GetNumberOfEventLogRecords(hEventLog, NumberOfRecords):
|
||||
# return GetNumberOfEventLogRecords.ctypes_function(hEventLog, NumberOfRecords)
|
||||
GetNumberOfEventLogRecordsPrototype = WINFUNCTYPE(BOOL, HANDLE, PDWORD)
|
||||
GetNumberOfEventLogRecordsParams = ((1, 'hEventLog'), (1, 'NumberOfRecords'))
|
||||
|
||||
#def CloseEventLog(hEventLog):
|
||||
# return CloseEventLog.ctypes_function(hEventLog)
|
||||
CloseEventLogPrototype = WINFUNCTYPE(BOOL, HANDLE)
|
||||
CloseEventLogParams = ((1, 'hEventLog'),)
|
||||
|
||||
|
||||
+441
-382
@@ -167,16 +167,12 @@ PCWSTR = LPWSTR
|
||||
SIZE_T = c_size_t
|
||||
PSIZE_T = POINTER(SIZE_T)
|
||||
PVOID = c_void_p
|
||||
PPS_POST_PROCESS_INIT_ROUTINE = PVOID
|
||||
NTSTATUS = DWORD
|
||||
SECURITY_INFORMATION = DWORD
|
||||
PSECURITY_INFORMATION = POINTER(SECURITY_INFORMATION)
|
||||
PULONG = POINTER(ULONG)
|
||||
PDWORD = POINTER(DWORD)
|
||||
LPDWORD = POINTER(DWORD)
|
||||
LPTHREAD_START_ROUTINE = PVOID
|
||||
WNDENUMPROC = PVOID
|
||||
PHANDLER_ROUTINE = PVOID
|
||||
LPBYTE = POINTER(BYTE)
|
||||
ULONG_PTR = PVOID
|
||||
DWORD_PTR = ULONG_PTR
|
||||
@@ -186,6 +182,7 @@ CHAR = c_char
|
||||
UCHAR = c_char
|
||||
CSHORT = c_short
|
||||
VARTYPE = c_ushort
|
||||
PUSHORT = POINTER(USHORT)
|
||||
PBOOL = POINTER(BOOL)
|
||||
PSTR = LPSTR
|
||||
PCSTR = LPSTR
|
||||
@@ -195,9 +192,7 @@ OLECHAR = c_wchar
|
||||
POLECHAR = c_wchar_p
|
||||
PUCHAR = POINTER(UCHAR)
|
||||
double = c_double
|
||||
FARPROC = PVOID
|
||||
PSID = PVOID
|
||||
PVECTORED_EXCEPTION_HANDLER = PVOID
|
||||
ULONGLONG = c_ulonglong
|
||||
LONGLONG = c_longlong
|
||||
ULONG64 = c_ulonglong
|
||||
@@ -213,19 +208,11 @@ IFTYPE = ULONG
|
||||
PULONG64 = POINTER(ULONG64)
|
||||
PBYTE = POINTER(BYTE)
|
||||
PUINT = POINTER(UINT)
|
||||
PHANDLE = POINTER(HANDLE)
|
||||
HCATADMIN = HANDLE
|
||||
HCATINFO = HANDLE
|
||||
HCERTCHAINENGINE = HANDLE
|
||||
LPHANDLE = POINTER(HANDLE)
|
||||
ALPC_HANDLE = HANDLE
|
||||
PALPC_HANDLE = POINTER(ALPC_HANDLE)
|
||||
PHKEY = POINTER(HKEY)
|
||||
ACCESS_MASK = DWORD
|
||||
REGSAM = ACCESS_MASK
|
||||
PBOOLEAN = POINTER(BOOLEAN)
|
||||
SECURITY_CONTEXT_TRACKING_MODE = BOOLEAN
|
||||
HCRYPTPROV_OR_NCRYPT_KEY_HANDLE = PULONG
|
||||
HCRYPTPROV_LEGACY = PULONG
|
||||
HCRYPTKEY = PULONG
|
||||
HCRYPTPROV = PULONG
|
||||
@@ -234,230 +221,277 @@ ALG_ID = UINT
|
||||
DISPID = LONG
|
||||
MEMBERID = DISPID
|
||||
PSECURITY_DESCRIPTOR = PVOID
|
||||
LPPROC_THREAD_ATTRIBUTE_LIST = PVOID
|
||||
LPUNKNOWN = POINTER(PVOID)
|
||||
LPFILETIME = POINTER(FILETIME)
|
||||
LPPOINT = POINTER(POINT)
|
||||
LPRECT = POINTER(RECT)
|
||||
SPC_UUID = BYTE*16
|
||||
PIO_APC_ROUTINE = PVOID
|
||||
DEVICE_TYPE = DWORD
|
||||
PWINDBG_EXTENSION_APIS32 = PVOID
|
||||
PWINDBG_EXTENSION_APIS64 = PVOID
|
||||
PHANDLE = POINTER(HANDLE)
|
||||
HCATADMIN = HANDLE
|
||||
HCATINFO = HANDLE
|
||||
HCERTCHAINENGINE = HANDLE
|
||||
LPHANDLE = POINTER(HANDLE)
|
||||
ALPC_HANDLE = HANDLE
|
||||
PALPC_HANDLE = POINTER(ALPC_HANDLE)
|
||||
HCURSOR = HANDLE
|
||||
HBRUSH = HANDLE
|
||||
HCRYPTPROV_OR_NCRYPT_KEY_HANDLE = PULONG
|
||||
WNDPROC = PVOID
|
||||
LPPROC_THREAD_ATTRIBUTE_LIST = PVOID
|
||||
PPS_POST_PROCESS_INIT_ROUTINE = PVOID
|
||||
LPTHREAD_START_ROUTINE = PVOID
|
||||
WNDENUMPROC = PVOID
|
||||
PHANDLER_ROUTINE = PVOID
|
||||
FARPROC = PVOID
|
||||
PIO_APC_ROUTINE = PVOID
|
||||
PVECTORED_EXCEPTION_HANDLER = PVOID
|
||||
LPCONTEXT = PVOID
|
||||
HCERTSTORE = PVOID
|
||||
HCRYPTMSG = PVOID
|
||||
PALPC_PORT_ATTRIBUTES = PVOID
|
||||
PPORT_MESSAGE = PVOID
|
||||
FakeFileInformationZero = EnumValue("_FILE_INFORMATION_CLASS", "FakeFileInformationZero", 0x0)
|
||||
FileDirectoryInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileDirectoryInformation", 0x1)
|
||||
FileFullDirectoryInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileFullDirectoryInformation", 0x2)
|
||||
FileBothDirectoryInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileBothDirectoryInformation", 0x3)
|
||||
FileBasicInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileBasicInformation", 0x4)
|
||||
FileStandardInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileStandardInformation", 0x5)
|
||||
FileInternalInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileInternalInformation", 0x6)
|
||||
FileEaInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileEaInformation", 0x7)
|
||||
FileAccessInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileAccessInformation", 0x8)
|
||||
FileNameInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileNameInformation", 0x9)
|
||||
FileRenameInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileRenameInformation", 0xa)
|
||||
FileLinkInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileLinkInformation", 0xb)
|
||||
FileNamesInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileNamesInformation", 0xc)
|
||||
FileDispositionInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileDispositionInformation", 0xd)
|
||||
FilePositionInformation = EnumValue("_FILE_INFORMATION_CLASS", "FilePositionInformation", 0xe)
|
||||
FileFullEaInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileFullEaInformation", 0xf)
|
||||
FileModeInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileModeInformation", 0x10)
|
||||
FileAlignmentInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileAlignmentInformation", 0x11)
|
||||
FileAllInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileAllInformation", 0x12)
|
||||
FileAllocationInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileAllocationInformation", 0x13)
|
||||
FileEndOfFileInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileEndOfFileInformation", 0x14)
|
||||
FileAlternateNameInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileAlternateNameInformation", 0x15)
|
||||
FileStreamInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileStreamInformation", 0x16)
|
||||
FilePipeInformation = EnumValue("_FILE_INFORMATION_CLASS", "FilePipeInformation", 0x17)
|
||||
FilePipeLocalInformation = EnumValue("_FILE_INFORMATION_CLASS", "FilePipeLocalInformation", 0x18)
|
||||
FilePipeRemoteInformation = EnumValue("_FILE_INFORMATION_CLASS", "FilePipeRemoteInformation", 0x19)
|
||||
FileMailslotQueryInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileMailslotQueryInformation", 0x1a)
|
||||
FileMailslotSetInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileMailslotSetInformation", 0x1b)
|
||||
FileCompressionInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileCompressionInformation", 0x1c)
|
||||
FileObjectIdInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileObjectIdInformation", 0x1d)
|
||||
FileCompletionInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileCompletionInformation", 0x1e)
|
||||
FileMoveClusterInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileMoveClusterInformation", 0x1f)
|
||||
FileQuotaInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileQuotaInformation", 0x20)
|
||||
FileReparsePointInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileReparsePointInformation", 0x21)
|
||||
FileNetworkOpenInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileNetworkOpenInformation", 0x22)
|
||||
FileAttributeTagInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileAttributeTagInformation", 0x23)
|
||||
FileTrackingInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileTrackingInformation", 0x24)
|
||||
FileIdBothDirectoryInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileIdBothDirectoryInformation", 0x25)
|
||||
FileIdFullDirectoryInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileIdFullDirectoryInformation", 0x26)
|
||||
FileValidDataLengthInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileValidDataLengthInformation", 0x27)
|
||||
FileShortNameInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileShortNameInformation", 0x28)
|
||||
FileIoCompletionNotificationInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileIoCompletionNotificationInformation", 0x29)
|
||||
FileIoStatusBlockRangeInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileIoStatusBlockRangeInformation", 0x2a)
|
||||
FileIoPriorityHintInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileIoPriorityHintInformation", 0x2b)
|
||||
FileSfioReserveInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileSfioReserveInformation", 0x2c)
|
||||
FileSfioVolumeInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileSfioVolumeInformation", 0x2d)
|
||||
FileHardLinkInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileHardLinkInformation", 0x2e)
|
||||
FileProcessIdsUsingFileInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileProcessIdsUsingFileInformation", 0x2f)
|
||||
FileNormalizedNameInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileNormalizedNameInformation", 0x30)
|
||||
FileNetworkPhysicalNameInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileNetworkPhysicalNameInformation", 0x31)
|
||||
FileIdGlobalTxDirectoryInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileIdGlobalTxDirectoryInformation", 0x32)
|
||||
FileIsRemoteDeviceInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileIsRemoteDeviceInformation", 0x33)
|
||||
FileUnusedInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileUnusedInformation", 0x34)
|
||||
FileNumaNodeInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileNumaNodeInformation", 0x35)
|
||||
FileStandardLinkInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileStandardLinkInformation", 0x36)
|
||||
FileRemoteProtocolInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileRemoteProtocolInformation", 0x37)
|
||||
FileRenameInformationBypassAccessCheck = EnumValue("_FILE_INFORMATION_CLASS", "FileRenameInformationBypassAccessCheck", 0x38)
|
||||
FileLinkInformationBypassAccessCheck = EnumValue("_FILE_INFORMATION_CLASS", "FileLinkInformationBypassAccessCheck", 0x39)
|
||||
FileVolumeNameInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileVolumeNameInformation", 0x3a)
|
||||
FileIdInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileIdInformation", 0x3b)
|
||||
FileIdExtdDirectoryInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileIdExtdDirectoryInformation", 0x3c)
|
||||
FileReplaceCompletionInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileReplaceCompletionInformation", 0x3d)
|
||||
FileHardLinkFullIdInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileHardLinkFullIdInformation", 0x3e)
|
||||
FileIdExtdBothDirectoryInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileIdExtdBothDirectoryInformation", 0x3f)
|
||||
FileDispositionInformationEx = EnumValue("_FILE_INFORMATION_CLASS", "FileDispositionInformationEx", 0x40)
|
||||
FileRenameInformationEx = EnumValue("_FILE_INFORMATION_CLASS", "FileRenameInformationEx", 0x41)
|
||||
FileRenameInformationExBypassAccessCheck = EnumValue("_FILE_INFORMATION_CLASS", "FileRenameInformationExBypassAccessCheck", 0x42)
|
||||
FileMaximumInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileMaximumInformation", 0x43)
|
||||
class _FILE_INFORMATION_CLASS(EnumType):
|
||||
values = [FakeFileInformationZero, FileDirectoryInformation, FileFullDirectoryInformation, FileBothDirectoryInformation, FileBasicInformation, FileStandardInformation, FileInternalInformation, FileEaInformation, FileAccessInformation, FileNameInformation, FileRenameInformation, FileLinkInformation, FileNamesInformation, FileDispositionInformation, FilePositionInformation, FileFullEaInformation, FileModeInformation, FileAlignmentInformation, FileAllInformation, FileAllocationInformation, FileEndOfFileInformation, FileAlternateNameInformation, FileStreamInformation, FilePipeInformation, FilePipeLocalInformation, FilePipeRemoteInformation, FileMailslotQueryInformation, FileMailslotSetInformation, FileCompressionInformation, FileObjectIdInformation, FileCompletionInformation, FileMoveClusterInformation, FileQuotaInformation, FileReparsePointInformation, FileNetworkOpenInformation, FileAttributeTagInformation, FileTrackingInformation, FileIdBothDirectoryInformation, FileIdFullDirectoryInformation, FileValidDataLengthInformation, FileShortNameInformation, FileIoCompletionNotificationInformation, FileIoStatusBlockRangeInformation, FileIoPriorityHintInformation, FileSfioReserveInformation, FileSfioVolumeInformation, FileHardLinkInformation, FileProcessIdsUsingFileInformation, FileNormalizedNameInformation, FileNetworkPhysicalNameInformation, FileIdGlobalTxDirectoryInformation, FileIsRemoteDeviceInformation, FileUnusedInformation, FileNumaNodeInformation, FileStandardLinkInformation, FileRemoteProtocolInformation, FileRenameInformationBypassAccessCheck, FileLinkInformationBypassAccessCheck, FileVolumeNameInformation, FileIdInformation, FileIdExtdDirectoryInformation, FileReplaceCompletionInformation, FileHardLinkFullIdInformation, FileIdExtdBothDirectoryInformation, FileDispositionInformationEx, FileRenameInformationEx, FileRenameInformationExBypassAccessCheck, FileMaximumInformation]
|
||||
mapper = {x:x for x in values}
|
||||
FILE_INFORMATION_CLASS = _FILE_INFORMATION_CLASS
|
||||
PFILE_INFORMATION_CLASS = POINTER(_FILE_INFORMATION_CLASS)
|
||||
|
||||
|
||||
IoPriorityVeryLow = EnumValue("_IO_PRIORITY_HINT", "IoPriorityVeryLow", 0x0)
|
||||
IoPriorityLow = EnumValue("_IO_PRIORITY_HINT", "IoPriorityLow", 0x1)
|
||||
IoPriorityNormal = EnumValue("_IO_PRIORITY_HINT", "IoPriorityNormal", 0x2)
|
||||
IoPriorityHigh = EnumValue("_IO_PRIORITY_HINT", "IoPriorityHigh", 0x3)
|
||||
IoPriorityCritical = EnumValue("_IO_PRIORITY_HINT", "IoPriorityCritical", 0x4)
|
||||
MaxIoPriorityTypes = EnumValue("_IO_PRIORITY_HINT", "MaxIoPriorityTypes", 0x5)
|
||||
class _IO_PRIORITY_HINT(EnumType):
|
||||
values = [IoPriorityVeryLow, IoPriorityLow, IoPriorityNormal, IoPriorityHigh, IoPriorityCritical, MaxIoPriorityTypes]
|
||||
mapper = {x:x for x in values}
|
||||
IO_PRIORITY_HINT = _IO_PRIORITY_HINT
|
||||
|
||||
|
||||
class _FILE_INTERNAL_INFORMATION(Structure):
|
||||
class tagRGBTRIPLE(Structure):
|
||||
_fields_ = [
|
||||
("IndexNumber", LARGE_INTEGER),
|
||||
("rgbtBlue", BYTE),
|
||||
("rgbtGreen", BYTE),
|
||||
("rgbtRed", BYTE),
|
||||
]
|
||||
FILE_INTERNAL_INFORMATION = _FILE_INTERNAL_INFORMATION
|
||||
PFILE_INTERNAL_INFORMATION = POINTER(_FILE_INTERNAL_INFORMATION)
|
||||
NPRGBTRIPLE = POINTER(tagRGBTRIPLE)
|
||||
LPRGBTRIPLE = POINTER(tagRGBTRIPLE)
|
||||
RGBTRIPLE = tagRGBTRIPLE
|
||||
PRGBTRIPLE = POINTER(tagRGBTRIPLE)
|
||||
|
||||
class _FILE_ALIGNMENT_INFORMATION(Structure):
|
||||
class tagBITMAPFILEHEADER(Structure):
|
||||
_pack_ = 2
|
||||
_fields_ = [
|
||||
("AlignmentRequirement", ULONG),
|
||||
("bfType", WORD),
|
||||
("bfSize", DWORD),
|
||||
("bfReserved1", WORD),
|
||||
("bfReserved2", WORD),
|
||||
("bfOffBits", DWORD),
|
||||
]
|
||||
PFILE_ALIGNMENT_INFORMATION = POINTER(_FILE_ALIGNMENT_INFORMATION)
|
||||
FILE_ALIGNMENT_INFORMATION = _FILE_ALIGNMENT_INFORMATION
|
||||
BITMAPFILEHEADER = tagBITMAPFILEHEADER
|
||||
PBITMAPFILEHEADER = POINTER(tagBITMAPFILEHEADER)
|
||||
LPBITMAPFILEHEADER = POINTER(tagBITMAPFILEHEADER)
|
||||
|
||||
class _FILE_ATTRIBUTE_TAG_INFORMATION(Structure):
|
||||
class tagBITMAPCOREHEADER(Structure):
|
||||
_fields_ = [
|
||||
("FileAttributes", ULONG),
|
||||
("ReparseTag", ULONG),
|
||||
("bcSize", DWORD),
|
||||
("bcWidth", WORD),
|
||||
("bcHeight", WORD),
|
||||
("bcPlanes", WORD),
|
||||
("bcBitCount", WORD),
|
||||
]
|
||||
PFILE_ATTRIBUTE_TAG_INFORMATION = POINTER(_FILE_ATTRIBUTE_TAG_INFORMATION)
|
||||
FILE_ATTRIBUTE_TAG_INFORMATION = _FILE_ATTRIBUTE_TAG_INFORMATION
|
||||
LPBITMAPCOREHEADER = POINTER(tagBITMAPCOREHEADER)
|
||||
PBITMAPCOREHEADER = POINTER(tagBITMAPCOREHEADER)
|
||||
BITMAPCOREHEADER = tagBITMAPCOREHEADER
|
||||
|
||||
class _FILE_BASIC_INFORMATION(Structure):
|
||||
class tagBITMAP(Structure):
|
||||
_fields_ = [
|
||||
("CreationTime", LARGE_INTEGER),
|
||||
("LastAccessTime", LARGE_INTEGER),
|
||||
("LastWriteTime", LARGE_INTEGER),
|
||||
("ChangeTime", LARGE_INTEGER),
|
||||
("FileAttributes", ULONG),
|
||||
("bmType", LONG),
|
||||
("bmWidth", LONG),
|
||||
("bmHeight", LONG),
|
||||
("bmWidthBytes", LONG),
|
||||
("bmPlanes", WORD),
|
||||
("bmBitsPixel", WORD),
|
||||
("bmBits", LPVOID),
|
||||
]
|
||||
FILE_BASIC_INFORMATION = _FILE_BASIC_INFORMATION
|
||||
PFILE_BASIC_INFORMATION = POINTER(_FILE_BASIC_INFORMATION)
|
||||
NPBITMAP = POINTER(tagBITMAP)
|
||||
LPBITMAP = POINTER(tagBITMAP)
|
||||
PBITMAP = POINTER(tagBITMAP)
|
||||
BITMAP = tagBITMAP
|
||||
|
||||
class _FILE_EA_INFORMATION(Structure):
|
||||
class tagBITMAPINFOHEADER(Structure):
|
||||
_fields_ = [
|
||||
("EaSize", ULONG),
|
||||
("biSize", DWORD),
|
||||
("biWidth", LONG),
|
||||
("biHeight", LONG),
|
||||
("biPlanes", WORD),
|
||||
("biBitCount", WORD),
|
||||
("biCompression", DWORD),
|
||||
("biSizeImage", DWORD),
|
||||
("biXPelsPerMeter", LONG),
|
||||
("biYPelsPerMeter", LONG),
|
||||
("biClrUsed", DWORD),
|
||||
("biClrImportant", DWORD),
|
||||
]
|
||||
PFILE_EA_INFORMATION = POINTER(_FILE_EA_INFORMATION)
|
||||
FILE_EA_INFORMATION = _FILE_EA_INFORMATION
|
||||
BITMAPINFOHEADER = tagBITMAPINFOHEADER
|
||||
PBITMAPINFOHEADER = POINTER(tagBITMAPINFOHEADER)
|
||||
LPBITMAPINFOHEADER = POINTER(tagBITMAPINFOHEADER)
|
||||
|
||||
class _FILE_IO_PRIORITY_HINT_INFORMATION(Structure):
|
||||
class tagRGBQUAD(Structure):
|
||||
_fields_ = [
|
||||
("PriorityHint", IO_PRIORITY_HINT),
|
||||
("rgbBlue", BYTE),
|
||||
("rgbGreen", BYTE),
|
||||
("rgbRed", BYTE),
|
||||
("rgbReserved", BYTE),
|
||||
]
|
||||
PFILE_IO_PRIORITY_HINT_INFORMATION = POINTER(_FILE_IO_PRIORITY_HINT_INFORMATION)
|
||||
FILE_IO_PRIORITY_HINT_INFORMATION = _FILE_IO_PRIORITY_HINT_INFORMATION
|
||||
RGBQUAD = tagRGBQUAD
|
||||
|
||||
class _FILE_MODE_INFORMATION(Structure):
|
||||
class tagBITMAPINFO(Structure):
|
||||
_fields_ = [
|
||||
("Mode", ULONG),
|
||||
("bmiHeader", BITMAPINFOHEADER),
|
||||
("bmiColors", RGBQUAD * 1),
|
||||
]
|
||||
PFILE_MODE_INFORMATION = POINTER(_FILE_MODE_INFORMATION)
|
||||
FILE_MODE_INFORMATION = _FILE_MODE_INFORMATION
|
||||
LPBITMAPINFO = POINTER(tagBITMAPINFO)
|
||||
PBITMAPINFO = POINTER(tagBITMAPINFO)
|
||||
BITMAPINFO = tagBITMAPINFO
|
||||
|
||||
class _FILE_NAME_INFORMATION(Structure):
|
||||
class tagBITMAPCOREINFO(Structure):
|
||||
_fields_ = [
|
||||
("FileNameLength", ULONG),
|
||||
("FileName", WCHAR * 1),
|
||||
("bmciHeader", BITMAPCOREHEADER),
|
||||
("bmciColors", RGBTRIPLE * 1),
|
||||
]
|
||||
PFILE_NAME_INFORMATION = POINTER(_FILE_NAME_INFORMATION)
|
||||
FILE_NAME_INFORMATION = _FILE_NAME_INFORMATION
|
||||
LPBITMAPCOREINFO = POINTER(tagBITMAPCOREINFO)
|
||||
BITMAPCOREINFO = tagBITMAPCOREINFO
|
||||
PBITMAPCOREINFO = POINTER(tagBITMAPCOREINFO)
|
||||
|
||||
class _FILE_NETWORK_OPEN_INFORMATION(Structure):
|
||||
class tagWNDCLASSEXA(Structure):
|
||||
_fields_ = [
|
||||
("CreationTime", LARGE_INTEGER),
|
||||
("LastAccessTime", LARGE_INTEGER),
|
||||
("LastWriteTime", LARGE_INTEGER),
|
||||
("ChangeTime", LARGE_INTEGER),
|
||||
("AllocationSize", LARGE_INTEGER),
|
||||
("EndOfFile", LARGE_INTEGER),
|
||||
("FileAttributes", ULONG),
|
||||
("cbSize", UINT),
|
||||
("style", UINT),
|
||||
("lpfnWndProc", WNDPROC),
|
||||
("cbClsExtra", INT),
|
||||
("cbWndExtra", INT),
|
||||
("hInstance", HINSTANCE),
|
||||
("hIcon", HICON),
|
||||
("hCursor", HCURSOR),
|
||||
("hbrBackground", HBRUSH),
|
||||
("lpszMenuName", LPCSTR),
|
||||
("lpszClassName", LPCSTR),
|
||||
("hIconSm", HICON),
|
||||
]
|
||||
PFILE_NETWORK_OPEN_INFORMATION = POINTER(_FILE_NETWORK_OPEN_INFORMATION)
|
||||
FILE_NETWORK_OPEN_INFORMATION = _FILE_NETWORK_OPEN_INFORMATION
|
||||
PWNDCLASSEXA = POINTER(tagWNDCLASSEXA)
|
||||
LPWNDCLASSEXA = POINTER(tagWNDCLASSEXA)
|
||||
WNDCLASSEXA = tagWNDCLASSEXA
|
||||
|
||||
class _FILE_STANDARD_INFORMATION(Structure):
|
||||
class tagWNDCLASSEXW(Structure):
|
||||
_fields_ = [
|
||||
("AllocationSize", LARGE_INTEGER),
|
||||
("EndOfFile", LARGE_INTEGER),
|
||||
("NumberOfLinks", ULONG),
|
||||
("DeletePending", BOOLEAN),
|
||||
("Directory", BOOLEAN),
|
||||
("cbSize", UINT),
|
||||
("style", UINT),
|
||||
("lpfnWndProc", WNDPROC),
|
||||
("cbClsExtra", INT),
|
||||
("cbWndExtra", INT),
|
||||
("hInstance", HINSTANCE),
|
||||
("hIcon", HICON),
|
||||
("hCursor", HCURSOR),
|
||||
("hbrBackground", HBRUSH),
|
||||
("lpszMenuName", LPWSTR),
|
||||
("lpszClassName", LPWSTR),
|
||||
("hIconSm", HICON),
|
||||
]
|
||||
FILE_STANDARD_INFORMATION = _FILE_STANDARD_INFORMATION
|
||||
PFILE_STANDARD_INFORMATION = POINTER(_FILE_STANDARD_INFORMATION)
|
||||
WNDCLASSEXW = tagWNDCLASSEXW
|
||||
LPWNDCLASSEXW = POINTER(tagWNDCLASSEXW)
|
||||
PWNDCLASSEXW = POINTER(tagWNDCLASSEXW)
|
||||
|
||||
class _FILE_ACCESS_INFORMATION(Structure):
|
||||
class _EVENTLOGRECORD(Structure):
|
||||
_fields_ = [
|
||||
("AccessFlags", ACCESS_MASK),
|
||||
("Length", DWORD),
|
||||
("Reserved", DWORD),
|
||||
("RecordNumber", DWORD),
|
||||
("TimeGenerated", DWORD),
|
||||
("TimeWritten", DWORD),
|
||||
("EventID", DWORD),
|
||||
("EventType", WORD),
|
||||
("NumStrings", WORD),
|
||||
("EventCategory", WORD),
|
||||
("ReservedFlags", WORD),
|
||||
("ClosingRecordNumber", DWORD),
|
||||
("StringOffset", DWORD),
|
||||
("UserSidLength", DWORD),
|
||||
("UserSidOffset", DWORD),
|
||||
("DataLength", DWORD),
|
||||
("DataOffset", DWORD),
|
||||
]
|
||||
FILE_ACCESS_INFORMATION = _FILE_ACCESS_INFORMATION
|
||||
PFILE_ACCESS_INFORMATION = POINTER(_FILE_ACCESS_INFORMATION)
|
||||
PEVENTLOGRECORD = POINTER(_EVENTLOGRECORD)
|
||||
EVENTLOGRECORD = _EVENTLOGRECORD
|
||||
|
||||
class _FILE_POSITION_INFORMATION(Structure):
|
||||
class _EVENTLOG_FULL_INFORMATION(Structure):
|
||||
_fields_ = [
|
||||
("CurrentByteOffset", LARGE_INTEGER),
|
||||
("dwFull", DWORD),
|
||||
]
|
||||
PFILE_POSITION_INFORMATION = POINTER(_FILE_POSITION_INFORMATION)
|
||||
FILE_POSITION_INFORMATION = _FILE_POSITION_INFORMATION
|
||||
EVENTLOG_FULL_INFORMATION = _EVENTLOG_FULL_INFORMATION
|
||||
LPEVENTLOG_FULL_INFORMATION = POINTER(_EVENTLOG_FULL_INFORMATION)
|
||||
|
||||
class _FILE_IS_REMOTE_DEVICE_INFORMATION(Structure):
|
||||
class _GUID(Structure):
|
||||
_fields_ = [
|
||||
("IsRemote", BOOLEAN),
|
||||
("Data1", ULONG),
|
||||
("Data2", USHORT),
|
||||
("Data3", USHORT),
|
||||
("Data4", BYTE * 8),
|
||||
]
|
||||
FILE_IS_REMOTE_DEVICE_INFORMATION = _FILE_IS_REMOTE_DEVICE_INFORMATION
|
||||
PFILE_IS_REMOTE_DEVICE_INFORMATION = POINTER(_FILE_IS_REMOTE_DEVICE_INFORMATION)
|
||||
REFCLSID = POINTER(_GUID)
|
||||
REFGUID = POINTER(_GUID)
|
||||
LPGUID = POINTER(_GUID)
|
||||
IID = _GUID
|
||||
CLSID = _GUID
|
||||
GUID = _GUID
|
||||
REFIID = POINTER(_GUID)
|
||||
|
||||
class _FILE_ALL_INFORMATION(Structure):
|
||||
_fields_ = [
|
||||
("BasicInformation", FILE_BASIC_INFORMATION),
|
||||
("StandardInformation", FILE_STANDARD_INFORMATION),
|
||||
("InternalInformation", FILE_INTERNAL_INFORMATION),
|
||||
("EaInformation", FILE_EA_INFORMATION),
|
||||
("AccessInformation", FILE_ACCESS_INFORMATION),
|
||||
("PositionInformation", FILE_POSITION_INFORMATION),
|
||||
("ModeInformation", FILE_MODE_INFORMATION),
|
||||
("AlignmentInformation", FILE_ALIGNMENT_INFORMATION),
|
||||
("NameInformation", FILE_NAME_INFORMATION),
|
||||
]
|
||||
PFILE_ALL_INFORMATION = POINTER(_FILE_ALL_INFORMATION)
|
||||
FILE_ALL_INFORMATION = _FILE_ALL_INFORMATION
|
||||
INITIAL_GUID = _GUID
|
||||
class _GUID(INITIAL_GUID):
|
||||
def __init__(self, Data1=None, Data2=None, Data3=None, Data4=None, name=None, strid=None):
|
||||
data_tuple = (Data1, Data2, Data3, Data4)
|
||||
self.name = name
|
||||
self.strid = strid
|
||||
if all(data is None for data in data_tuple):
|
||||
return super(_GUID, self).__init__()
|
||||
if any(data is None for data in data_tuple):
|
||||
raise ValueError("All or none of (Data1, Data2, Data3, Data4) should be None")
|
||||
super(_GUID, self).__init__(Data1, Data2, Data3, Data4)
|
||||
|
||||
def __repr__(self):
|
||||
notpresent = object()
|
||||
# Handle IID created without '__init__' (like ctypes-ptr deref)
|
||||
if getattr(self, "strid", notpresent) is notpresent:
|
||||
self.strid = self.to_string()
|
||||
if self.strid is None:
|
||||
return super(_GUID, self).__repr__()
|
||||
|
||||
if getattr(self, "name", notpresent) is notpresent:
|
||||
self.name = None
|
||||
if self.name is None:
|
||||
return '<IID "{0}">'.format(self.strid.upper())
|
||||
return '<IID "{0}({1})">'.format(self.strid.upper(), self.name)
|
||||
|
||||
def to_string(self):
|
||||
data4_format = "{0:02X}{1:02X}-" + "".join("{{{i}:02X}}".format(i=i + 2) for i in range(6))
|
||||
data4_str = data4_format.format(*self.Data4)
|
||||
return "{0:08X}-{1:04X}-{2:04X}-".format(self.Data1, self.Data2, self.Data3) + data4_str
|
||||
|
||||
def update_strid(self):
|
||||
new_strid = self.to_string()
|
||||
self.strid = new_strid
|
||||
|
||||
@classmethod
|
||||
def from_string(cls, iid):
|
||||
part_iid = iid.split("-")
|
||||
datas = [int(x, 16) for x in part_iid[:3]]
|
||||
datas.append(int(part_iid[3][:2], 16))
|
||||
datas.append(int(part_iid[3][2:], 16))
|
||||
for i in range(6):
|
||||
datas.append(int(part_iid[4][i * 2:(i + 1) * 2], 16))
|
||||
return cls.from_raw(*datas, strid=iid)
|
||||
|
||||
@classmethod
|
||||
def from_raw(cls, Data1, Data2, Data3, Data41, Data42, Data43, Data44, Data45, Data46, Data47, Data48, **kwargs):
|
||||
return cls(Data1, Data2, Data3, (BYTE*8)(Data41, Data42, Data43, Data44, Data45, Data46, Data47, Data48), **kwargs)
|
||||
|
||||
def __eq__(self, other):
|
||||
if not isinstance(other, (_GUID, INITIAL_GUID)):
|
||||
return NotImplemented
|
||||
return (self.Data1, self.Data2, self.Data3, self.Data4[:]) == (other.Data1, other.Data2, other.Data3, other.Data4[:])
|
||||
|
||||
REFCLSID = POINTER(_GUID)
|
||||
REFGUID = POINTER(_GUID)
|
||||
LPGUID = POINTER(_GUID)
|
||||
IID = _GUID
|
||||
CLSID = _GUID
|
||||
GUID = _GUID
|
||||
REFIID = POINTER(_GUID)
|
||||
SystemBasicInformation = EnumValue("_SYSTEM_INFORMATION_CLASS", "SystemBasicInformation", 0x0)
|
||||
SystemProcessorInformation = EnumValue("_SYSTEM_INFORMATION_CLASS", "SystemProcessorInformation", 0x1)
|
||||
SystemPerformanceInformation = EnumValue("_SYSTEM_INFORMATION_CLASS", "SystemPerformanceInformation", 0x2)
|
||||
@@ -3048,80 +3082,6 @@ class _DEBUG_EXCEPTION_FILTER_PARAMETERS(Structure):
|
||||
PDEBUG_EXCEPTION_FILTER_PARAMETERS = POINTER(_DEBUG_EXCEPTION_FILTER_PARAMETERS)
|
||||
DEBUG_EXCEPTION_FILTER_PARAMETERS = _DEBUG_EXCEPTION_FILTER_PARAMETERS
|
||||
|
||||
class _GUID(Structure):
|
||||
_fields_ = [
|
||||
("Data1", ULONG),
|
||||
("Data2", USHORT),
|
||||
("Data3", USHORT),
|
||||
("Data4", BYTE * 8),
|
||||
]
|
||||
REFCLSID = POINTER(_GUID)
|
||||
REFGUID = POINTER(_GUID)
|
||||
LPGUID = POINTER(_GUID)
|
||||
IID = _GUID
|
||||
GUID = _GUID
|
||||
REFIID = POINTER(_GUID)
|
||||
|
||||
INITIAL_GUID = _GUID
|
||||
class _GUID(INITIAL_GUID):
|
||||
def __init__(self, Data1=None, Data2=None, Data3=None, Data4=None, name=None, strid=None):
|
||||
data_tuple = (Data1, Data2, Data3, Data4)
|
||||
self.name = name
|
||||
self.strid = strid
|
||||
if all(data is None for data in data_tuple):
|
||||
return super(_GUID, self).__init__()
|
||||
if any(data is None for data in data_tuple):
|
||||
raise ValueError("All or none of (Data1, Data2, Data3, Data4) should be None")
|
||||
super(_GUID, self).__init__(Data1, Data2, Data3, Data4)
|
||||
|
||||
def __repr__(self):
|
||||
notpresent = object()
|
||||
# Handle IID created without '__init__' (like ctypes-ptr deref)
|
||||
if getattr(self, "strid", notpresent) is notpresent:
|
||||
self.strid = self.to_string()
|
||||
if self.strid is None:
|
||||
return super(_GUID, self).__repr__()
|
||||
|
||||
if getattr(self, "name", notpresent) is notpresent:
|
||||
self.name = None
|
||||
if self.name is None:
|
||||
return '<IID "{0}">'.format(self.strid.upper())
|
||||
return '<IID "{0}({1})">'.format(self.strid.upper(), self.name)
|
||||
|
||||
def to_string(self):
|
||||
data4_format = "{0:02X}{1:02X}-" + "".join("{{{i}:02X}}".format(i=i + 2) for i in range(6))
|
||||
data4_str = data4_format.format(*self.Data4)
|
||||
return "{0:08X}-{1:04X}-{2:04X}-".format(self.Data1, self.Data2, self.Data3) + data4_str
|
||||
|
||||
def update_strid(self):
|
||||
new_strid = self.to_string()
|
||||
self.strid = new_strid
|
||||
|
||||
@classmethod
|
||||
def from_string(cls, iid):
|
||||
part_iid = iid.split("-")
|
||||
datas = [int(x, 16) for x in part_iid[:3]]
|
||||
datas.append(int(part_iid[3][:2], 16))
|
||||
datas.append(int(part_iid[3][2:], 16))
|
||||
for i in range(6):
|
||||
datas.append(int(part_iid[4][i * 2:(i + 1) * 2], 16))
|
||||
return cls.from_raw(*datas, strid=iid)
|
||||
|
||||
@classmethod
|
||||
def from_raw(cls, Data1, Data2, Data3, Data41, Data42, Data43, Data44, Data45, Data46, Data47, Data48, **kwargs):
|
||||
return cls(Data1, Data2, Data3, (BYTE*8)(Data41, Data42, Data43, Data44, Data45, Data46, Data47, Data48), **kwargs)
|
||||
|
||||
def __eq__(self, other):
|
||||
if not isinstance(other, (_GUID, INITIAL_GUID)):
|
||||
return NotImplemented
|
||||
return (self.Data1, self.Data2, self.Data3, self.Data4[:]) == (other.Data1, other.Data2, other.Data3, other.Data4[:])
|
||||
|
||||
REFCLSID = POINTER(_GUID)
|
||||
REFGUID = POINTER(_GUID)
|
||||
LPGUID = POINTER(_GUID)
|
||||
IID = _GUID
|
||||
GUID = _GUID
|
||||
REFIID = POINTER(_GUID)
|
||||
class _TMP_signscale(Structure):
|
||||
_fields_ = [
|
||||
("scale", BYTE),
|
||||
@@ -4615,102 +4575,6 @@ class _PROCESS_INSTRUMENTATION_CALLBACK_INFORMATION(Structure):
|
||||
PPROCESS_INSTRUMENTATION_CALLBACK_INFORMATION = POINTER(_PROCESS_INSTRUMENTATION_CALLBACK_INFORMATION)
|
||||
PROCESS_INSTRUMENTATION_CALLBACK_INFORMATION = _PROCESS_INSTRUMENTATION_CALLBACK_INFORMATION
|
||||
|
||||
class tagRGBTRIPLE(Structure):
|
||||
_fields_ = [
|
||||
("rgbtBlue", BYTE),
|
||||
("rgbtGreen", BYTE),
|
||||
("rgbtRed", BYTE),
|
||||
]
|
||||
NPRGBTRIPLE = POINTER(tagRGBTRIPLE)
|
||||
LPRGBTRIPLE = POINTER(tagRGBTRIPLE)
|
||||
RGBTRIPLE = tagRGBTRIPLE
|
||||
PRGBTRIPLE = POINTER(tagRGBTRIPLE)
|
||||
|
||||
class tagBITMAPFILEHEADER(Structure):
|
||||
_pack_ = 2
|
||||
_fields_ = [
|
||||
("bfType", WORD),
|
||||
("bfSize", DWORD),
|
||||
("bfReserved1", WORD),
|
||||
("bfReserved2", WORD),
|
||||
("bfOffBits", DWORD),
|
||||
]
|
||||
BITMAPFILEHEADER = tagBITMAPFILEHEADER
|
||||
PBITMAPFILEHEADER = POINTER(tagBITMAPFILEHEADER)
|
||||
LPBITMAPFILEHEADER = POINTER(tagBITMAPFILEHEADER)
|
||||
|
||||
class tagBITMAPCOREHEADER(Structure):
|
||||
_fields_ = [
|
||||
("bcSize", DWORD),
|
||||
("bcWidth", WORD),
|
||||
("bcHeight", WORD),
|
||||
("bcPlanes", WORD),
|
||||
("bcBitCount", WORD),
|
||||
]
|
||||
LPBITMAPCOREHEADER = POINTER(tagBITMAPCOREHEADER)
|
||||
PBITMAPCOREHEADER = POINTER(tagBITMAPCOREHEADER)
|
||||
BITMAPCOREHEADER = tagBITMAPCOREHEADER
|
||||
|
||||
class tagBITMAP(Structure):
|
||||
_fields_ = [
|
||||
("bmType", LONG),
|
||||
("bmWidth", LONG),
|
||||
("bmHeight", LONG),
|
||||
("bmWidthBytes", LONG),
|
||||
("bmPlanes", WORD),
|
||||
("bmBitsPixel", WORD),
|
||||
("bmBits", LPVOID),
|
||||
]
|
||||
NPBITMAP = POINTER(tagBITMAP)
|
||||
LPBITMAP = POINTER(tagBITMAP)
|
||||
PBITMAP = POINTER(tagBITMAP)
|
||||
BITMAP = tagBITMAP
|
||||
|
||||
class tagBITMAPINFOHEADER(Structure):
|
||||
_fields_ = [
|
||||
("biSize", DWORD),
|
||||
("biWidth", LONG),
|
||||
("biHeight", LONG),
|
||||
("biPlanes", WORD),
|
||||
("biBitCount", WORD),
|
||||
("biCompression", DWORD),
|
||||
("biSizeImage", DWORD),
|
||||
("biXPelsPerMeter", LONG),
|
||||
("biYPelsPerMeter", LONG),
|
||||
("biClrUsed", DWORD),
|
||||
("biClrImportant", DWORD),
|
||||
]
|
||||
BITMAPINFOHEADER = tagBITMAPINFOHEADER
|
||||
PBITMAPINFOHEADER = POINTER(tagBITMAPINFOHEADER)
|
||||
LPBITMAPINFOHEADER = POINTER(tagBITMAPINFOHEADER)
|
||||
|
||||
class tagRGBQUAD(Structure):
|
||||
_fields_ = [
|
||||
("rgbBlue", BYTE),
|
||||
("rgbGreen", BYTE),
|
||||
("rgbRed", BYTE),
|
||||
("rgbReserved", BYTE),
|
||||
]
|
||||
RGBQUAD = tagRGBQUAD
|
||||
|
||||
class tagBITMAPINFO(Structure):
|
||||
_fields_ = [
|
||||
("bmiHeader", BITMAPINFOHEADER),
|
||||
("bmiColors", RGBQUAD * 1),
|
||||
]
|
||||
LPBITMAPINFO = POINTER(tagBITMAPINFO)
|
||||
PBITMAPINFO = POINTER(tagBITMAPINFO)
|
||||
BITMAPINFO = tagBITMAPINFO
|
||||
|
||||
class tagBITMAPCOREINFO(Structure):
|
||||
_fields_ = [
|
||||
("bmciHeader", BITMAPCOREHEADER),
|
||||
("bmciColors", RGBTRIPLE * 1),
|
||||
]
|
||||
LPBITMAPCOREINFO = POINTER(tagBITMAPCOREINFO)
|
||||
BITMAPCOREINFO = tagBITMAPCOREINFO
|
||||
PBITMAPCOREINFO = POINTER(tagBITMAPCOREINFO)
|
||||
|
||||
AlpcBasicInformation = EnumValue("_ALPC_PORT_INFORMATION_CLASS", "AlpcBasicInformation", 0x0)
|
||||
AlpcPortInformation = EnumValue("_ALPC_PORT_INFORMATION_CLASS", "AlpcPortInformation", 0x1)
|
||||
AlpcAssociateCompletionPortInformation = EnumValue("_ALPC_PORT_INFORMATION_CLASS", "AlpcAssociateCompletionPortInformation", 0x2)
|
||||
@@ -5126,32 +4990,227 @@ class _BG_JOB_TIMES(Structure):
|
||||
]
|
||||
BG_JOB_TIMES = _BG_JOB_TIMES
|
||||
|
||||
class _EVENTLOGRECORD(Structure):
|
||||
_fields_ = [
|
||||
("Length", DWORD),
|
||||
("Reserved", DWORD),
|
||||
("RecordNumber", DWORD),
|
||||
("TimeGenerated", DWORD),
|
||||
("TimeWritten", DWORD),
|
||||
("EventID", DWORD),
|
||||
("EventType", WORD),
|
||||
("NumStrings", WORD),
|
||||
("EventCategory", WORD),
|
||||
("ReservedFlags", WORD),
|
||||
("ClosingRecordNumber", DWORD),
|
||||
("StringOffset", DWORD),
|
||||
("UserSidLength", DWORD),
|
||||
("UserSidOffset", DWORD),
|
||||
("DataLength", DWORD),
|
||||
("DataOffset", DWORD),
|
||||
]
|
||||
PEVENTLOGRECORD = POINTER(_EVENTLOGRECORD)
|
||||
EVENTLOGRECORD = _EVENTLOGRECORD
|
||||
FakeFileInformationZero = EnumValue("_FILE_INFORMATION_CLASS", "FakeFileInformationZero", 0x0)
|
||||
FileDirectoryInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileDirectoryInformation", 0x1)
|
||||
FileFullDirectoryInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileFullDirectoryInformation", 0x2)
|
||||
FileBothDirectoryInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileBothDirectoryInformation", 0x3)
|
||||
FileBasicInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileBasicInformation", 0x4)
|
||||
FileStandardInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileStandardInformation", 0x5)
|
||||
FileInternalInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileInternalInformation", 0x6)
|
||||
FileEaInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileEaInformation", 0x7)
|
||||
FileAccessInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileAccessInformation", 0x8)
|
||||
FileNameInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileNameInformation", 0x9)
|
||||
FileRenameInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileRenameInformation", 0xa)
|
||||
FileLinkInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileLinkInformation", 0xb)
|
||||
FileNamesInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileNamesInformation", 0xc)
|
||||
FileDispositionInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileDispositionInformation", 0xd)
|
||||
FilePositionInformation = EnumValue("_FILE_INFORMATION_CLASS", "FilePositionInformation", 0xe)
|
||||
FileFullEaInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileFullEaInformation", 0xf)
|
||||
FileModeInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileModeInformation", 0x10)
|
||||
FileAlignmentInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileAlignmentInformation", 0x11)
|
||||
FileAllInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileAllInformation", 0x12)
|
||||
FileAllocationInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileAllocationInformation", 0x13)
|
||||
FileEndOfFileInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileEndOfFileInformation", 0x14)
|
||||
FileAlternateNameInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileAlternateNameInformation", 0x15)
|
||||
FileStreamInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileStreamInformation", 0x16)
|
||||
FilePipeInformation = EnumValue("_FILE_INFORMATION_CLASS", "FilePipeInformation", 0x17)
|
||||
FilePipeLocalInformation = EnumValue("_FILE_INFORMATION_CLASS", "FilePipeLocalInformation", 0x18)
|
||||
FilePipeRemoteInformation = EnumValue("_FILE_INFORMATION_CLASS", "FilePipeRemoteInformation", 0x19)
|
||||
FileMailslotQueryInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileMailslotQueryInformation", 0x1a)
|
||||
FileMailslotSetInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileMailslotSetInformation", 0x1b)
|
||||
FileCompressionInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileCompressionInformation", 0x1c)
|
||||
FileObjectIdInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileObjectIdInformation", 0x1d)
|
||||
FileCompletionInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileCompletionInformation", 0x1e)
|
||||
FileMoveClusterInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileMoveClusterInformation", 0x1f)
|
||||
FileQuotaInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileQuotaInformation", 0x20)
|
||||
FileReparsePointInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileReparsePointInformation", 0x21)
|
||||
FileNetworkOpenInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileNetworkOpenInformation", 0x22)
|
||||
FileAttributeTagInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileAttributeTagInformation", 0x23)
|
||||
FileTrackingInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileTrackingInformation", 0x24)
|
||||
FileIdBothDirectoryInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileIdBothDirectoryInformation", 0x25)
|
||||
FileIdFullDirectoryInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileIdFullDirectoryInformation", 0x26)
|
||||
FileValidDataLengthInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileValidDataLengthInformation", 0x27)
|
||||
FileShortNameInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileShortNameInformation", 0x28)
|
||||
FileIoCompletionNotificationInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileIoCompletionNotificationInformation", 0x29)
|
||||
FileIoStatusBlockRangeInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileIoStatusBlockRangeInformation", 0x2a)
|
||||
FileIoPriorityHintInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileIoPriorityHintInformation", 0x2b)
|
||||
FileSfioReserveInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileSfioReserveInformation", 0x2c)
|
||||
FileSfioVolumeInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileSfioVolumeInformation", 0x2d)
|
||||
FileHardLinkInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileHardLinkInformation", 0x2e)
|
||||
FileProcessIdsUsingFileInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileProcessIdsUsingFileInformation", 0x2f)
|
||||
FileNormalizedNameInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileNormalizedNameInformation", 0x30)
|
||||
FileNetworkPhysicalNameInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileNetworkPhysicalNameInformation", 0x31)
|
||||
FileIdGlobalTxDirectoryInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileIdGlobalTxDirectoryInformation", 0x32)
|
||||
FileIsRemoteDeviceInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileIsRemoteDeviceInformation", 0x33)
|
||||
FileUnusedInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileUnusedInformation", 0x34)
|
||||
FileNumaNodeInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileNumaNodeInformation", 0x35)
|
||||
FileStandardLinkInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileStandardLinkInformation", 0x36)
|
||||
FileRemoteProtocolInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileRemoteProtocolInformation", 0x37)
|
||||
FileRenameInformationBypassAccessCheck = EnumValue("_FILE_INFORMATION_CLASS", "FileRenameInformationBypassAccessCheck", 0x38)
|
||||
FileLinkInformationBypassAccessCheck = EnumValue("_FILE_INFORMATION_CLASS", "FileLinkInformationBypassAccessCheck", 0x39)
|
||||
FileVolumeNameInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileVolumeNameInformation", 0x3a)
|
||||
FileIdInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileIdInformation", 0x3b)
|
||||
FileIdExtdDirectoryInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileIdExtdDirectoryInformation", 0x3c)
|
||||
FileReplaceCompletionInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileReplaceCompletionInformation", 0x3d)
|
||||
FileHardLinkFullIdInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileHardLinkFullIdInformation", 0x3e)
|
||||
FileIdExtdBothDirectoryInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileIdExtdBothDirectoryInformation", 0x3f)
|
||||
FileDispositionInformationEx = EnumValue("_FILE_INFORMATION_CLASS", "FileDispositionInformationEx", 0x40)
|
||||
FileRenameInformationEx = EnumValue("_FILE_INFORMATION_CLASS", "FileRenameInformationEx", 0x41)
|
||||
FileRenameInformationExBypassAccessCheck = EnumValue("_FILE_INFORMATION_CLASS", "FileRenameInformationExBypassAccessCheck", 0x42)
|
||||
FileMaximumInformation = EnumValue("_FILE_INFORMATION_CLASS", "FileMaximumInformation", 0x43)
|
||||
class _FILE_INFORMATION_CLASS(EnumType):
|
||||
values = [FakeFileInformationZero, FileDirectoryInformation, FileFullDirectoryInformation, FileBothDirectoryInformation, FileBasicInformation, FileStandardInformation, FileInternalInformation, FileEaInformation, FileAccessInformation, FileNameInformation, FileRenameInformation, FileLinkInformation, FileNamesInformation, FileDispositionInformation, FilePositionInformation, FileFullEaInformation, FileModeInformation, FileAlignmentInformation, FileAllInformation, FileAllocationInformation, FileEndOfFileInformation, FileAlternateNameInformation, FileStreamInformation, FilePipeInformation, FilePipeLocalInformation, FilePipeRemoteInformation, FileMailslotQueryInformation, FileMailslotSetInformation, FileCompressionInformation, FileObjectIdInformation, FileCompletionInformation, FileMoveClusterInformation, FileQuotaInformation, FileReparsePointInformation, FileNetworkOpenInformation, FileAttributeTagInformation, FileTrackingInformation, FileIdBothDirectoryInformation, FileIdFullDirectoryInformation, FileValidDataLengthInformation, FileShortNameInformation, FileIoCompletionNotificationInformation, FileIoStatusBlockRangeInformation, FileIoPriorityHintInformation, FileSfioReserveInformation, FileSfioVolumeInformation, FileHardLinkInformation, FileProcessIdsUsingFileInformation, FileNormalizedNameInformation, FileNetworkPhysicalNameInformation, FileIdGlobalTxDirectoryInformation, FileIsRemoteDeviceInformation, FileUnusedInformation, FileNumaNodeInformation, FileStandardLinkInformation, FileRemoteProtocolInformation, FileRenameInformationBypassAccessCheck, FileLinkInformationBypassAccessCheck, FileVolumeNameInformation, FileIdInformation, FileIdExtdDirectoryInformation, FileReplaceCompletionInformation, FileHardLinkFullIdInformation, FileIdExtdBothDirectoryInformation, FileDispositionInformationEx, FileRenameInformationEx, FileRenameInformationExBypassAccessCheck, FileMaximumInformation]
|
||||
mapper = {x:x for x in values}
|
||||
FILE_INFORMATION_CLASS = _FILE_INFORMATION_CLASS
|
||||
PFILE_INFORMATION_CLASS = POINTER(_FILE_INFORMATION_CLASS)
|
||||
|
||||
class _EVENTLOG_FULL_INFORMATION(Structure):
|
||||
_fields_ = [
|
||||
("dwFull", DWORD),
|
||||
]
|
||||
EVENTLOG_FULL_INFORMATION = _EVENTLOG_FULL_INFORMATION
|
||||
LPEVENTLOG_FULL_INFORMATION = POINTER(_EVENTLOG_FULL_INFORMATION)
|
||||
|
||||
IoPriorityVeryLow = EnumValue("_IO_PRIORITY_HINT", "IoPriorityVeryLow", 0x0)
|
||||
IoPriorityLow = EnumValue("_IO_PRIORITY_HINT", "IoPriorityLow", 0x1)
|
||||
IoPriorityNormal = EnumValue("_IO_PRIORITY_HINT", "IoPriorityNormal", 0x2)
|
||||
IoPriorityHigh = EnumValue("_IO_PRIORITY_HINT", "IoPriorityHigh", 0x3)
|
||||
IoPriorityCritical = EnumValue("_IO_PRIORITY_HINT", "IoPriorityCritical", 0x4)
|
||||
MaxIoPriorityTypes = EnumValue("_IO_PRIORITY_HINT", "MaxIoPriorityTypes", 0x5)
|
||||
class _IO_PRIORITY_HINT(EnumType):
|
||||
values = [IoPriorityVeryLow, IoPriorityLow, IoPriorityNormal, IoPriorityHigh, IoPriorityCritical, MaxIoPriorityTypes]
|
||||
mapper = {x:x for x in values}
|
||||
IO_PRIORITY_HINT = _IO_PRIORITY_HINT
|
||||
|
||||
|
||||
class _FILE_INTERNAL_INFORMATION(Structure):
|
||||
_fields_ = [
|
||||
("IndexNumber", LARGE_INTEGER),
|
||||
]
|
||||
FILE_INTERNAL_INFORMATION = _FILE_INTERNAL_INFORMATION
|
||||
PFILE_INTERNAL_INFORMATION = POINTER(_FILE_INTERNAL_INFORMATION)
|
||||
|
||||
class _FILE_ALIGNMENT_INFORMATION(Structure):
|
||||
_fields_ = [
|
||||
("AlignmentRequirement", ULONG),
|
||||
]
|
||||
PFILE_ALIGNMENT_INFORMATION = POINTER(_FILE_ALIGNMENT_INFORMATION)
|
||||
FILE_ALIGNMENT_INFORMATION = _FILE_ALIGNMENT_INFORMATION
|
||||
|
||||
class _FILE_ATTRIBUTE_TAG_INFORMATION(Structure):
|
||||
_fields_ = [
|
||||
("FileAttributes", ULONG),
|
||||
("ReparseTag", ULONG),
|
||||
]
|
||||
PFILE_ATTRIBUTE_TAG_INFORMATION = POINTER(_FILE_ATTRIBUTE_TAG_INFORMATION)
|
||||
FILE_ATTRIBUTE_TAG_INFORMATION = _FILE_ATTRIBUTE_TAG_INFORMATION
|
||||
|
||||
class _FILE_BASIC_INFORMATION(Structure):
|
||||
_fields_ = [
|
||||
("CreationTime", LARGE_INTEGER),
|
||||
("LastAccessTime", LARGE_INTEGER),
|
||||
("LastWriteTime", LARGE_INTEGER),
|
||||
("ChangeTime", LARGE_INTEGER),
|
||||
("FileAttributes", ULONG),
|
||||
]
|
||||
FILE_BASIC_INFORMATION = _FILE_BASIC_INFORMATION
|
||||
PFILE_BASIC_INFORMATION = POINTER(_FILE_BASIC_INFORMATION)
|
||||
|
||||
class _FILE_EA_INFORMATION(Structure):
|
||||
_fields_ = [
|
||||
("EaSize", ULONG),
|
||||
]
|
||||
PFILE_EA_INFORMATION = POINTER(_FILE_EA_INFORMATION)
|
||||
FILE_EA_INFORMATION = _FILE_EA_INFORMATION
|
||||
|
||||
class _FILE_IO_PRIORITY_HINT_INFORMATION(Structure):
|
||||
_fields_ = [
|
||||
("PriorityHint", IO_PRIORITY_HINT),
|
||||
]
|
||||
PFILE_IO_PRIORITY_HINT_INFORMATION = POINTER(_FILE_IO_PRIORITY_HINT_INFORMATION)
|
||||
FILE_IO_PRIORITY_HINT_INFORMATION = _FILE_IO_PRIORITY_HINT_INFORMATION
|
||||
|
||||
class _FILE_MODE_INFORMATION(Structure):
|
||||
_fields_ = [
|
||||
("Mode", ULONG),
|
||||
]
|
||||
PFILE_MODE_INFORMATION = POINTER(_FILE_MODE_INFORMATION)
|
||||
FILE_MODE_INFORMATION = _FILE_MODE_INFORMATION
|
||||
|
||||
class _FILE_NAME_INFORMATION(Structure):
|
||||
_fields_ = [
|
||||
("FileNameLength", ULONG),
|
||||
("FileName", WCHAR * 1),
|
||||
]
|
||||
PFILE_NAME_INFORMATION = POINTER(_FILE_NAME_INFORMATION)
|
||||
FILE_NAME_INFORMATION = _FILE_NAME_INFORMATION
|
||||
|
||||
class _FILE_NETWORK_OPEN_INFORMATION(Structure):
|
||||
_fields_ = [
|
||||
("CreationTime", LARGE_INTEGER),
|
||||
("LastAccessTime", LARGE_INTEGER),
|
||||
("LastWriteTime", LARGE_INTEGER),
|
||||
("ChangeTime", LARGE_INTEGER),
|
||||
("AllocationSize", LARGE_INTEGER),
|
||||
("EndOfFile", LARGE_INTEGER),
|
||||
("FileAttributes", ULONG),
|
||||
]
|
||||
PFILE_NETWORK_OPEN_INFORMATION = POINTER(_FILE_NETWORK_OPEN_INFORMATION)
|
||||
FILE_NETWORK_OPEN_INFORMATION = _FILE_NETWORK_OPEN_INFORMATION
|
||||
|
||||
class _FILE_STANDARD_INFORMATION(Structure):
|
||||
_fields_ = [
|
||||
("AllocationSize", LARGE_INTEGER),
|
||||
("EndOfFile", LARGE_INTEGER),
|
||||
("NumberOfLinks", ULONG),
|
||||
("DeletePending", BOOLEAN),
|
||||
("Directory", BOOLEAN),
|
||||
]
|
||||
FILE_STANDARD_INFORMATION = _FILE_STANDARD_INFORMATION
|
||||
PFILE_STANDARD_INFORMATION = POINTER(_FILE_STANDARD_INFORMATION)
|
||||
|
||||
class _FILE_ACCESS_INFORMATION(Structure):
|
||||
_fields_ = [
|
||||
("AccessFlags", ACCESS_MASK),
|
||||
]
|
||||
FILE_ACCESS_INFORMATION = _FILE_ACCESS_INFORMATION
|
||||
PFILE_ACCESS_INFORMATION = POINTER(_FILE_ACCESS_INFORMATION)
|
||||
|
||||
class _FILE_POSITION_INFORMATION(Structure):
|
||||
_fields_ = [
|
||||
("CurrentByteOffset", LARGE_INTEGER),
|
||||
]
|
||||
PFILE_POSITION_INFORMATION = POINTER(_FILE_POSITION_INFORMATION)
|
||||
FILE_POSITION_INFORMATION = _FILE_POSITION_INFORMATION
|
||||
|
||||
class _FILE_IS_REMOTE_DEVICE_INFORMATION(Structure):
|
||||
_fields_ = [
|
||||
("IsRemote", BOOLEAN),
|
||||
]
|
||||
FILE_IS_REMOTE_DEVICE_INFORMATION = _FILE_IS_REMOTE_DEVICE_INFORMATION
|
||||
PFILE_IS_REMOTE_DEVICE_INFORMATION = POINTER(_FILE_IS_REMOTE_DEVICE_INFORMATION)
|
||||
|
||||
class _FILE_ALL_INFORMATION(Structure):
|
||||
_fields_ = [
|
||||
("BasicInformation", FILE_BASIC_INFORMATION),
|
||||
("StandardInformation", FILE_STANDARD_INFORMATION),
|
||||
("InternalInformation", FILE_INTERNAL_INFORMATION),
|
||||
("EaInformation", FILE_EA_INFORMATION),
|
||||
("AccessInformation", FILE_ACCESS_INFORMATION),
|
||||
("PositionInformation", FILE_POSITION_INFORMATION),
|
||||
("ModeInformation", FILE_MODE_INFORMATION),
|
||||
("AlignmentInformation", FILE_ALIGNMENT_INFORMATION),
|
||||
("NameInformation", FILE_NAME_INFORMATION),
|
||||
]
|
||||
PFILE_ALL_INFORMATION = POINTER(_FILE_ALL_INFORMATION)
|
||||
FILE_ALL_INFORMATION = _FILE_ALL_INFORMATION
|
||||
|
||||
class _SHITEMID(Structure):
|
||||
_fields_ = [
|
||||
("cb", USHORT),
|
||||
("abID", BYTE * 1),
|
||||
]
|
||||
SHITEMID = _SHITEMID
|
||||
|
||||
class _ITEMIDLIST(Structure):
|
||||
_fields_ = [
|
||||
("mkid", SHITEMID),
|
||||
]
|
||||
ITEMIDLIST = _ITEMIDLIST
|
||||
PCIDLIST_ABSOLUTE = POINTER(_ITEMIDLIST)
|
||||
PIDLIST_ABSOLUTE = POINTER(_ITEMIDLIST)
|
||||
|
||||
|
||||
@@ -1,9 +1,30 @@
|
||||
"""utils fonctions non windows-related"""
|
||||
import ctypes
|
||||
import _ctypes
|
||||
from windows.generated_def import Flag
|
||||
from windows.generated_def import Flag, LPCSTR, LPWSTR
|
||||
|
||||
|
||||
|
||||
|
||||
def buffer(size): # Test
|
||||
buf = ctypes.create_string_buffer(size)
|
||||
buf.size = size
|
||||
buf.address = ctypes.addressof(buf)
|
||||
|
||||
class ImprovedCtypesBufferImpl(ctypes.Array):
|
||||
_length_ = size
|
||||
_type_ = ctypes.c_char
|
||||
def lol(self):
|
||||
return "lol"
|
||||
|
||||
def as_string(self):
|
||||
return ctypes.cast(self, LPCSTR).value
|
||||
|
||||
def as_wstring(self):
|
||||
return ctypes.cast(self, LPWSTR).value
|
||||
|
||||
return ImprovedCtypesBufferImpl()
|
||||
|
||||
def fixedpropety(f):
|
||||
cache_name = "_" + f.__name__
|
||||
|
||||
@@ -16,12 +37,6 @@ def fixedpropety(f):
|
||||
return property(prop, doc=f.__doc__)
|
||||
|
||||
|
||||
def swallow_ctypes_copy(ctypes_object):
|
||||
new_copy = type(ctypes_object)()
|
||||
ctypes.memmove(ctypes.byref(new_copy), ctypes.byref(ctypes_object), ctypes.sizeof(new_copy))
|
||||
return new_copy
|
||||
|
||||
|
||||
# type replacement based on name
|
||||
def transform_ctypes_fields(struct, replacement):
|
||||
return [(name, replacement.get(name, type)) for name, type in struct._fields_]
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
import sys
|
||||
import ctypes
|
||||
import os
|
||||
import copy
|
||||
|
||||
Reference in New Issue
Block a user