Compare commits

...

89 Commits

Author SHA1 Message Date
hakril 3489a560fb Remove some pytest warning 2025-02-02 18:40:07 +01:00
hakril 6fd32762da Try improving CurrentProcessReadSyswow stability 2025-02-02 16:54:23 +01:00
hakril aab4fdc02d Try new handle method for CurrentProcessReadSyswow 2025-02-02 16:35:16 +01:00
hakril ff4161602c Small improvments 2025-02-02 16:29:05 +01:00
hakril 8932682ba2 Merge pull request #76 from hakril/teb_definition
TEB defintion and `Thread.teb` field
2025-02-02 07:15:21 -08:00
hakril b9d54b3212 Last fix of docstring escape + trying pytest.mark.xfail 2025-02-02 00:20:18 +01:00
hakril 60e3d4a2b2 Update .gitignore 2025-02-02 00:00:32 +01:00
hakril 88b93dd64e More CI tests for PR & double-trigger 2025-02-01 23:37:28 +01:00
hakril 8beb9fa092 Prevent double-trigger in CI 2025-02-01 23:20:42 +01:00
hakril f668288dfc Fix bad escape in some docstrings 2025-02-01 22:44:53 +01:00
hakril 43fd2b3ca4 Update timeout time in tests 2025-02-01 22:27:11 +01:00
hakril f89a24ae48 Add pytest-timeout in CI 2025-02-01 22:12:21 +01:00
hakril d7cf3e0f8b Fix CurrentThread.teb_base being a property and not a fixedproperty 2025-02-01 14:22:02 +01:00
hakril 54be297828 Trying to improve print output when stubborn call fails 2025-02-01 11:55:49 +01:00
hakril 5da27a78d2 Fix badcode in syswo64.py 2025-02-01 11:35:22 +01:00
hakril f7542e686c More teb64 fix 2025-02-01 11:34:09 +01:00
hakril 029f7cba35 More TEB syswow fix 2025-01-31 17:37:07 +01:00
hakril 36c1eb647f Fix WinThread.teb_syswow 2025-01-31 17:13:33 +01:00
hakril 4bbdb538de Add support for remote TEB + tests 2025-01-31 17:00:04 +01:00
hakril 6ccccf7e90 V1 of WinThread.teb 2025-01-31 13:46:11 +01:00
hakril d05801dd46 Regen generated_def 2025-01-31 13:46:11 +01:00
hakril e8930af3ad Restore PEB_LDR_DATA definition to precise one 2025-01-31 13:46:11 +01:00
hakril c6898a429c Add definition of TEB + tests on offset of generated ctypes 2025-01-31 13:46:11 +01:00
hakril 13c28422d4 process improv : bitness based on PVOID size + CurrentProcess.name based on GetProcessImageFileNameW + peb addr based on RtlGetCurrentPeb 2025-01-31 13:46:11 +01:00
hakril 3818bb2e3d Add V1 of ctypes_definition for TEB 2025-01-31 13:46:11 +01:00
hakril 2b64a6d316 Add definition for _TEB 2025-01-31 13:46:11 +01:00
hakril 5d7e074039 Merge pull request #73 from dariushoule/windows_store_interpreter_tweaks
Improved behavior when running under Microsoft Store python interpreters
2025-01-29 00:57:08 -08:00
hakril 929959d2ac Add pull_request as tests.yml CI trigger 2025-01-29 09:23:04 +01:00
hakril 92b3cfcb2b Adapt sample + docs for microsoft-store-python-injection 2025-01-28 19:45:36 +01:00
Darius Houle 082b13112d missed docstring* 2025-01-26 23:46:19 -07:00
Darius Houle 52859d19c4 feedback revisions 2025-01-26 23:38:50 -07:00
hakril 6d621e0716 Merge pull request #74 from hakril/improve_injection_exceptions
Improve injection error reporting
2025-01-26 10:15:46 -08:00
hakril f80c473de0 More sleep for more test stability ? 2025-01-24 10:46:13 +01:00
hakril 98abd731e4 Improve injection.perform_manual_getproc_loadlib_X with error reporting 2025-01-24 10:37:18 +01:00
hakril d0a5dc3c61 more testing 2025-01-24 10:37:18 +01:00
hakril 2644b53563 Adding error reporting for injection via k32 imports 2025-01-24 10:37:18 +01:00
hakril ba704d6525 Improve test on injection: test on suspended processes 2025-01-24 10:37:18 +01:00
hakril 42546483dd Add tests to reproduce setup/errors of #72 2025-01-24 10:37:18 +01:00
hakril 16242d3436 Merge pull request #75 from hakril/new_pebldrdata_def
Improve tests stability + new PEB_LDR_DATA definition
2025-01-24 01:36:02 -08:00
hakril f99dc61bb2 More tests fix stability 2025-01-24 09:47:50 +01:00
hakril ddc9f16e9c More tests fix 2025-01-24 09:30:23 +01:00
hakril ab4a4561a3 Trying to improve stability of test_standard_breakpoint_X_remove 2025-01-24 09:13:01 +01:00
hakril db8d782e3a Update _PEB_LDR_DATA definition with fields known since WinXP 2025-01-24 08:59:37 +01:00
Darius Houle 6715b08ed7 2 test robustness improvements, helpful message on interpreter sandbox error 2025-01-20 12:53:27 -07:00
hakril 217da0d6b1 Merge pull request #71 from hakril/more_ci_setup
Improve Test & CI
2025-01-15 14:50:59 -08:00
hakril 7c0c130eec reduce risk ok test_standard_breakpoint_remove deadlock 2025-01-15 23:36:52 +01:00
hakril 774c35d943 [CI] Trying to test on multiple windows target (2) 2025-01-15 22:59:30 +01:00
hakril b1c147dfaa [CI] Trying to test on multiple windows target 2025-01-15 22:56:42 +01:00
hakril d63731f2d3 Merge pull request #70 from hakril/more_stubborn_tests
More stubborn tests & Implem
2025-01-15 13:52:42 -08:00
hakril 99c28ac035 stubborn: add support for new PRIV_RESOLVER_INFO_17763 seen on 10.0.17763 2025-01-15 22:32:00 +01:00
hakril d6a6e6496a [CI] Test CI on windows 2019 2025-01-13 15:14:16 +01:00
hakril c66b20f0f3 Update readme links with now workflow name 2025-01-10 14:29:59 +01:00
hakril 947093cf5b Merge pull request #69 from hakril/improve_version_name
Improve `windows.system.version_name`
2025-01-10 04:37:05 -08:00
hakril 0c9c7d3f49 Improve system.versionstr + doc + reset CI to windows-latest 2025-01-10 11:41:40 +01:00
hakril 25534c87ca [fix] Trying github CI on server-2025 for test version 2025-01-10 11:26:19 +01:00
hakril 06a986b57e Trying github CI on server-2025 to test version_name 2025-01-10 11:18:21 +01:00
hakril 0a0b96a9ca Fix new version_name to unicode 2025-01-10 11:09:00 +01:00
hakril 766f1f5e0a Improving system.version_number for 10+ by taking build number into account 2025-01-10 11:01:05 +01:00
hakril 57bcbca837 Merge pull request #68 from hakril/small_improvements
Add some ctypes generation + Improve RPCClient error message & error code parsing
2025-01-08 11:21:17 -08:00
hakril 68ea3c3a02 Regenerate ctypes 2025-01-08 19:50:45 +01:00
hakril 9bd9ddbd7a Revert "[TEST] Breaking ctypes generation result for CI test purpose"
This reverts commit 1cb8ad02c9.
2025-01-08 19:40:23 +01:00
hakril d79f7c609a [CI] Fix CI 2025-01-08 19:39:12 +01:00
hakril 22672613a9 [CI] Test that ctypes_generation results can be executed 2025-01-08 19:38:23 +01:00
hakril 1cb8ad02c9 [TEST] Breaking ctypes generation result for CI test purpose 2025-01-08 19:35:25 +01:00
hakril 3428acc580 Add a test for gdef.HRESULT_FACILITY() 2025-01-08 19:33:56 +01:00
hakril ee37178bcf improve RpcClient error reporting in call() 2025-01-08 19:33:29 +01:00
hakril f2a287d818 Add some ctypes generation + HRESULT_FACILITY macro 2025-01-08 19:31:28 +01:00
hakril e69302449c Merge pull request #67 from hakril/ci_ctypes_generation
Add CI tests for ` ctypes_generation\generate.py`
2025-01-08 10:17:28 -08:00
hakril 1f86a8a1c5 Fix broken ctypes generation : duplicate define 2025-01-08 19:09:43 +01:00
hakril 2737a64fd7 Improve github actions 2025-01-08 19:07:26 +01:00
hakril 9163e981fc Add github CI to test .\ctypes_generation\generate.py 2025-01-08 18:57:21 +01:00
hakril 17d4644973 Merge pull request #66 from hakril/multiversion_localthis
Multiversion ORPC call in `RpcClient`
2025-01-08 06:51:37 -08:00
hakril 315ad8ed9e Small refactor in RPCCLient.call() 2025-01-07 19:14:33 +01:00
hakril da0f403507 Update documentation build 2025-01-07 18:29:36 +01:00
hakril 31f7d1c593 Add windows.system.display_version + update version number + doc 2025-01-07 18:23:32 +01:00
hakril 0e9edcf440 Improve AlpcClient/Server __del__ method 2025-01-07 18:23:01 +01:00
hakril 0b0b88a270 more ORPC test : windows iexplore this time 2025-01-07 18:23:01 +01:00
hakril a45ad2b48c Remove breakpoint in test_orpc_network_manager 2025-01-07 18:23:01 +01:00
hakril d535440a44 Add stubborn implementation + first orpc test based on that 2025-01-07 18:23:01 +01:00
hakril 4b034fc0fe Add RpcClient with DCOM capabilities handling multiple versions (localthis/localthat) 2025-01-07 18:23:01 +01:00
hakril c040ec368e Working on multi-version localthis handling 2025-01-07 18:23:01 +01:00
hakril 9a67dca363 Merge pull request #65 from hakril/service_handler
Service handler functions
2024-12-31 05:47:11 -08:00
hakril 9041326d82 Regen documentation 2024-12-31 11:25:05 +01:00
hakril ee2b0e11e5 update version number 2024-12-31 11:11:15 +01:00
hakril 4985f7bba5 update documentation for service 2024-12-31 11:04:10 +01:00
hakril 99d39604df Finishing samples/python_service.py 2024-12-31 10:23:08 +01:00
hakril 196d4dcac4 Add functions implemented by services in ctypes_generation 2024-12-20 09:08:01 +01:00
hakril 9c1c125931 Merge pull request #63 from hakril/fileinfo_ctypesgen
Add some func/struct associated with [Set/Get]FileInformationByHandle
2024-11-08 14:53:06 +01:00
hakril dce802e0f3 Add some func/struct associated with [GS]etFileInformationByHandle 2024-11-08 14:46:48 +01:00
165 changed files with 7248 additions and 2991 deletions
@@ -1,16 +1,32 @@
# V0.1
name: Pytest
on: [push, workflow_dispatch]
on:
push:
branches:
- 'master'
pull_request:
# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:
jobs:
build:
generate_ctypes:
runs-on: windows-latest
timeout-minutes: 15
timeout-minutes: 5
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: '3.11'
- run:
py .\ctypes_generation\generate.py
- name: Check generated code can execute
run: py -c "import windows.generated_def"
tests:
strategy:
fail-fast: false
matrix:
runs-on: [windows-2019, windows-latest]
python-version: [2.7, 3.6, 3.11]
python-architecture: [x86, x64]
include:
@@ -19,6 +35,10 @@ jobs:
python-architecture: x86
- python-bitness-to-test: 64
python-architecture: x64
# Not a real dependency : but starting tests when ctypes generation is broken is not useful
needs: generate_ctypes
timeout-minutes: 15
runs-on: ${{ matrix.runs-on }}
steps:
- uses: actions/checkout@v4
@@ -59,11 +79,11 @@ jobs:
py -${{ matrix.python-version}}-64 setup.py install
- name: Installing pytest & capstone-windows
run: py -${{ matrix.python-version}}-${{ matrix.python-bitness-to-test}} -m pip install pytest capstone-windows
run: py -${{ matrix.python-version}}-${{ matrix.python-bitness-to-test}} -m pip install pytest pytest-timeout capstone-windows
# Testing
- name: Testing
run: py -${{ matrix.python-version}}-${{ matrix.python-bitness-to-test}} -m pytest --junitxml=junit/test-results.xml -s -k "not known_to_fail" -v tests/
run: py -${{ matrix.python-version}}-${{ matrix.python-bitness-to-test}} -m pytest --junitxml=junit/test-results.xml -s -v tests/
- name: Publish PyTest Results
uses: EnricoMi/publish-unit-test-result-action/windows@v2
@@ -73,4 +93,4 @@ jobs:
check_name: PyTest Results for ${{ matrix.python-version}}-${{ matrix.python-bitness-to-test}}
secondary_rate_limit_wait_seconds: 90
seconds_between_github_writes: 10
seconds_between_github_reads: 1
seconds_between_github_reads: 1
+6 -1
View File
@@ -3,7 +3,12 @@ doctrees
*.inv
*.pickle
*.ignore
*.code-workspace
.vscode/
.cache/
dist/
dist/
build/
docs/BuildDocEnv/
playground/
*egg-info/
+2 -2
View File
@@ -1,6 +1,6 @@
# PythonForWindows
[![Pytest](https://github.com/hakril/PythonForWindows/actions/workflows/mypytest.yml/badge.svg?branch=master)](https://github.com/hakril/PythonForWindows/actions/workflows/mypytest.yml)
[![Pytest](https://github.com/hakril/PythonForWindows/actions/workflows/tests.yml/badge.svg?branch=master)](https://github.com/hakril/PythonForWindows/actions/workflows/tests.yml)
PythonForWindows (PFW) is a base of code aimed to make interaction with `Windows` (on X86/X64) easier (for both 32 and 64 bits Python).
Its goal is to offer abstractions around some of the OS features in a (I hope) pythonic way.
@@ -39,7 +39,7 @@ python setup.py install
## Encoding & unicode
PythonForWindows support `python2.7` & `python3` and is currently tested for `Python2.7`, `3.6` & `3.11` via [Github Workflow](https://github.com/hakril/PythonForWindows/actions/workflows/mypytest.yml)
PythonForWindows support `python2.7` & `python3` and is currently tested for `Python2.7`, `3.6` & `3.11` via [Github Workflow](https://github.com/hakril/PythonForWindows/actions/workflows/tests.yml)
Since 1.0.0, the code uses "wide APIs" whenever possible and accept/returns python3 `str` (py2.7 `unicode` type) almost everywhere. Any functions/APIs not accepting unicode string can be considered a bug if its not stated explicitly in the documentation.
@@ -26,4 +26,8 @@
#define SORF_OXRES7 ( 0x400 )
#define SORF_OXRES8 ( 0x800 )
#define SORF_NULL ( 0 )
#define SORF_NOPING ( 0x1000 )
#define SORF_NOPING ( 0x1000 )
#define UNIQUE_FLAG_PADDING 2
#define MAINHDRSIG 0x414E554B
#define ENTRYHDRSIG 0x494E414E
@@ -2,4 +2,22 @@
#define ERROR_SEVERITY_SUCCESS 0x00000000
#define ERROR_SEVERITY_INFORMATIONAL 0x40000000
#define ERROR_SEVERITY_WARNING 0x80000000
#define ERROR_SEVERITY_ERROR 0xC0000000
#define ERROR_SEVERITY_ERROR 0xC0000000
// https://learn.microsoft.com/en-us/windows/win32/com/structure-of-com-error-codes
// Define the facility codes
//
#define FACILITY_WINDOWS 0x8
#define FACILITY_WIN32 0x7
#define FACILITY_STORAGE 0x3
#define FACILITY_RPC 0x1
#define FACILITY_NULL 0x0
#define FACILITY_ITF 0x4
#define FACILITY_DISPATCH 0x2
//
// Define the severity codes
//
#define STATUS_SEVERITY_SUCCESS 0x0
#define STATUS_SEVERITY_COERROR 0x2
@@ -1,3 +1,5 @@
/* Specific Access Rights are in <specific_access_right.txt> */
//
// Service trigger types
//
@@ -19,8 +21,6 @@
#define SERVICE_TRIGGER_DATA_TYPE_KEYWORD_ANY 4
#define SERVICE_TRIGGER_DATA_TYPE_KEYWORD_ALL 5
// Specific Access Rights are in <specific_access_right.txt>
#define SERVICE_RUNS_IN_SYSTEM_PROCESS 0x00000001
@@ -61,9 +61,6 @@ SERVICE_WIN32_OWN_PROCESS)
/* Make a value for the new SERVICE_TYPE_ALL ? */
#define SERVICE_BOOT_START 0x00000000
#define SERVICE_SYSTEM_START 0x00000001
#define SERVICE_AUTO_START 0x00000002
@@ -17,3 +17,10 @@ NATIVE_WORD_MAX_VALUE = 0xffffffff if bitness == 32 else 0xffffffffffffffff
def CTL_CODE(DeviceType, Function, Method, Access):
return (((DeviceType) << 16) | ((Access) << 14) | ((Function) << 2) | (Method))
# https://learn.microsoft.com/en-us/windows/win32/api/winerror/nf-winerror-hresult_facility
# Original MACRO:
# #define HRESULT_FACILITY(hr) (((hr) >> 16) & 0x1fff)
def HRESULT_FACILITY(hr):
return (((hr) >> 16) & 0x1fff)
@@ -85,3 +85,22 @@ BOOL LockFileEx(
[in] DWORD nNumberOfBytesToLockHigh,
[in, out] LPOVERLAPPED lpOverlapped
);
BOOL SetFileInformationByHandle(
[in] HANDLE hFile,
[in] FILE_INFO_BY_HANDLE_CLASS FileInformationClass,
[in] LPVOID lpFileInformation,
[in] DWORD dwBufferSize
);
BOOL GetFileInformationByHandle(
[in] HANDLE hFile,
[out] LPBY_HANDLE_FILE_INFORMATION lpFileInformation
);
BOOL GetFileInformationByHandleEx(
[in] HANDLE hFile,
[in] FILE_INFO_BY_HANDLE_CLASS FileInformationClass,
[out] LPVOID lpFileInformation,
[in] DWORD dwBufferSize
);
@@ -63,4 +63,10 @@ HMODULE LoadLibraryExW(
BOOL FreeLibrary(
HMODULE hLibModule
);
);
/* Not documented by seems present since dawn of time (WRK)
I Prefere PVOID as a return value to allow simple cast to PEB subclass in process.py*/
PVOID RtlGetCurrentPeb ();
@@ -267,4 +267,38 @@ BOOL StartServiceCtrlDispatcherA(
BOOL StartServiceCtrlDispatcherW(
SERVICE_TABLE_ENTRYW *lpServiceStartTable
);
SERVICE_STATUS_HANDLE RegisterServiceCtrlHandlerExA(
[in] LPCSTR lpServiceName,
[in] LPHANDLER_FUNCTION_EX lpHandlerProc,
[in, optional] LPVOID lpContext
);
SERVICE_STATUS_HANDLE RegisterServiceCtrlHandlerExW(
[in] LPCWSTR lpServiceName,
[in] LPHANDLER_FUNCTION_EX lpHandlerProc,
[in, optional] LPVOID lpContext
);
SERVICE_STATUS_HANDLE RegisterServiceCtrlHandlerA(
[in] LPCSTR lpServiceName,
[in] LPHANDLER_FUNCTION lpHandlerProc
);
SERVICE_STATUS_HANDLE RegisterServiceCtrlHandlerW(
[in] LPCWSTR lpServiceName,
[in] LPHANDLER_FUNCTION lpHandlerProc
);
BOOL SetServiceStatus(
[in] SERVICE_STATUS_HANDLE hServiceStatus,
[in] LPSERVICE_STATUS lpServiceStatus
);
BOOL SetServiceBits(
[in] SERVICE_STATUS_HANDLE hServiceStatus,
[in] DWORD dwServiceBits,
[in] BOOL bSetBitsOn,
[in] BOOL bUpdateImmediately
);
@@ -263,6 +263,8 @@ LPSERVICE_MAIN_FUNCTIONA = PVOID
LPSERVICE_MAIN_FUNCTIONW = PVOID
LPOVERLAPPED_COMPLETION_ROUTINE = PVOID
PDNS_QUERY_COMPLETION_ROUTINE = PVOID
LPHANDLER_FUNCTION = PVOID
LPHANDLER_FUNCTION_EX = PVOID
// Will be changed at import time
@@ -253,6 +253,7 @@ typedef struct _PRIV_RESOLVER_INFO_LEGACY
BOOL FoundInROT;
} PRIV_RESOLVER_INFO_LEGACY, *PPRIV_RESOLVER_INFO_LEGACY;
typedef struct _REMOTE_REPLY_SCM_INFO
{
OXID Oxid;
@@ -287,6 +288,31 @@ typedef struct CONTAINERVERSION {
CONTAINER_EXTENT_ARRAY *extensions;
};
typedef struct __MIDL_ILocalObjectExporter_0006 {
ULONG dwTid;
ULONG dwPid;
ULONG dwAuthnHint;
tagCOMVERSION version;
_GUID ipidRemUnknown;
ULONG dwFlags;
tagDUALSTRINGARRAY *psa;
_GUID guidProcessIdentifier;
UINT64 processHostId;
INT clientDependencyBehavior;
HSTRING__ *packageFullName;
HSTRING__ *userSid;
HSTRING__ *appcontainerSid;
} MIDL_ILocalObjectExporter_0006;
typedef struct _PRIV_RESOLVER_INFO_17763 {
UINT64 OxidServer;
tagDUALSTRINGARRAY *pServerORBindings;
MIDL_ILocalObjectExporter_0006 OxidInfo;
UINT64 LocalMidOfRemote;
ULONG DllServerModel;
WCHAR *pwszDllServer;
INT FoundInROT;
} PRIV_RESOLVER_INFO_17763, *PPRIV_RESOLVER_INFO_17763;
typedef struct _MIDL_ILocalObjectExporter_0007 {
ULONG dwTid;
@@ -334,16 +360,6 @@ typedef struct _LOCALTHIS {
PVOID pTouchedAstaArray; // Ptr32 __MIDL_XmitDefs_0002
} LOCALTHIS;
typedef struct _LOCALTHIS32 {
DWORD dwFlags;
DWORD dwClientThread;
GUID passthroughTraceActivity;
GUID callTraceActivity;
MIDL_XmitDefs_0001 asyncRequestBlock;
DWORD reserved;
PVOID32 pTouchedAstaArray; // Ptr32 __MIDL_XmitDefs_0002
} LOCALTHIS32;
/* LOCALTHAT & sub structures */
typedef struct _MIDL_XmitDefs_0007 {
@@ -406,15 +422,6 @@ typedef struct _LOCALTHAT {
} LOCALTHAT;
typedef struct _LOCALTHAT32 {
UINT64 marshalingSetId;
ULONG reserved;
PVOID32 pAsyncResponseBlock;
PVOID32 containerErrorInformation;
PVOID32 containerPassthroughData;
} LOCALTHAT32;
typedef struct tagORPCTHAT {
ULONG flags;
tagORPC_EXTENT_ARRAY *extensions;
@@ -424,4 +431,35 @@ typedef struct tagORPCTHAT {
typedef struct ORPCTHAT32 {
ULONG flags;
PVOID32 extensions; // tagORPC_EXTENT_ARRAY tagORPC_EXTENT_ARRAY
} ORPCTHAT32;
} ORPCTHAT32;
// From: com\ole32\com\dcomrem\chock.hxx
typedef struct
{
ULONG size; // Number of extents.
ULONG reserved; // Must be zero.
ULONG unique; // Flag to indicate presence of unique_flag array.
ULONG rounded_size; // Actual number of extents.
ULONG unique_flag[UNIQUE_FLAG_PADDING]; // Flags to indicate presense of ORPC_EXTENTs
} WireExtentArray;
typedef struct
{
ULONG rounded_size; // Actual number of extents.
GUID id; // Extension identifier.
ULONG size; // Extension size.
// byte data[]; // Extension data.
} WireExtent;
typedef struct tagMainHeader
{
ULONG Signature;
ULONG Version;
ULONG cPolicies;
ULONG cbBuffer;
ULONG cbSize;
LONG hr;
LONG hrServer;
LONG reserved;
} MainHeader;
@@ -0,0 +1,212 @@
/* Summary of seen version on combase symbols for LOCALTHIS:
Nb fields: 2
6.1.7601.17514 -> 6.2.9200.22376
* 6.1.7601.17514
* 6.1.7601.17514
* 6.2.9200.22376
Nb fields: 4
6.3.9600.17031 -> 6.3.9600.20772
* 6.3.9600.17031
* 6.3.9600.20772
Nb fields: 5
10.0.10240.16384 -> 10.0.15063.2679
* 10.0.10240.16384
* 10.0.10240.20747
* 10.0.10586.0
* 10.0.14393.576
* 10.0.14393.6451
* 10.0.14393.7426
* 10.0.15063.251
* 10.0.15063.1563
* 10.0.15063.2500
* 10.0.15063.2679
Nb fields: 7
10.0.16299.1 -> 10.0.26100.2454
* 10.0.16299.1
* 10.0.16299.15
* 10.0.17134.1
* 10.0.17134.48
* 10.0.17134.2145
* 10.0.17134.2145
* 10.0.17763.1
* 10.0.17763.2931
* 10.0.22621.2792
* 10.0.22621.3958
* 10.0.22621.4111
* 10.0.22621.4541
* 10.0.26100.2454
*/
/* Summary of seen version on combase symbols for LOCALTHAT:
Nb fields: 2
6.3.9600.17031 -> 6.3.9600.20772
* 6.3.9600.17031
* 6.3.9600.17031
* 6.3.9600.17031
* 6.3.9600.20772
Nb fields: 3
10.0.18362.900 -> 10.0.18362.1916
* 10.0.18362.900
* 10.0.18362.900
* 10.0.18362.1016
* 10.0.18362.1916
Nb fields: 4
10.0.10240.16384 -> 10.0.17763.6040
* 10.0.10240.16384
* 10.0.10240.16384
* 10.0.10240.20747
* 10.0.10586.0
* 10.0.14393.576
* 10.0.14393.6451
* 10.0.14393.7426
* 10.0.15063.251
* 10.0.15063.1563
* 10.0.15063.2500
* 10.0.15063.2679
* 10.0.16299.1
* 10.0.16299.15
* 10.0.17134.1
* 10.0.17134.48
* 10.0.17134.2145
* 10.0.17134.2145
* 10.0.17763.1
* 10.0.17763.2931
* 10.0.17763.6040
Nb fields: 5
10.0.19039.1 -> 10.0.26100.2454
* 10.0.19039.1
* 10.0.19041.84
* 10.0.19041.4894
* 10.0.22000.65
* 10.0.22621.2792
* 10.0.22621.3958
* 10.0.22621.4111
* 10.0.22621.4541
* 10.0.26100.2454
* 10.0.26100.2454
*/
/* Seen on 6.2.9200.22376 (win8_ldr_escrow.180222-0941) */
/* also seen on previous version : XP / Win7 / Server 2012 */
typedef struct LOCALTHIS32_NT_62 {
ULONG dwFlags;
ULONG dwClientThread;
};
// NO LOCALTHAT for these previous version as far as I now
/* Seen on 6.3.9600.17031 (winblue_gdr.140221-1952) */
typedef struct __MIDL_XmitDefs_0001_NT_63 {
ULONG size;
ULONG reserved;
UINT64 *pAstaOxids;
};
typedef struct LOCALTHIS32_NT_63 {
ULONG dwFlags;
ULONG dwClientThread;
ULONG reserved;
PVOID32 pTouchedAstaArray;
};
typedef struct LOCALTHAT32_NT_63 {
UINT64 marshalingSetAcknowledgmentOxid;
UINT64 marshalingSetId;
};
/* NT_1607 : combase 10.0.14393.576 from a WS2016 ISO*/
typedef struct __MIDL_XmitDefs_0002_NT_1607 {
ULONG size;
ULONG reserved;
PVOID32 pAstaOxids;
};
typedef struct __MIDL_XmitDefs_0001_NT_1607 {
_GUID asyncOperationId;
UINT64 oxidClientProcessNA;
_GUID originalClientLogicalThreadId;
UINT64 uClientCausalityTraceId;
} MIDL_XmitDefs_0001_NT_1607;
typedef struct _LOCALTHIS32_NT_1607 {
ULONG dwFlags;
ULONG dwClientThread;
MIDL_XmitDefs_0001_NT_1607 asyncRequestBlock;
ULONG reserved;
PVOID32 pTouchedAstaArray;
} LOCALTHIS32_NT_1607;
typedef struct __MIDL_XmitDefs_0007 {
INT pointOfFailure;
HRESULT hrFailure;
ULONG sizeOfMarshaledErrorInfo;
ULONG reserved;
BYTE *pMarshaledErrorInfo;
} MIDL_XmitDefs_0007;
typedef struct __MIDL_XmitDefs_0005 {
ULONG sizeOfMarshaledResults;
ULONG reserved;
BYTE *pMarshaledResults;
} MIDL_XmitDefs_0005;
typedef struct __MIDL_XmitDefs_0008 {
INT outcome;
MIDL_XmitDefs_0005 successDetails;
MIDL_XmitDefs_0007 failureDetails;
} MIDL_XmitDefs_0008;
typedef struct __MIDL_XmitDefs_0010 {
ULONG asyncStatus;
ULONG reserved1;
UINT64 uServerCausalityTraceId;
ULONG reserved2;
PVOID32 *pOutcomeDetails; //__MIDL_XmitDefs_0008
} MIDL_XmitDefs_0010;
typedef struct LOCALTHAT32_NT_1607 {
UINT64 marshalingSetAcknowledgmentOxid;
UINT64 marshalingSetId;
ULONG reserved;
PVOID32 pAsyncResponseBlock;
};
/* ! NT_1607: combase 10.0.14393.576 */
/* */
/* Seen only in 10.0.18362 versions of combase */
typedef struct _LOCALTHAT32_10_1903 {
UINT64 marshalingSetId;
PVOID32 pAsyncResponseBlock;
PVOID32 containerPassthroughData;
} LOCALTHAT32_10_1903;
/* NT 10.22 ? seen on 10.0.22621.1 */
typedef struct _LOCALTHIS32 {
DWORD dwFlags;
DWORD dwClientThread;
GUID passthroughTraceActivity;
GUID callTraceActivity;
MIDL_XmitDefs_0001 asyncRequestBlock;
DWORD reserved;
PVOID32 pTouchedAstaArray; // Ptr32 __MIDL_XmitDefs_0002
} LOCALTHIS32;
typedef struct _LOCALTHAT32 {
UINT64 marshalingSetId;
ULONG reserved;
PVOID32 pAsyncResponseBlock;
PVOID32 containerErrorInformation;
PVOID32 containerPassthroughData;
} LOCALTHAT32;
@@ -69,6 +69,35 @@ typedef enum _FILE_INFORMATION_CLASS {
FileMaximumInformation
} FILE_INFORMATION_CLASS, *PFILE_INFORMATION_CLASS;
typedef enum _FILE_INFO_BY_HANDLE_CLASS {
FileBasicInfo,
FileStandardInfo,
FileNameInfo,
FileRenameInfo,
FileDispositionInfo,
FileAllocationInfo,
FileEndOfFileInfo,
FileStreamInfo,
FileCompressionInfo,
FileAttributeTagInfo,
FileIdBothDirectoryInfo,
FileIdBothDirectoryRestartInfo,
FileIoPriorityHintInfo,
FileRemoteProtocolInfo,
FileFullDirectoryInfo,
FileFullDirectoryRestartInfo,
FileStorageInfo,
FileAlignmentInfo,
FileIdInfo,
FileIdExtdDirectoryInfo,
FileIdExtdDirectoryRestartInfo,
FileDispositionInfoEx,
FileRenameInfoEx,
FileCaseSensitiveInfo,
FileNormalizedNameInfo,
MaximumFileInfoByHandleClass
} FILE_INFO_BY_HANDLE_CLASS, *PFILE_INFO_BY_HANDLE_CLASS;
typedef enum _IO_PRIORITY_HINT {
IoPriorityVeryLow = 0,
IoPriorityLow = 1,
@@ -193,6 +222,18 @@ typedef struct _FILE_GET_EA_INFORMATION
CHAR EaName[1];
} FILE_GET_EA_INFORMATION, *PFILE_GET_EA_INFORMATION;
typedef struct _BY_HANDLE_FILE_INFORMATION {
DWORD dwFileAttributes;
FILETIME ftCreationTime;
FILETIME ftLastAccessTime;
FILETIME ftLastWriteTime;
DWORD dwVolumeSerialNumber;
DWORD nFileSizeHigh;
DWORD nFileSizeLow;
DWORD nNumberOfLinks;
DWORD nFileIndexHigh;
DWORD nFileIndexLow;
} BY_HANDLE_FILE_INFORMATION, *PBY_HANDLE_FILE_INFORMATION, *LPBY_HANDLE_FILE_INFORMATION;
typedef struct tagVS_FIXEDFILEINFO {
DWORD dwSignature;
@@ -0,0 +1,29 @@
/* Structures that do not depends on anything other that basic type
Simplify structure dependancy file graph
*/
typedef struct _LIST_ENTRY {
struct _LIST_ENTRY *Flink;
struct _LIST_ENTRY *Blink;
} LIST_ENTRY, *PLIST_ENTRY, *RESTRICTED_POINTER PRLIST_ENTRY;
typedef struct _LSA_UNICODE_STRING {
USHORT Length;
USHORT MaximumLength;
PVOID Buffer; // PVOID to prevent ctypes to automatically read the content of the buffer till a \0
} LSA_UNICODE_STRING, *PLSA_UNICODE_STRING, UNICODE_STRING, *PUNICODE_STRING;
typedef struct _CLIENT_ID{
HANDLE UniqueProcess;
HANDLE UniqueThread;
} CLIENT_ID, *PCLIENT_ID;
typedef struct _CLIENT_ID64{
ULONG64 UniqueProcess;
ULONG64 UniqueThread;
} CLIENT_ID64, *PCLIENT_ID64;
typedef struct _CLIENT_ID32{
ULONG UniqueProcess;
ULONG UniqueThread;
} CLIENT_ID32, *PCLIENT_ID32;
@@ -0,0 +1,237 @@
/* This is the part of RTL_USER_PROCESS_PARAMETERS that works from XP to Windows 10
http://terminus.rewolf.pl/terminus/structures/ntdll/_RTL_USER_PROCESS_PARAMETERS_x86.html
*/
typedef struct _CURDIR
{
UNICODE_STRING DosPath;
PVOID Handle;
} CURDIR, *PCURDIR;
typedef struct _RTL_DRIVE_LETTER_CURDIR
{
WORD Flags;
WORD Length;
ULONG TimeStamp;
UNICODE_STRING DosPath;
} RTL_DRIVE_LETTER_CURDIR, *PRTL_DRIVE_LETTER_CURDIR;
typedef struct _RTL_USER_PROCESS_PARAMETERS
{
ULONG MaximumLength;
ULONG Length;
ULONG Flags;
ULONG DebugFlags;
PVOID ConsoleHandle;
ULONG ConsoleFlags;
PVOID StandardInput;
PVOID StandardOutput;
PVOID StandardError;
CURDIR CurrentDirectory;
UNICODE_STRING DllPath;
UNICODE_STRING ImagePathName;
UNICODE_STRING CommandLine;
PVOID Environment;
ULONG StartingX;
ULONG StartingY;
ULONG CountX;
ULONG CountY;
ULONG CountCharsX;
ULONG CountCharsY;
ULONG FillAttribute;
ULONG WindowFlags;
ULONG ShowWindowFlags;
UNICODE_STRING WindowTitle;
UNICODE_STRING DesktopInfo;
UNICODE_STRING ShellInfo;
UNICODE_STRING RuntimeData;
RTL_DRIVE_LETTER_CURDIR CurrentDirectores[32];
} RTL_USER_PROCESS_PARAMETERS, *PRTL_USER_PROCESS_PARAMETERS;
// PEB: Thank to
// https://msdn.microsoft.com/en-us/library/windows/desktop/aa813706(v=vs.85).aspx
// http://blog.rewolf.pl/blog/?p=573
// http://terminus.rewolf.pl/terminus/structures/ntdll/_PEB_combined.html
typedef struct _LDR_DATA_TABLE_ENTRY {
PVOID Reserved1[2];
LIST_ENTRY InMemoryOrderLinks;
PVOID Reserved2[2];
PVOID DllBase;
PVOID EntryPoint;
PVOID SizeOfImage;
UNICODE_STRING FullDllName;
UNICODE_STRING BaseDllName;
PVOID Reserved5[3];
ULONG CheckSum;
ULONG TimeDateStamp;
} LDR_DATA_TABLE_ENTRY, *PLDR_DATA_TABLE_ENTRY;
/* Definition of WinXP : Still same base in win11 with some extra field */
typedef struct _PEB_LDR_DATA {
ULONG Length;
BYTE Initialized;
PVOID SsHandle;
_LIST_ENTRY InLoadOrderModuleList;
_LIST_ENTRY InMemoryOrderModuleList;
_LIST_ENTRY InInitializationOrderModuleList;
PVOID EntryInProgress;
// BYTE ShutdownInProgress; // New field
// PVOID ShutdownThreadId; // New field
}PEB_LDR_DATA, *PPEB_LDR_DATA;
typedef union _ANON_PEB_SYSTEM_DEPENDENT_02 {
PVOID FastPebLockRoutine;
PVOID SparePtr1;
PVOID AtlThunkSListPtr;
};
typedef union _ANON_PEB_SYSTEM_DEPENDENT_03 {
PVOID FastPebUnlockRoutine;
PVOID SparePtr2;
PVOID IFEOKey;
};
typedef union _ANON_PEB_SYSTEM_DEPENDENT_06 {
PVOID FreeList;
PVOID SparePebPtr0;
PVOID ApiSetMap;
};
typedef union _ANON_PEB_SYSTEM_DEPENDENT_07 {
PVOID ReadOnlySharedMemoryHeap;
PVOID HotpatchInformation;
PVOID SparePvoid0;
};
typedef union _ANON_PEB_UNION_1 {
PVOID KernelCallbackTable;
PVOID UserSharedInfoPtr;
};
typedef union _ANON_PEB_UNION_2 {
PVOID ImageProcessAffinityMask;
PVOID ActiveProcessAffinityMask;
};
typedef struct _PEB {
BYTE Reserved1[2];
BYTE BeingDebugged;
BYTE Reserved2[1];
PVOID Mutant;
PVOID ImageBaseAddress;
PPEB_LDR_DATA Ldr;
PRTL_USER_PROCESS_PARAMETERS ProcessParameters;
PVOID SubSystemData;
PVOID ProcessHeap;
PVOID FastPebLock;
_ANON_PEB_SYSTEM_DEPENDENT_02 _SYSTEM_DEPENDENT_02;
_ANON_PEB_SYSTEM_DEPENDENT_03 _SYSTEM_DEPENDENT_03;
PVOID _SYSTEM_DEPENDENT_04;
union {
PVOID KernelCallbackTable;
PVOID UserSharedInfoPtr;
};
DWORD SystemReserved;
DWORD _SYSTEM_DEPENDENT_05;
_ANON_PEB_SYSTEM_DEPENDENT_06 _SYSTEM_DEPENDENT_06;
PVOID TlsExpansionCounter;
PVOID TlsBitmap;
DWORD TlsBitmapBits[2];
PVOID ReadOnlySharedMemoryBase;
_ANON_PEB_SYSTEM_DEPENDENT_07 _SYSTEM_DEPENDENT_07;
PVOID ReadOnlyStaticServerData;
PVOID AnsiCodePageData;
PVOID OemCodePageData;
PVOID UnicodeCaseTableData;
DWORD NumberOfProcessors;
DWORD NtGlobalFlag;
LARGE_INTEGER CriticalSectionTimeout;
PVOID HeapSegmentReserve;
PVOID HeapSegmentCommit;
PVOID HeapDeCommitTotalFreeThreshold;
PVOID HeapDeCommitFreeBlockThreshold;
DWORD NumberOfHeaps;
DWORD MaximumNumberOfHeaps;
PVOID ProcessHeaps;
PVOID GdiSharedHandleTable;
PVOID ProcessStarterHelper;
PVOID GdiDCAttributeList;
PVOID LoaderLock;
DWORD OSMajorVersion;
DWORD OSMinorVersion;
WORD OSBuildNumber;
WORD OSCSDVersion;
DWORD OSPlatformId;
DWORD ImageSubsystem;
DWORD ImageSubsystemMajorVersion;
PVOID ImageSubsystemMinorVersion;
union {
PVOID ImageProcessAffinityMask;
PVOID ActiveProcessAffinityMask;
};
PVOID GdiHandleBuffer[26];
BYTE GdiHandleBuffer2[32];
PVOID PostProcessInitRoutine;
PVOID TlsExpansionBitmap;
DWORD TlsExpansionBitmapBits[32];
PVOID SessionId;
ULARGE_INTEGER AppCompatFlags;
ULARGE_INTEGER AppCompatFlagsUser;
PVOID pShimData;
PVOID AppCompatInfo;
UNICODE_STRING CSDVersion;
PVOID ActivationContextData;
PVOID ProcessAssemblyStorageMap;
PVOID SystemDefaultActivationContextData;
PVOID SystemAssemblyStorageMap;
PVOID MinimumStackCommit;
} PEB, *PPEB;
/* Partial TEB description
Based on:
- fields that did not move since XP
- https://learn.microsoft.com/en-us/windows/win32/api/winternl/ns-winternl-teb
*/
typedef struct _EXCEPTION_REGISTRATION_RECORD {
_EXCEPTION_REGISTRATION_RECORD *Next;
PVOID Handler;
};
typedef struct _NT_TIB {
struct _EXCEPTION_REGISTRATION_RECORD *ExceptionList;
PVOID StackBase;
PVOID StackLimit;
PVOID SubSystemTib;
union {
PVOID FiberData;
ULONG Version;
};
PVOID ArbitraryUserPointer;
struct _NT_TIB *Self;
} NT_TIB;
typedef struct _TEB {
_NT_TIB NtTib;
PVOID EnvironmentPointer;
_CLIENT_ID ClientId;
PVOID ActiveRpcHandle;
PVOID ThreadLocalStoragePointer;
_PEB *ProcessEnvironmentBlock;
ULONG LastErrorValue;
ULONG CountOfOwnedCriticalSections;
PVOID CsrClientThread;
PVOID Win32ThreadInfo;
ULONG User32Reserved[26];
ULONG UserReserved[5];
PVOID WOW32Reserved;
ULONG CurrentLocale;
ULONG FpSoftwareStatusRegister;
} TEB;
@@ -1,188 +1,3 @@
typedef struct _LIST_ENTRY {
struct _LIST_ENTRY *Flink;
struct _LIST_ENTRY *Blink;
} LIST_ENTRY, *PLIST_ENTRY, *RESTRICTED_POINTER PRLIST_ENTRY;
typedef struct _PEB_LDR_DATA {
BYTE Reserved1[8];
PVOID Reserved2[3];
LIST_ENTRY InMemoryOrderModuleList;
} PEB_LDR_DATA, *PPEB_LDR_DATA;
typedef struct _LSA_UNICODE_STRING {
USHORT Length;
USHORT MaximumLength;
PVOID Buffer; // PVOID to prevent ctypes to automatically read the content of the buffer till a \0
} LSA_UNICODE_STRING, *PLSA_UNICODE_STRING, UNICODE_STRING, *PUNICODE_STRING;
typedef struct _CURDIR
{
UNICODE_STRING DosPath;
PVOID Handle;
} CURDIR, *PCURDIR;
typedef struct _RTL_DRIVE_LETTER_CURDIR
{
WORD Flags;
WORD Length;
ULONG TimeStamp;
UNICODE_STRING DosPath;
} RTL_DRIVE_LETTER_CURDIR, *PRTL_DRIVE_LETTER_CURDIR;
/* This is the part of RTL_USER_PROCESS_PARAMETERS that works from XP to Windows 10
http://terminus.rewolf.pl/terminus/structures/ntdll/_RTL_USER_PROCESS_PARAMETERS_x86.html
*/
typedef struct _RTL_USER_PROCESS_PARAMETERS
{
ULONG MaximumLength;
ULONG Length;
ULONG Flags;
ULONG DebugFlags;
PVOID ConsoleHandle;
ULONG ConsoleFlags;
PVOID StandardInput;
PVOID StandardOutput;
PVOID StandardError;
CURDIR CurrentDirectory;
UNICODE_STRING DllPath;
UNICODE_STRING ImagePathName;
UNICODE_STRING CommandLine;
PVOID Environment;
ULONG StartingX;
ULONG StartingY;
ULONG CountX;
ULONG CountY;
ULONG CountCharsX;
ULONG CountCharsY;
ULONG FillAttribute;
ULONG WindowFlags;
ULONG ShowWindowFlags;
UNICODE_STRING WindowTitle;
UNICODE_STRING DesktopInfo;
UNICODE_STRING ShellInfo;
UNICODE_STRING RuntimeData;
RTL_DRIVE_LETTER_CURDIR CurrentDirectores[32];
} RTL_USER_PROCESS_PARAMETERS, *PRTL_USER_PROCESS_PARAMETERS;
// Thank to:
// https://msdn.microsoft.com/en-us/library/windows/desktop/aa813706(v=vs.85).aspx
// http://blog.rewolf.pl/blog/?p=573
// http://terminus.rewolf.pl/terminus/structures/ntdll/_PEB_combined.html
typedef union _ANON_PEB_SYSTEM_DEPENDENT_02 {
PVOID FastPebLockRoutine;
PVOID SparePtr1;
PVOID AtlThunkSListPtr;
};
typedef union _ANON_PEB_SYSTEM_DEPENDENT_03 {
PVOID FastPebUnlockRoutine;
PVOID SparePtr2;
PVOID IFEOKey;
};
typedef union _ANON_PEB_SYSTEM_DEPENDENT_06 {
PVOID FreeList;
PVOID SparePebPtr0;
PVOID ApiSetMap;
};
typedef union _ANON_PEB_SYSTEM_DEPENDENT_07 {
PVOID ReadOnlySharedMemoryHeap;
PVOID HotpatchInformation;
PVOID SparePvoid0;
};
typedef union _ANON_PEB_UNION_1 {
PVOID KernelCallbackTable;
PVOID UserSharedInfoPtr;
};
typedef union _ANON_PEB_UNION_2 {
PVOID ImageProcessAffinityMask;
PVOID ActiveProcessAffinityMask;
};
typedef struct _PEB {
BYTE Reserved1[2];
BYTE BeingDebugged;
BYTE Reserved2[1];
PVOID Mutant;
PVOID ImageBaseAddress;
PPEB_LDR_DATA Ldr;
PRTL_USER_PROCESS_PARAMETERS ProcessParameters;
PVOID SubSystemData;
PVOID ProcessHeap;
PVOID FastPebLock;
_ANON_PEB_SYSTEM_DEPENDENT_02 _SYSTEM_DEPENDENT_02;
_ANON_PEB_SYSTEM_DEPENDENT_03 _SYSTEM_DEPENDENT_03;
PVOID _SYSTEM_DEPENDENT_04;
union {
PVOID KernelCallbackTable;
PVOID UserSharedInfoPtr;
};
DWORD SystemReserved;
DWORD _SYSTEM_DEPENDENT_05;
_ANON_PEB_SYSTEM_DEPENDENT_06 _SYSTEM_DEPENDENT_06;
PVOID TlsExpansionCounter;
PVOID TlsBitmap;
DWORD TlsBitmapBits[2];
PVOID ReadOnlySharedMemoryBase;
_ANON_PEB_SYSTEM_DEPENDENT_07 _SYSTEM_DEPENDENT_07;
PVOID ReadOnlyStaticServerData;
PVOID AnsiCodePageData;
PVOID OemCodePageData;
PVOID UnicodeCaseTableData;
DWORD NumberOfProcessors;
DWORD NtGlobalFlag;
LARGE_INTEGER CriticalSectionTimeout;
PVOID HeapSegmentReserve;
PVOID HeapSegmentCommit;
PVOID HeapDeCommitTotalFreeThreshold;
PVOID HeapDeCommitFreeBlockThreshold;
DWORD NumberOfHeaps;
DWORD MaximumNumberOfHeaps;
PVOID ProcessHeaps;
PVOID GdiSharedHandleTable;
PVOID ProcessStarterHelper;
PVOID GdiDCAttributeList;
PVOID LoaderLock;
DWORD OSMajorVersion;
DWORD OSMinorVersion;
WORD OSBuildNumber;
WORD OSCSDVersion;
DWORD OSPlatformId;
DWORD ImageSubsystem;
DWORD ImageSubsystemMajorVersion;
PVOID ImageSubsystemMinorVersion;
union {
PVOID ImageProcessAffinityMask;
PVOID ActiveProcessAffinityMask;
};
PVOID GdiHandleBuffer[26];
BYTE GdiHandleBuffer2[32];
PVOID PostProcessInitRoutine;
PVOID TlsExpansionBitmap;
DWORD TlsExpansionBitmapBits[32];
PVOID SessionId;
ULARGE_INTEGER AppCompatFlags;
ULARGE_INTEGER AppCompatFlagsUser;
PVOID pShimData;
PVOID AppCompatInfo;
UNICODE_STRING CSDVersion;
PVOID ActivationContextData;
PVOID ProcessAssemblyStorageMap;
PVOID SystemDefaultActivationContextData;
PVOID SystemAssemblyStorageMap;
PVOID MinimumStackCommit;
} PEB, *PPEB;
typedef struct _SECURITY_ATTRIBUTES {
DWORD nLength;
LPVOID lpSecurityDescriptor;
@@ -863,34 +678,7 @@ typedef enum _SE_OBJECT_TYPE {
} SE_OBJECT_TYPE;
typedef struct _CLIENT_ID{
HANDLE UniqueProcess;
HANDLE UniqueThread;
} CLIENT_ID, *PCLIENT_ID;
typedef struct _CLIENT_ID64{
ULONG64 UniqueProcess;
ULONG64 UniqueThread;
} CLIENT_ID64, *PCLIENT_ID64;
typedef struct _CLIENT_ID32{
ULONG UniqueProcess;
ULONG UniqueThread;
} CLIENT_ID32, *PCLIENT_ID32;
typedef struct _LDR_DATA_TABLE_ENTRY {
PVOID Reserved1[2];
LIST_ENTRY InMemoryOrderLinks;
PVOID Reserved2[2];
PVOID DllBase;
PVOID EntryPoint;
PVOID SizeOfImage;
UNICODE_STRING FullDllName;
UNICODE_STRING BaseDllName;
PVOID Reserved5[3];
ULONG CheckSum;
ULONG TimeDateStamp;
} LDR_DATA_TABLE_ENTRY, *PLDR_DATA_TABLE_ENTRY;
typedef struct _MEMORY_BASIC_INFORMATION {
@@ -0,0 +1,18 @@
# From: ctypes_generation\extended_structs\_LIST_ENTRY.py
# _LIST_ENTRY is a self referencing structure
# Currently ctypes generation does not support extending self referencing structures
# Ass the _fields_ assignement should happen after the extended structure definition
# So we just redefine fully _LIST_ENTRY without inheriting the real one
class _LIST_ENTRY(Structure):
def get_real_struct(self, targetcls, target_field):
# >>> gdef.LDR_DATA_TABLE_ENTRY.InMemoryOrderLinks
# <Field type=_LIST_ENTRY, ofs=16, size=16>
# This field object does not allow to retrieve the type..
# So we need to basse the target class AND the target field..
return targetcls.from_address(ctypes.addressof(self) - target_field.offset)
_LIST_ENTRY._fields_ = [
("Flink", POINTER(_LIST_ENTRY)),
("Blink", POINTER(_LIST_ENTRY)),
]
+3 -2
View File
@@ -123,8 +123,9 @@ class WinStruct(object):
def generate_selfref_ctypes_class(self):
res = ["# Self referencing struct tricks"]
res += ["""class {0}(Structure): pass""".format(self.name)]
# res += [self.generate_anonymous_union()]
res += ["""class {0}(Structure):""".format(self.name)]
# We need some code in the def of anon is empty -> insert path
res += [self.generate_anonymous_union() or " pass"]
res += [self.generate_typedef_ctypes()]
if self.pack:
+1 -1
View File
@@ -1,4 +1,4 @@
# Sphinx build info version 1
# This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done.
config: 01121266b90a8b5351869d0cc2981bae
config: 79eb4f6d749f8afd0854dfaf20582dd7
tags: 645f666f9bcd5a90fca523b33c5a78b7
+4 -4
View File
@@ -4,12 +4,12 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Overview: module code &#8212; PythonForWindows 1.0.1 documentation</title>
<title>Overview: module code &#8212; PythonForWindows 1.0.3 documentation</title>
<link rel="stylesheet" type="text/css" href="../_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="../_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="../_static/css/mbasic.css?v=957880af" />
<script src="../_static/documentation_options.js?v=292eb321"></script>
<script src="../_static/documentation_options.js?v=baaebd52"></script>
<script src="../_static/doctools.js?v=9a2dae69"></script>
<script src="../_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -25,7 +25,7 @@
<li class="right" >
<a href="../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../index.html">PythonForWindows 1.0.1 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../index.html">PythonForWindows 1.0.3 documentation</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">Overview: module code</a></li>
</ul>
</div>
@@ -115,7 +115,7 @@
<li class="right" >
<a href="../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../index.html">PythonForWindows 1.0.1 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../index.html">PythonForWindows 1.0.3 documentation</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">Overview: module code</a></li>
</ul>
</div>
+8 -4
View File
@@ -4,12 +4,12 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>windows.alpc &#8212; PythonForWindows 1.0.0 documentation</title>
<title>windows.alpc &#8212; PythonForWindows 1.0.3 documentation</title>
<link rel="stylesheet" type="text/css" href="../../_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="../../_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="../../_static/css/mbasic.css?v=957880af" />
<script src="../../_static/documentation_options.js?v=8d563738"></script>
<script src="../../_static/documentation_options.js?v=baaebd52"></script>
<script src="../../_static/doctools.js?v=9a2dae69"></script>
<script src="../../_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -25,7 +25,7 @@
<li class="right" >
<a href="../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../index.html">PythonForWindows 1.0.3 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../index.html" accesskey="U">Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.alpc</a></li>
</ul>
@@ -505,6 +505,8 @@
<span class="k">def</span> <span class="nf">disconnect</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
<span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">handle</span><span class="p">:</span>
<span class="bp">self</span><span class="o">.</span><span class="n">_close_port</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">handle</span><span class="p">)</span>
<span class="bp">self</span><span class="o">.</span><span class="n">handle</span> <span class="o">=</span> <span class="kc">None</span>
<span class="k">def</span> <span class="fm">__del__</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
<span class="k">if</span> <span class="n">sys</span><span class="o">.</span><span class="n">path</span> <span class="ow">is</span> <span class="ow">not</span> <span class="kc">None</span><span class="p">:</span>
@@ -608,8 +610,10 @@
<span class="k">def</span> <span class="nf">disconnect</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
<span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">handle</span><span class="p">:</span>
<span class="bp">self</span><span class="o">.</span><span class="n">_close_port</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">handle</span><span class="p">)</span>
<span class="bp">self</span><span class="o">.</span><span class="n">handle</span> <span class="o">=</span> <span class="kc">None</span>
<span class="k">for</span> <span class="n">com_port_handle</span> <span class="ow">in</span> <span class="bp">self</span><span class="o">.</span><span class="n">communication_port_list</span><span class="p">:</span>
<span class="bp">self</span><span class="o">.</span><span class="n">_close_port</span><span class="p">(</span><span class="n">com_port_handle</span><span class="p">)</span>
<span class="k">del</span> <span class="bp">self</span><span class="o">.</span><span class="n">communication_port_list</span><span class="p">[:]</span>
<span class="c1"># TODO: add an API to close a communication port ?</span>
@@ -648,7 +652,7 @@
<li class="right" >
<a href="../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../index.html">PythonForWindows 1.0.3 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../index.html" >Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.alpc</a></li>
</ul>
+4 -4
View File
@@ -4,12 +4,12 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>windows.com &#8212; PythonForWindows 1.0.0 documentation</title>
<title>windows.com &#8212; PythonForWindows 1.0.2 documentation</title>
<link rel="stylesheet" type="text/css" href="../../_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="../../_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="../../_static/css/mbasic.css?v=957880af" />
<script src="../../_static/documentation_options.js?v=8d563738"></script>
<script src="../../_static/documentation_options.js?v=1ed6394b"></script>
<script src="../../_static/doctools.js?v=9a2dae69"></script>
<script src="../../_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -25,7 +25,7 @@
<li class="right" >
<a href="../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../index.html" accesskey="U">Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.com</a></li>
</ul>
@@ -489,7 +489,7 @@
<li class="right" >
<a href="../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../index.html" >Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.com</a></li>
</ul>
+4 -4
View File
@@ -4,12 +4,12 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>windows.crypto.certificate &#8212; PythonForWindows 1.0.0 documentation</title>
<title>windows.crypto.certificate &#8212; PythonForWindows 1.0.2 documentation</title>
<link rel="stylesheet" type="text/css" href="../../../_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="../../../_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="../../../_static/css/mbasic.css?v=957880af" />
<script src="../../../_static/documentation_options.js?v=8d563738"></script>
<script src="../../../_static/documentation_options.js?v=1ed6394b"></script>
<script src="../../../_static/doctools.js?v=9a2dae69"></script>
<script src="../../../_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -25,7 +25,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" accesskey="U">Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.crypto.certificate</a></li>
</ul>
@@ -697,7 +697,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" >Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.crypto.certificate</a></li>
</ul>
+4 -4
View File
@@ -4,12 +4,12 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>windows.crypto.cryptmsg &#8212; PythonForWindows 1.0.0 documentation</title>
<title>windows.crypto.cryptmsg &#8212; PythonForWindows 1.0.2 documentation</title>
<link rel="stylesheet" type="text/css" href="../../../_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="../../../_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="../../../_static/css/mbasic.css?v=957880af" />
<script src="../../../_static/documentation_options.js?v=8d563738"></script>
<script src="../../../_static/documentation_options.js?v=1ed6394b"></script>
<script src="../../../_static/doctools.js?v=9a2dae69"></script>
<script src="../../../_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -25,7 +25,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" accesskey="U">Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.crypto.cryptmsg</a></li>
</ul>
@@ -216,7 +216,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" >Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.crypto.cryptmsg</a></li>
</ul>
@@ -4,12 +4,12 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>windows.crypto.encrypt_decrypt &#8212; PythonForWindows 1.0.0 documentation</title>
<title>windows.crypto.encrypt_decrypt &#8212; PythonForWindows 1.0.2 documentation</title>
<link rel="stylesheet" type="text/css" href="../../../_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="../../../_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="../../../_static/css/mbasic.css?v=957880af" />
<script src="../../../_static/documentation_options.js?v=8d563738"></script>
<script src="../../../_static/documentation_options.js?v=1ed6394b"></script>
<script src="../../../_static/doctools.js?v=9a2dae69"></script>
<script src="../../../_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -25,7 +25,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" accesskey="U">Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.crypto.encrypt_decrypt</a></li>
</ul>
@@ -193,7 +193,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" >Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.crypto.encrypt_decrypt</a></li>
</ul>
+4 -4
View File
@@ -4,12 +4,12 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>windows.crypto.generation &#8212; PythonForWindows 1.0.0 documentation</title>
<title>windows.crypto.generation &#8212; PythonForWindows 1.0.2 documentation</title>
<link rel="stylesheet" type="text/css" href="../../../_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="../../../_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="../../../_static/css/mbasic.css?v=957880af" />
<script src="../../../_static/documentation_options.js?v=8d563738"></script>
<script src="../../../_static/documentation_options.js?v=1ed6394b"></script>
<script src="../../../_static/doctools.js?v=9a2dae69"></script>
<script src="../../../_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -25,7 +25,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" accesskey="U">Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.crypto.generation</a></li>
</ul>
@@ -130,7 +130,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" >Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.crypto.generation</a></li>
</ul>
+4 -4
View File
@@ -4,12 +4,12 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>windows.debug.breakpoints &#8212; PythonForWindows 1.0.0 documentation</title>
<title>windows.debug.breakpoints &#8212; PythonForWindows 1.0.2 documentation</title>
<link rel="stylesheet" type="text/css" href="../../../_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="../../../_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="../../../_static/css/mbasic.css?v=957880af" />
<script src="../../../_static/documentation_options.js?v=8d563738"></script>
<script src="../../../_static/documentation_options.js?v=1ed6394b"></script>
<script src="../../../_static/doctools.js?v=9a2dae69"></script>
<script src="../../../_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -25,7 +25,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" accesskey="U">Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.debug.breakpoints</a></li>
</ul>
@@ -365,7 +365,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" >Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.debug.breakpoints</a></li>
</ul>
+4 -4
View File
@@ -4,12 +4,12 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>windows.debug.debugger &#8212; PythonForWindows 1.0.0 documentation</title>
<title>windows.debug.debugger &#8212; PythonForWindows 1.0.2 documentation</title>
<link rel="stylesheet" type="text/css" href="../../../_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="../../../_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="../../../_static/css/mbasic.css?v=957880af" />
<script src="../../../_static/documentation_options.js?v=8d563738"></script>
<script src="../../../_static/documentation_options.js?v=1ed6394b"></script>
<script src="../../../_static/doctools.js?v=9a2dae69"></script>
<script src="../../../_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -25,7 +25,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" accesskey="U">Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.debug.debugger</a></li>
</ul>
@@ -1300,7 +1300,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" >Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.debug.debugger</a></li>
</ul>
+4 -4
View File
@@ -4,12 +4,12 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>windows.debug.localdbg &#8212; PythonForWindows 1.0.0 documentation</title>
<title>windows.debug.localdbg &#8212; PythonForWindows 1.0.2 documentation</title>
<link rel="stylesheet" type="text/css" href="../../../_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="../../../_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="../../../_static/css/mbasic.css?v=957880af" />
<script src="../../../_static/documentation_options.js?v=8d563738"></script>
<script src="../../../_static/documentation_options.js?v=1ed6394b"></script>
<script src="../../../_static/doctools.js?v=9a2dae69"></script>
<script src="../../../_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -25,7 +25,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" accesskey="U">Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.debug.localdbg</a></li>
</ul>
@@ -394,7 +394,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" >Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.debug.localdbg</a></li>
</ul>
+4 -4
View File
@@ -4,12 +4,12 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>windows.debug.symboldbg &#8212; PythonForWindows 1.0.0 documentation</title>
<title>windows.debug.symboldbg &#8212; PythonForWindows 1.0.2 documentation</title>
<link rel="stylesheet" type="text/css" href="../../../_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="../../../_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="../../../_static/css/mbasic.css?v=957880af" />
<script src="../../../_static/documentation_options.js?v=8d563738"></script>
<script src="../../../_static/documentation_options.js?v=1ed6394b"></script>
<script src="../../../_static/doctools.js?v=9a2dae69"></script>
<script src="../../../_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -25,7 +25,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" accesskey="U">Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.debug.symboldbg</a></li>
</ul>
@@ -119,7 +119,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" >Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.debug.symboldbg</a></li>
</ul>
+10 -4
View File
@@ -4,12 +4,12 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>windows.debug.symbols &#8212; PythonForWindows 1.0.0 documentation</title>
<title>windows.debug.symbols &#8212; PythonForWindows 1.0.2 documentation</title>
<link rel="stylesheet" type="text/css" href="../../../_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="../../../_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="../../../_static/css/mbasic.css?v=957880af" />
<script src="../../../_static/documentation_options.js?v=8d563738"></script>
<script src="../../../_static/documentation_options.js?v=1ed6394b"></script>
<script src="../../../_static/doctools.js?v=9a2dae69"></script>
<script src="../../../_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -25,7 +25,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" accesskey="U">Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.debug.symbols</a></li>
</ul>
@@ -605,6 +605,12 @@
<span class="n">windows</span><span class="o">.</span><span class="n">winproxy</span><span class="o">.</span><span class="n">SymGetTypeFromNameW</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">handle</span><span class="p">,</span> <span class="n">mod</span><span class="p">,</span> <span class="n">name</span><span class="p">,</span> <span class="n">buff</span><span class="p">)</span>
<span class="k">return</span> <span class="n">SymbolType</span><span class="o">.</span><span class="n">from_symbol_info</span><span class="p">(</span><span class="n">buff</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span> <span class="n">resolver</span><span class="o">=</span><span class="bp">self</span><span class="p">)</span>
<span class="c1">#</span>
<span class="k">def</span> <span class="nf">types</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">mod</span><span class="o">=</span><span class="kc">None</span><span class="p">):</span>
<span class="n">typeslist</span> <span class="o">=</span> <span class="p">[]</span> <span class="c1"># Iter on types of all modules if None provided ?</span>
<span class="n">windows</span><span class="o">.</span><span class="n">winproxy</span><span class="o">.</span><span class="n">SymEnumTypes</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">handle</span><span class="p">,</span> <span class="n">mod</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">simple_aggregator</span><span class="p">,</span> <span class="n">typeslist</span><span class="p">)</span>
<span class="k">return</span> <span class="p">[</span><span class="n">SymbolType</span><span class="o">.</span><span class="n">from_symbol_info</span><span class="p">(</span><span class="n">t</span><span class="p">,</span> <span class="n">resolver</span><span class="o">=</span><span class="bp">self</span><span class="p">)</span> <span class="k">for</span> <span class="n">t</span> <span class="ow">in</span> <span class="n">typeslist</span><span class="p">]</span>
<span class="c1"># TODO: mets de l&#39;huile pour w4kfu</span>
<span class="k">class</span> <span class="nc">StackWalker</span><span class="p">(</span><span class="nb">object</span><span class="p">):</span>
@@ -863,7 +869,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" >Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.debug.symbols</a></li>
</ul>
+4 -4
View File
@@ -4,12 +4,12 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>windows.generated_def.flag &#8212; PythonForWindows 1.0.0 documentation</title>
<title>windows.generated_def.flag &#8212; PythonForWindows 1.0.2 documentation</title>
<link rel="stylesheet" type="text/css" href="../../../_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="../../../_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="../../../_static/css/mbasic.css?v=957880af" />
<script src="../../../_static/documentation_options.js?v=8d563738"></script>
<script src="../../../_static/documentation_options.js?v=1ed6394b"></script>
<script src="../../../_static/doctools.js?v=9a2dae69"></script>
<script src="../../../_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -25,7 +25,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" accesskey="U">Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.generated_def.flag</a></li>
</ul>
@@ -145,7 +145,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" >Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.generated_def.flag</a></li>
</ul>
@@ -4,12 +4,12 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>windows.generated_def.interfaces &#8212; PythonForWindows 1.0.0 documentation</title>
<title>windows.generated_def.interfaces &#8212; PythonForWindows 1.0.2 documentation</title>
<link rel="stylesheet" type="text/css" href="../../../_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="../../../_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="../../../_static/css/mbasic.css?v=957880af" />
<script src="../../../_static/documentation_options.js?v=8d563738"></script>
<script src="../../../_static/documentation_options.js?v=1ed6394b"></script>
<script src="../../../_static/doctools.js?v=9a2dae69"></script>
<script src="../../../_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -25,7 +25,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" accesskey="U">Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.generated_def.interfaces</a></li>
</ul>
@@ -117,12 +117,6 @@
<div class="viewcode-block" id="IActivationStageInfo">
<a class="viewcode-back" href="../../../interfaces_generated.html#windows.generated_def.interfaces.IActivationStageInfo">[docs]</a>
<span class="k">class</span> <span class="nc">IActivationStageInfo</span><span class="p">(</span><span class="n">COMInterface</span><span class="p">):</span>
<span class="n">IID</span> <span class="o">=</span> <span class="n">generate_IID</span><span class="p">(</span><span class="mh">0x000001A8</span><span class="p">,</span> <span class="mh">0x0000</span><span class="p">,</span> <span class="mh">0x0000</span><span class="p">,</span> <span class="mh">0xC0</span><span class="p">,</span> <span class="mh">0x00</span><span class="p">,</span> <span class="mh">0x00</span><span class="p">,</span> <span class="mh">0x00</span><span class="p">,</span> <span class="mh">0x00</span><span class="p">,</span> <span class="mh">0x00</span><span class="p">,</span> <span class="mh">0x00</span><span class="p">,</span> <span class="mh">0x46</span><span class="p">,</span> <span class="n">name</span><span class="o">=</span><span class="s2">&quot;IActivationStageInfo&quot;</span><span class="p">,</span> <span class="n">strid</span><span class="o">=</span><span class="s2">&quot;000001A8-0000-0000-C000-000000000046&quot;</span><span class="p">)</span></div>
<div class="viewcode-block" id="ICallFactory">
<a class="viewcode-back" href="../../../interfaces_generated.html#windows.generated_def.interfaces.ICallFactory">[docs]</a>
<span class="k">class</span> <span class="nc">ICallFactory</span><span class="p">(</span><span class="n">COMInterface</span><span class="p">):</span>
@@ -405,6 +399,12 @@
<span class="n">IID</span> <span class="o">=</span> <span class="n">generate_IID</span><span class="p">(</span><span class="mh">0x000001A2</span><span class="p">,</span> <span class="mh">0x0000</span><span class="p">,</span> <span class="mh">0x0000</span><span class="p">,</span> <span class="mh">0xC0</span><span class="p">,</span> <span class="mh">0x00</span><span class="p">,</span> <span class="mh">0x00</span><span class="p">,</span> <span class="mh">0x00</span><span class="p">,</span> <span class="mh">0x00</span><span class="p">,</span> <span class="mh">0x00</span><span class="p">,</span> <span class="mh">0x00</span><span class="p">,</span> <span class="mh">0x46</span><span class="p">,</span> <span class="n">name</span><span class="o">=</span><span class="s2">&quot;IActivationPropertiesIn&quot;</span><span class="p">,</span> <span class="n">strid</span><span class="o">=</span><span class="s2">&quot;000001A2-0000-0000-C000-000000000046&quot;</span><span class="p">)</span></div>
<div class="viewcode-block" id="IActivationStageInfo">
<a class="viewcode-back" href="../../../interfaces_generated.html#windows.generated_def.interfaces.IActivationStageInfo">[docs]</a>
<span class="k">class</span> <span class="nc">IActivationStageInfo</span><span class="p">(</span><span class="n">COMInterface</span><span class="p">):</span>
<span class="n">IID</span> <span class="o">=</span> <span class="n">generate_IID</span><span class="p">(</span><span class="mh">0x000001A8</span><span class="p">,</span> <span class="mh">0x0000</span><span class="p">,</span> <span class="mh">0x0000</span><span class="p">,</span> <span class="mh">0xC0</span><span class="p">,</span> <span class="mh">0x00</span><span class="p">,</span> <span class="mh">0x00</span><span class="p">,</span> <span class="mh">0x00</span><span class="p">,</span> <span class="mh">0x00</span><span class="p">,</span> <span class="mh">0x00</span><span class="p">,</span> <span class="mh">0x00</span><span class="p">,</span> <span class="mh">0x46</span><span class="p">,</span> <span class="n">name</span><span class="o">=</span><span class="s2">&quot;IActivationStageInfo&quot;</span><span class="p">,</span> <span class="n">strid</span><span class="o">=</span><span class="s2">&quot;000001A8-0000-0000-C000-000000000046&quot;</span><span class="p">)</span></div>
<div class="viewcode-block" id="IClassClassicInfo">
<a class="viewcode-back" href="../../../interfaces_generated.html#windows.generated_def.interfaces.IClassClassicInfo">[docs]</a>
<span class="k">class</span> <span class="nc">IClassClassicInfo</span><span class="p">(</span><span class="n">COMInterface</span><span class="p">):</span>
@@ -801,21 +801,6 @@
<span class="n">IID</span> <span class="o">=</span> <span class="n">generate_IID</span><span class="p">(</span><span class="mh">0x0EFA6E54</span><span class="p">,</span> <span class="mh">0xF313</span><span class="p">,</span> <span class="mh">0x405D</span><span class="p">,</span> <span class="mh">0xB5</span><span class="p">,</span> <span class="mh">0xD8</span><span class="p">,</span> <span class="mh">0x83</span><span class="p">,</span> <span class="mh">0x0A</span><span class="p">,</span> <span class="mh">0x91</span><span class="p">,</span> <span class="mh">0x4F</span><span class="p">,</span> <span class="mh">0x64</span><span class="p">,</span> <span class="mh">0x96</span><span class="p">,</span> <span class="n">name</span><span class="o">=</span><span class="s2">&quot;IWbemServices&quot;</span><span class="p">,</span> <span class="n">strid</span><span class="o">=</span><span class="s2">&quot;0EFA6E54-F313-405D-B5D8-830A914F6496&quot;</span><span class="p">)</span></div>
<span class="n">IActivationStageInfo</span><span class="o">.</span><span class="n">_functions_</span> <span class="o">=</span> <span class="p">{</span>
<span class="c1"># QueryInterface -&gt; riid:REFIID, ppvObject:**void</span>
<span class="s2">&quot;QueryInterface&quot;</span><span class="p">:</span> <span class="n">ctypes</span><span class="o">.</span><span class="n">WINFUNCTYPE</span><span class="p">(</span><span class="n">HRESULT</span><span class="p">,</span> <span class="n">REFIID</span><span class="p">,</span> <span class="n">POINTER</span><span class="p">(</span><span class="n">PVOID</span><span class="p">))(</span><span class="mi">0</span><span class="p">,</span> <span class="s2">&quot;QueryInterface&quot;</span><span class="p">),</span>
<span class="c1"># AddRef -&gt; </span>
<span class="s2">&quot;AddRef&quot;</span><span class="p">:</span> <span class="n">ctypes</span><span class="o">.</span><span class="n">WINFUNCTYPE</span><span class="p">(</span><span class="n">ULONG</span><span class="p">)(</span><span class="mi">1</span><span class="p">,</span> <span class="s2">&quot;AddRef&quot;</span><span class="p">),</span>
<span class="c1"># Release -&gt; </span>
<span class="s2">&quot;Release&quot;</span><span class="p">:</span> <span class="n">ctypes</span><span class="o">.</span><span class="n">WINFUNCTYPE</span><span class="p">(</span><span class="n">ULONG</span><span class="p">)(</span><span class="mi">2</span><span class="p">,</span> <span class="s2">&quot;Release&quot;</span><span class="p">),</span>
<span class="c1"># SetStageAndIndex -&gt; stage:ACTIVATION_STAGE, index:INT</span>
<span class="s2">&quot;SetStageAndIndex&quot;</span><span class="p">:</span> <span class="n">ctypes</span><span class="o">.</span><span class="n">WINFUNCTYPE</span><span class="p">(</span><span class="n">HRESULT</span><span class="p">,</span> <span class="n">ACTIVATION_STAGE</span><span class="p">,</span> <span class="n">INT</span><span class="p">)(</span><span class="mi">3</span><span class="p">,</span> <span class="s2">&quot;SetStageAndIndex&quot;</span><span class="p">),</span>
<span class="c1"># GetStage -&gt; pstage:*ACTIVATION_STAGE</span>
<span class="s2">&quot;GetStage&quot;</span><span class="p">:</span> <span class="n">ctypes</span><span class="o">.</span><span class="n">WINFUNCTYPE</span><span class="p">(</span><span class="n">HRESULT</span><span class="p">,</span> <span class="n">POINTER</span><span class="p">(</span><span class="n">ACTIVATION_STAGE</span><span class="p">))(</span><span class="mi">4</span><span class="p">,</span> <span class="s2">&quot;GetStage&quot;</span><span class="p">),</span>
<span class="c1"># GetIndex -&gt; pindex:*INT</span>
<span class="s2">&quot;GetIndex&quot;</span><span class="p">:</span> <span class="n">ctypes</span><span class="o">.</span><span class="n">WINFUNCTYPE</span><span class="p">(</span><span class="n">HRESULT</span><span class="p">,</span> <span class="n">POINTER</span><span class="p">(</span><span class="n">INT</span><span class="p">))(</span><span class="mi">5</span><span class="p">,</span> <span class="s2">&quot;GetIndex&quot;</span><span class="p">),</span>
<span class="p">}</span>
<span class="n">ICallFactory</span><span class="o">.</span><span class="n">_functions_</span> <span class="o">=</span> <span class="p">{</span>
<span class="c1"># QueryInterface -&gt; riid:REFIID, ppvObject:**void</span>
<span class="s2">&quot;QueryInterface&quot;</span><span class="p">:</span> <span class="n">ctypes</span><span class="o">.</span><span class="n">WINFUNCTYPE</span><span class="p">(</span><span class="n">HRESULT</span><span class="p">,</span> <span class="n">REFIID</span><span class="p">,</span> <span class="n">POINTER</span><span class="p">(</span><span class="n">PVOID</span><span class="p">))(</span><span class="mi">0</span><span class="p">,</span> <span class="s2">&quot;QueryInterface&quot;</span><span class="p">),</span>
@@ -2021,6 +2006,21 @@
<span class="s2">&quot;GetReturnActivationProperties&quot;</span><span class="p">:</span> <span class="n">ctypes</span><span class="o">.</span><span class="n">WINFUNCTYPE</span><span class="p">(</span><span class="n">HRESULT</span><span class="p">,</span> <span class="n">IUnknown</span><span class="p">,</span> <span class="n">POINTER</span><span class="p">(</span><span class="n">IActivationPropertiesOut</span><span class="p">))(</span><span class="mi">12</span><span class="p">,</span> <span class="s2">&quot;GetReturnActivationProperties&quot;</span><span class="p">),</span>
<span class="p">}</span>
<span class="n">IActivationStageInfo</span><span class="o">.</span><span class="n">_functions_</span> <span class="o">=</span> <span class="p">{</span>
<span class="c1"># QueryInterface -&gt; riid:REFIID, ppvObject:**void</span>
<span class="s2">&quot;QueryInterface&quot;</span><span class="p">:</span> <span class="n">ctypes</span><span class="o">.</span><span class="n">WINFUNCTYPE</span><span class="p">(</span><span class="n">HRESULT</span><span class="p">,</span> <span class="n">REFIID</span><span class="p">,</span> <span class="n">POINTER</span><span class="p">(</span><span class="n">PVOID</span><span class="p">))(</span><span class="mi">0</span><span class="p">,</span> <span class="s2">&quot;QueryInterface&quot;</span><span class="p">),</span>
<span class="c1"># AddRef -&gt; </span>
<span class="s2">&quot;AddRef&quot;</span><span class="p">:</span> <span class="n">ctypes</span><span class="o">.</span><span class="n">WINFUNCTYPE</span><span class="p">(</span><span class="n">ULONG</span><span class="p">)(</span><span class="mi">1</span><span class="p">,</span> <span class="s2">&quot;AddRef&quot;</span><span class="p">),</span>
<span class="c1"># Release -&gt; </span>
<span class="s2">&quot;Release&quot;</span><span class="p">:</span> <span class="n">ctypes</span><span class="o">.</span><span class="n">WINFUNCTYPE</span><span class="p">(</span><span class="n">ULONG</span><span class="p">)(</span><span class="mi">2</span><span class="p">,</span> <span class="s2">&quot;Release&quot;</span><span class="p">),</span>
<span class="c1"># SetStageAndIndex -&gt; stage:ACTIVATION_STAGE, index:INT</span>
<span class="s2">&quot;SetStageAndIndex&quot;</span><span class="p">:</span> <span class="n">ctypes</span><span class="o">.</span><span class="n">WINFUNCTYPE</span><span class="p">(</span><span class="n">HRESULT</span><span class="p">,</span> <span class="n">ACTIVATION_STAGE</span><span class="p">,</span> <span class="n">INT</span><span class="p">)(</span><span class="mi">3</span><span class="p">,</span> <span class="s2">&quot;SetStageAndIndex&quot;</span><span class="p">),</span>
<span class="c1"># GetStage -&gt; pstage:*ACTIVATION_STAGE</span>
<span class="s2">&quot;GetStage&quot;</span><span class="p">:</span> <span class="n">ctypes</span><span class="o">.</span><span class="n">WINFUNCTYPE</span><span class="p">(</span><span class="n">HRESULT</span><span class="p">,</span> <span class="n">POINTER</span><span class="p">(</span><span class="n">ACTIVATION_STAGE</span><span class="p">))(</span><span class="mi">4</span><span class="p">,</span> <span class="s2">&quot;GetStage&quot;</span><span class="p">),</span>
<span class="c1"># GetIndex -&gt; pindex:*INT</span>
<span class="s2">&quot;GetIndex&quot;</span><span class="p">:</span> <span class="n">ctypes</span><span class="o">.</span><span class="n">WINFUNCTYPE</span><span class="p">(</span><span class="n">HRESULT</span><span class="p">,</span> <span class="n">POINTER</span><span class="p">(</span><span class="n">INT</span><span class="p">))(</span><span class="mi">5</span><span class="p">,</span> <span class="s2">&quot;GetIndex&quot;</span><span class="p">),</span>
<span class="p">}</span>
<span class="n">IClassClassicInfo</span><span class="o">.</span><span class="n">_functions_</span> <span class="o">=</span> <span class="p">{</span>
<span class="c1"># QueryInterface -&gt; riid:REFIID, ppvObject:**void</span>
<span class="s2">&quot;QueryInterface&quot;</span><span class="p">:</span> <span class="n">ctypes</span><span class="o">.</span><span class="n">WINFUNCTYPE</span><span class="p">(</span><span class="n">HRESULT</span><span class="p">,</span> <span class="n">REFIID</span><span class="p">,</span> <span class="n">POINTER</span><span class="p">(</span><span class="n">PVOID</span><span class="p">))(</span><span class="mi">0</span><span class="p">,</span> <span class="s2">&quot;QueryInterface&quot;</span><span class="p">),</span>
@@ -3998,7 +3998,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" >Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.generated_def.interfaces</a></li>
</ul>
+232 -32
View File
@@ -4,12 +4,12 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>windows.generated_def.winstructs &#8212; PythonForWindows 1.0.0 documentation</title>
<title>windows.generated_def.winstructs &#8212; PythonForWindows 1.0.3 documentation</title>
<link rel="stylesheet" type="text/css" href="../../../_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="../../../_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="../../../_static/css/mbasic.css?v=957880af" />
<script src="../../../_static/documentation_options.js?v=8d563738"></script>
<script src="../../../_static/documentation_options.js?v=baaebd52"></script>
<script src="../../../_static/doctools.js?v=9a2dae69"></script>
<script src="../../../_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -25,7 +25,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.3 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" accesskey="U">Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.generated_def.winstructs</a></li>
</ul>
@@ -346,6 +346,8 @@
<span class="n">LPSERVICE_MAIN_FUNCTIONW</span> <span class="o">=</span> <span class="n">PVOID</span>
<span class="n">LPOVERLAPPED_COMPLETION_ROUTINE</span> <span class="o">=</span> <span class="n">PVOID</span>
<span class="n">PDNS_QUERY_COMPLETION_ROUTINE</span> <span class="o">=</span> <span class="n">PVOID</span>
<span class="n">LPHANDLER_FUNCTION</span> <span class="o">=</span> <span class="n">PVOID</span>
<span class="n">LPHANDLER_FUNCTION_EX</span> <span class="o">=</span> <span class="n">PVOID</span>
<span class="n">LPCONTEXT</span> <span class="o">=</span> <span class="n">PVOID</span>
<span class="n">HCERTSTORE</span> <span class="o">=</span> <span class="n">PVOID</span>
<span class="n">HCRYPTMSG</span> <span class="o">=</span> <span class="n">PVOID</span>
@@ -1779,21 +1781,6 @@
<span class="n">LOCALTHIS</span> <span class="o">=</span> <span class="n">_LOCALTHIS</span>
<div class="viewcode-block" id="_LOCALTHIS32">
<a class="viewcode-back" href="../../../winstructs_generated.html#windows.generated_def.winstructs._LOCALTHIS32">[docs]</a>
<span class="k">class</span> <span class="nc">_LOCALTHIS32</span><span class="p">(</span><span class="n">Structure</span><span class="p">):</span>
<span class="n">_fields_</span> <span class="o">=</span> <span class="p">[</span>
<span class="p">(</span><span class="s2">&quot;dwFlags&quot;</span><span class="p">,</span> <span class="n">DWORD</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;dwClientThread&quot;</span><span class="p">,</span> <span class="n">DWORD</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;passthroughTraceActivity&quot;</span><span class="p">,</span> <span class="n">GUID</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;callTraceActivity&quot;</span><span class="p">,</span> <span class="n">GUID</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;asyncRequestBlock&quot;</span><span class="p">,</span> <span class="n">MIDL_XmitDefs_0001</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;reserved&quot;</span><span class="p">,</span> <span class="n">DWORD</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;pTouchedAstaArray&quot;</span><span class="p">,</span> <span class="n">PVOID32</span><span class="p">),</span>
<span class="p">]</span></div>
<span class="n">LOCALTHIS32</span> <span class="o">=</span> <span class="n">_LOCALTHIS32</span>
<div class="viewcode-block" id="_MIDL_XmitDefs_0007">
<a class="viewcode-back" href="../../../winstructs_generated.html#windows.generated_def.winstructs._MIDL_XmitDefs_0007">[docs]</a>
<span class="k">class</span> <span class="nc">_MIDL_XmitDefs_0007</span><span class="p">(</span><span class="n">Structure</span><span class="p">):</span>
@@ -1883,19 +1870,6 @@
<span class="n">LOCALTHAT</span> <span class="o">=</span> <span class="n">_LOCALTHAT</span>
<div class="viewcode-block" id="_LOCALTHAT32">
<a class="viewcode-back" href="../../../winstructs_generated.html#windows.generated_def.winstructs._LOCALTHAT32">[docs]</a>
<span class="k">class</span> <span class="nc">_LOCALTHAT32</span><span class="p">(</span><span class="n">Structure</span><span class="p">):</span>
<span class="n">_fields_</span> <span class="o">=</span> <span class="p">[</span>
<span class="p">(</span><span class="s2">&quot;marshalingSetId&quot;</span><span class="p">,</span> <span class="n">UINT64</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;reserved&quot;</span><span class="p">,</span> <span class="n">ULONG</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;pAsyncResponseBlock&quot;</span><span class="p">,</span> <span class="n">PVOID32</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;containerErrorInformation&quot;</span><span class="p">,</span> <span class="n">PVOID32</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;containerPassthroughData&quot;</span><span class="p">,</span> <span class="n">PVOID32</span><span class="p">),</span>
<span class="p">]</span></div>
<span class="n">LOCALTHAT32</span> <span class="o">=</span> <span class="n">_LOCALTHAT32</span>
<div class="viewcode-block" id="tagORPCTHAT">
<a class="viewcode-back" href="../../../winstructs_generated.html#windows.generated_def.winstructs.tagORPCTHAT">[docs]</a>
<span class="k">class</span> <span class="nc">tagORPCTHAT</span><span class="p">(</span><span class="n">Structure</span><span class="p">):</span>
@@ -1916,6 +1890,176 @@
<span class="k">class</span> <span class="nc">WireExtentArray</span><span class="p">(</span><span class="n">Structure</span><span class="p">):</span>
<span class="n">_fields_</span> <span class="o">=</span> <span class="p">[</span>
<span class="p">(</span><span class="s2">&quot;size&quot;</span><span class="p">,</span> <span class="n">ULONG</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;reserved&quot;</span><span class="p">,</span> <span class="n">ULONG</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;unique&quot;</span><span class="p">,</span> <span class="n">ULONG</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;rounded_size&quot;</span><span class="p">,</span> <span class="n">ULONG</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;unique_flag&quot;</span><span class="p">,</span> <span class="n">ULONG</span> <span class="o">*</span> <span class="p">(</span><span class="n">UNIQUE_FLAG_PADDING</span><span class="p">)),</span>
<span class="p">]</span>
<span class="k">class</span> <span class="nc">WireExtent</span><span class="p">(</span><span class="n">Structure</span><span class="p">):</span>
<span class="n">_fields_</span> <span class="o">=</span> <span class="p">[</span>
<span class="p">(</span><span class="s2">&quot;rounded_size&quot;</span><span class="p">,</span> <span class="n">ULONG</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;id&quot;</span><span class="p">,</span> <span class="n">GUID</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;size&quot;</span><span class="p">,</span> <span class="n">ULONG</span><span class="p">),</span>
<span class="p">]</span>
<span class="k">class</span> <span class="nc">tagMainHeader</span><span class="p">(</span><span class="n">Structure</span><span class="p">):</span>
<span class="n">_fields_</span> <span class="o">=</span> <span class="p">[</span>
<span class="p">(</span><span class="s2">&quot;Signature&quot;</span><span class="p">,</span> <span class="n">ULONG</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;Version&quot;</span><span class="p">,</span> <span class="n">ULONG</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;cPolicies&quot;</span><span class="p">,</span> <span class="n">ULONG</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;cbBuffer&quot;</span><span class="p">,</span> <span class="n">ULONG</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;cbSize&quot;</span><span class="p">,</span> <span class="n">ULONG</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;hr&quot;</span><span class="p">,</span> <span class="n">LONG</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;hrServer&quot;</span><span class="p">,</span> <span class="n">LONG</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;reserved&quot;</span><span class="p">,</span> <span class="n">LONG</span><span class="p">),</span>
<span class="p">]</span>
<span class="n">MainHeader</span> <span class="o">=</span> <span class="n">tagMainHeader</span>
<span class="k">class</span> <span class="nc">LOCALTHIS32_NT_62</span><span class="p">(</span><span class="n">Structure</span><span class="p">):</span>
<span class="n">_fields_</span> <span class="o">=</span> <span class="p">[</span>
<span class="p">(</span><span class="s2">&quot;dwFlags&quot;</span><span class="p">,</span> <span class="n">ULONG</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;dwClientThread&quot;</span><span class="p">,</span> <span class="n">ULONG</span><span class="p">),</span>
<span class="p">]</span>
<span class="k">class</span> <span class="nc">__MIDL_XmitDefs_0001_NT_63</span><span class="p">(</span><span class="n">Structure</span><span class="p">):</span>
<span class="n">_fields_</span> <span class="o">=</span> <span class="p">[</span>
<span class="p">(</span><span class="s2">&quot;size&quot;</span><span class="p">,</span> <span class="n">ULONG</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;reserved&quot;</span><span class="p">,</span> <span class="n">ULONG</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;pAstaOxids&quot;</span><span class="p">,</span> <span class="n">POINTER</span><span class="p">(</span><span class="n">UINT64</span><span class="p">)),</span>
<span class="p">]</span>
<span class="k">class</span> <span class="nc">LOCALTHIS32_NT_63</span><span class="p">(</span><span class="n">Structure</span><span class="p">):</span>
<span class="n">_fields_</span> <span class="o">=</span> <span class="p">[</span>
<span class="p">(</span><span class="s2">&quot;dwFlags&quot;</span><span class="p">,</span> <span class="n">ULONG</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;dwClientThread&quot;</span><span class="p">,</span> <span class="n">ULONG</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;reserved&quot;</span><span class="p">,</span> <span class="n">ULONG</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;pTouchedAstaArray&quot;</span><span class="p">,</span> <span class="n">PVOID32</span><span class="p">),</span>
<span class="p">]</span>
<span class="k">class</span> <span class="nc">LOCALTHAT32_NT_63</span><span class="p">(</span><span class="n">Structure</span><span class="p">):</span>
<span class="n">_fields_</span> <span class="o">=</span> <span class="p">[</span>
<span class="p">(</span><span class="s2">&quot;marshalingSetAcknowledgmentOxid&quot;</span><span class="p">,</span> <span class="n">UINT64</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;marshalingSetId&quot;</span><span class="p">,</span> <span class="n">UINT64</span><span class="p">),</span>
<span class="p">]</span>
<span class="k">class</span> <span class="nc">__MIDL_XmitDefs_0002_NT_1607</span><span class="p">(</span><span class="n">Structure</span><span class="p">):</span>
<span class="n">_fields_</span> <span class="o">=</span> <span class="p">[</span>
<span class="p">(</span><span class="s2">&quot;size&quot;</span><span class="p">,</span> <span class="n">ULONG</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;reserved&quot;</span><span class="p">,</span> <span class="n">ULONG</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;pAstaOxids&quot;</span><span class="p">,</span> <span class="n">PVOID32</span><span class="p">),</span>
<span class="p">]</span>
<span class="k">class</span> <span class="nc">__MIDL_XmitDefs_0001_NT_1607</span><span class="p">(</span><span class="n">Structure</span><span class="p">):</span>
<span class="n">_fields_</span> <span class="o">=</span> <span class="p">[</span>
<span class="p">(</span><span class="s2">&quot;asyncOperationId&quot;</span><span class="p">,</span> <span class="n">_GUID</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;oxidClientProcessNA&quot;</span><span class="p">,</span> <span class="n">UINT64</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;originalClientLogicalThreadId&quot;</span><span class="p">,</span> <span class="n">_GUID</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;uClientCausalityTraceId&quot;</span><span class="p">,</span> <span class="n">UINT64</span><span class="p">),</span>
<span class="p">]</span>
<span class="n">MIDL_XmitDefs_0001_NT_1607</span> <span class="o">=</span> <span class="n">__MIDL_XmitDefs_0001_NT_1607</span>
<span class="k">class</span> <span class="nc">_LOCALTHIS32_NT_1607</span><span class="p">(</span><span class="n">Structure</span><span class="p">):</span>
<span class="n">_fields_</span> <span class="o">=</span> <span class="p">[</span>
<span class="p">(</span><span class="s2">&quot;dwFlags&quot;</span><span class="p">,</span> <span class="n">ULONG</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;dwClientThread&quot;</span><span class="p">,</span> <span class="n">ULONG</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;asyncRequestBlock&quot;</span><span class="p">,</span> <span class="n">MIDL_XmitDefs_0001_NT_1607</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;reserved&quot;</span><span class="p">,</span> <span class="n">ULONG</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;pTouchedAstaArray&quot;</span><span class="p">,</span> <span class="n">PVOID32</span><span class="p">),</span>
<span class="p">]</span>
<span class="n">LOCALTHIS32_NT_1607</span> <span class="o">=</span> <span class="n">_LOCALTHIS32_NT_1607</span>
<span class="k">class</span> <span class="nc">__MIDL_XmitDefs_0007</span><span class="p">(</span><span class="n">Structure</span><span class="p">):</span>
<span class="n">_fields_</span> <span class="o">=</span> <span class="p">[</span>
<span class="p">(</span><span class="s2">&quot;pointOfFailure&quot;</span><span class="p">,</span> <span class="n">INT</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;hrFailure&quot;</span><span class="p">,</span> <span class="n">HRESULT</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;sizeOfMarshaledErrorInfo&quot;</span><span class="p">,</span> <span class="n">ULONG</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;reserved&quot;</span><span class="p">,</span> <span class="n">ULONG</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;pMarshaledErrorInfo&quot;</span><span class="p">,</span> <span class="n">POINTER</span><span class="p">(</span><span class="n">BYTE</span><span class="p">)),</span>
<span class="p">]</span>
<span class="n">MIDL_XmitDefs_0007</span> <span class="o">=</span> <span class="n">__MIDL_XmitDefs_0007</span>
<span class="k">class</span> <span class="nc">__MIDL_XmitDefs_0005</span><span class="p">(</span><span class="n">Structure</span><span class="p">):</span>
<span class="n">_fields_</span> <span class="o">=</span> <span class="p">[</span>
<span class="p">(</span><span class="s2">&quot;sizeOfMarshaledResults&quot;</span><span class="p">,</span> <span class="n">ULONG</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;reserved&quot;</span><span class="p">,</span> <span class="n">ULONG</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;pMarshaledResults&quot;</span><span class="p">,</span> <span class="n">POINTER</span><span class="p">(</span><span class="n">BYTE</span><span class="p">)),</span>
<span class="p">]</span>
<span class="n">MIDL_XmitDefs_0005</span> <span class="o">=</span> <span class="n">__MIDL_XmitDefs_0005</span>
<span class="k">class</span> <span class="nc">__MIDL_XmitDefs_0008</span><span class="p">(</span><span class="n">Structure</span><span class="p">):</span>
<span class="n">_fields_</span> <span class="o">=</span> <span class="p">[</span>
<span class="p">(</span><span class="s2">&quot;outcome&quot;</span><span class="p">,</span> <span class="n">INT</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;successDetails&quot;</span><span class="p">,</span> <span class="n">MIDL_XmitDefs_0005</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;failureDetails&quot;</span><span class="p">,</span> <span class="n">MIDL_XmitDefs_0007</span><span class="p">),</span>
<span class="p">]</span>
<span class="n">MIDL_XmitDefs_0008</span> <span class="o">=</span> <span class="n">__MIDL_XmitDefs_0008</span>
<span class="k">class</span> <span class="nc">__MIDL_XmitDefs_0010</span><span class="p">(</span><span class="n">Structure</span><span class="p">):</span>
<span class="n">_fields_</span> <span class="o">=</span> <span class="p">[</span>
<span class="p">(</span><span class="s2">&quot;asyncStatus&quot;</span><span class="p">,</span> <span class="n">ULONG</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;reserved1&quot;</span><span class="p">,</span> <span class="n">ULONG</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;uServerCausalityTraceId&quot;</span><span class="p">,</span> <span class="n">UINT64</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;reserved2&quot;</span><span class="p">,</span> <span class="n">ULONG</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;pOutcomeDetails&quot;</span><span class="p">,</span> <span class="n">POINTER</span><span class="p">(</span><span class="n">PVOID32</span><span class="p">)),</span>
<span class="p">]</span>
<span class="n">MIDL_XmitDefs_0010</span> <span class="o">=</span> <span class="n">__MIDL_XmitDefs_0010</span>
<span class="k">class</span> <span class="nc">LOCALTHAT32_NT_1607</span><span class="p">(</span><span class="n">Structure</span><span class="p">):</span>
<span class="n">_fields_</span> <span class="o">=</span> <span class="p">[</span>
<span class="p">(</span><span class="s2">&quot;marshalingSetAcknowledgmentOxid&quot;</span><span class="p">,</span> <span class="n">UINT64</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;marshalingSetId&quot;</span><span class="p">,</span> <span class="n">UINT64</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;reserved&quot;</span><span class="p">,</span> <span class="n">ULONG</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;pAsyncResponseBlock&quot;</span><span class="p">,</span> <span class="n">PVOID32</span><span class="p">),</span>
<span class="p">]</span>
<span class="k">class</span> <span class="nc">_LOCALTHAT32_10_1903</span><span class="p">(</span><span class="n">Structure</span><span class="p">):</span>
<span class="n">_fields_</span> <span class="o">=</span> <span class="p">[</span>
<span class="p">(</span><span class="s2">&quot;marshalingSetId&quot;</span><span class="p">,</span> <span class="n">UINT64</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;pAsyncResponseBlock&quot;</span><span class="p">,</span> <span class="n">PVOID32</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;containerPassthroughData&quot;</span><span class="p">,</span> <span class="n">PVOID32</span><span class="p">),</span>
<span class="p">]</span>
<span class="n">LOCALTHAT32_10_1903</span> <span class="o">=</span> <span class="n">_LOCALTHAT32_10_1903</span>
<div class="viewcode-block" id="_LOCALTHIS32">
<a class="viewcode-back" href="../../../winstructs_generated.html#windows.generated_def.winstructs._LOCALTHIS32">[docs]</a>
<span class="k">class</span> <span class="nc">_LOCALTHIS32</span><span class="p">(</span><span class="n">Structure</span><span class="p">):</span>
<span class="n">_fields_</span> <span class="o">=</span> <span class="p">[</span>
<span class="p">(</span><span class="s2">&quot;dwFlags&quot;</span><span class="p">,</span> <span class="n">DWORD</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;dwClientThread&quot;</span><span class="p">,</span> <span class="n">DWORD</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;passthroughTraceActivity&quot;</span><span class="p">,</span> <span class="n">GUID</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;callTraceActivity&quot;</span><span class="p">,</span> <span class="n">GUID</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;asyncRequestBlock&quot;</span><span class="p">,</span> <span class="n">MIDL_XmitDefs_0001</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;reserved&quot;</span><span class="p">,</span> <span class="n">DWORD</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;pTouchedAstaArray&quot;</span><span class="p">,</span> <span class="n">PVOID32</span><span class="p">),</span>
<span class="p">]</span></div>
<span class="n">LOCALTHIS32</span> <span class="o">=</span> <span class="n">_LOCALTHIS32</span>
<div class="viewcode-block" id="_LOCALTHAT32">
<a class="viewcode-back" href="../../../winstructs_generated.html#windows.generated_def.winstructs._LOCALTHAT32">[docs]</a>
<span class="k">class</span> <span class="nc">_LOCALTHAT32</span><span class="p">(</span><span class="n">Structure</span><span class="p">):</span>
<span class="n">_fields_</span> <span class="o">=</span> <span class="p">[</span>
<span class="p">(</span><span class="s2">&quot;marshalingSetId&quot;</span><span class="p">,</span> <span class="n">UINT64</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;reserved&quot;</span><span class="p">,</span> <span class="n">ULONG</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;pAsyncResponseBlock&quot;</span><span class="p">,</span> <span class="n">PVOID32</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;containerErrorInformation&quot;</span><span class="p">,</span> <span class="n">PVOID32</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;containerPassthroughData&quot;</span><span class="p">,</span> <span class="n">PVOID32</span><span class="p">),</span>
<span class="p">]</span></div>
<span class="n">LOCALTHAT32</span> <span class="o">=</span> <span class="n">_LOCALTHAT32</span>
<span class="n">VIRTUAL_DISK_ACCESS_NONE</span> <span class="o">=</span> <span class="n">EnumValue</span><span class="p">(</span><span class="s2">&quot;_VIRTUAL_DISK_ACCESS_MASK&quot;</span><span class="p">,</span> <span class="s2">&quot;VIRTUAL_DISK_ACCESS_NONE&quot;</span><span class="p">,</span> <span class="mh">0x0</span><span class="p">)</span>
<span class="n">VIRTUAL_DISK_ACCESS_ATTACH_RO</span> <span class="o">=</span> <span class="n">EnumValue</span><span class="p">(</span><span class="s2">&quot;_VIRTUAL_DISK_ACCESS_MASK&quot;</span><span class="p">,</span> <span class="s2">&quot;VIRTUAL_DISK_ACCESS_ATTACH_RO&quot;</span><span class="p">,</span> <span class="mh">0x1</span><span class="p">)</span>
<span class="n">VIRTUAL_DISK_ACCESS_ATTACH_RW</span> <span class="o">=</span> <span class="n">EnumValue</span><span class="p">(</span><span class="s2">&quot;_VIRTUAL_DISK_ACCESS_MASK&quot;</span><span class="p">,</span> <span class="s2">&quot;VIRTUAL_DISK_ACCESS_ATTACH_RW&quot;</span><span class="p">,</span> <span class="mh">0x2</span><span class="p">)</span>
@@ -11231,6 +11375,42 @@
<span class="n">PFILE_INFORMATION_CLASS</span> <span class="o">=</span> <span class="n">POINTER</span><span class="p">(</span><span class="n">_FILE_INFORMATION_CLASS</span><span class="p">)</span>
<span class="n">FileBasicInfo</span> <span class="o">=</span> <span class="n">EnumValue</span><span class="p">(</span><span class="s2">&quot;_FILE_INFO_BY_HANDLE_CLASS&quot;</span><span class="p">,</span> <span class="s2">&quot;FileBasicInfo&quot;</span><span class="p">,</span> <span class="mh">0x0</span><span class="p">)</span>
<span class="n">FileStandardInfo</span> <span class="o">=</span> <span class="n">EnumValue</span><span class="p">(</span><span class="s2">&quot;_FILE_INFO_BY_HANDLE_CLASS&quot;</span><span class="p">,</span> <span class="s2">&quot;FileStandardInfo&quot;</span><span class="p">,</span> <span class="mh">0x1</span><span class="p">)</span>
<span class="n">FileNameInfo</span> <span class="o">=</span> <span class="n">EnumValue</span><span class="p">(</span><span class="s2">&quot;_FILE_INFO_BY_HANDLE_CLASS&quot;</span><span class="p">,</span> <span class="s2">&quot;FileNameInfo&quot;</span><span class="p">,</span> <span class="mh">0x2</span><span class="p">)</span>
<span class="n">FileRenameInfo</span> <span class="o">=</span> <span class="n">EnumValue</span><span class="p">(</span><span class="s2">&quot;_FILE_INFO_BY_HANDLE_CLASS&quot;</span><span class="p">,</span> <span class="s2">&quot;FileRenameInfo&quot;</span><span class="p">,</span> <span class="mh">0x3</span><span class="p">)</span>
<span class="n">FileDispositionInfo</span> <span class="o">=</span> <span class="n">EnumValue</span><span class="p">(</span><span class="s2">&quot;_FILE_INFO_BY_HANDLE_CLASS&quot;</span><span class="p">,</span> <span class="s2">&quot;FileDispositionInfo&quot;</span><span class="p">,</span> <span class="mh">0x4</span><span class="p">)</span>
<span class="n">FileAllocationInfo</span> <span class="o">=</span> <span class="n">EnumValue</span><span class="p">(</span><span class="s2">&quot;_FILE_INFO_BY_HANDLE_CLASS&quot;</span><span class="p">,</span> <span class="s2">&quot;FileAllocationInfo&quot;</span><span class="p">,</span> <span class="mh">0x5</span><span class="p">)</span>
<span class="n">FileEndOfFileInfo</span> <span class="o">=</span> <span class="n">EnumValue</span><span class="p">(</span><span class="s2">&quot;_FILE_INFO_BY_HANDLE_CLASS&quot;</span><span class="p">,</span> <span class="s2">&quot;FileEndOfFileInfo&quot;</span><span class="p">,</span> <span class="mh">0x6</span><span class="p">)</span>
<span class="n">FileStreamInfo</span> <span class="o">=</span> <span class="n">EnumValue</span><span class="p">(</span><span class="s2">&quot;_FILE_INFO_BY_HANDLE_CLASS&quot;</span><span class="p">,</span> <span class="s2">&quot;FileStreamInfo&quot;</span><span class="p">,</span> <span class="mh">0x7</span><span class="p">)</span>
<span class="n">FileCompressionInfo</span> <span class="o">=</span> <span class="n">EnumValue</span><span class="p">(</span><span class="s2">&quot;_FILE_INFO_BY_HANDLE_CLASS&quot;</span><span class="p">,</span> <span class="s2">&quot;FileCompressionInfo&quot;</span><span class="p">,</span> <span class="mh">0x8</span><span class="p">)</span>
<span class="n">FileAttributeTagInfo</span> <span class="o">=</span> <span class="n">EnumValue</span><span class="p">(</span><span class="s2">&quot;_FILE_INFO_BY_HANDLE_CLASS&quot;</span><span class="p">,</span> <span class="s2">&quot;FileAttributeTagInfo&quot;</span><span class="p">,</span> <span class="mh">0x9</span><span class="p">)</span>
<span class="n">FileIdBothDirectoryInfo</span> <span class="o">=</span> <span class="n">EnumValue</span><span class="p">(</span><span class="s2">&quot;_FILE_INFO_BY_HANDLE_CLASS&quot;</span><span class="p">,</span> <span class="s2">&quot;FileIdBothDirectoryInfo&quot;</span><span class="p">,</span> <span class="mh">0xa</span><span class="p">)</span>
<span class="n">FileIdBothDirectoryRestartInfo</span> <span class="o">=</span> <span class="n">EnumValue</span><span class="p">(</span><span class="s2">&quot;_FILE_INFO_BY_HANDLE_CLASS&quot;</span><span class="p">,</span> <span class="s2">&quot;FileIdBothDirectoryRestartInfo&quot;</span><span class="p">,</span> <span class="mh">0xb</span><span class="p">)</span>
<span class="n">FileIoPriorityHintInfo</span> <span class="o">=</span> <span class="n">EnumValue</span><span class="p">(</span><span class="s2">&quot;_FILE_INFO_BY_HANDLE_CLASS&quot;</span><span class="p">,</span> <span class="s2">&quot;FileIoPriorityHintInfo&quot;</span><span class="p">,</span> <span class="mh">0xc</span><span class="p">)</span>
<span class="n">FileRemoteProtocolInfo</span> <span class="o">=</span> <span class="n">EnumValue</span><span class="p">(</span><span class="s2">&quot;_FILE_INFO_BY_HANDLE_CLASS&quot;</span><span class="p">,</span> <span class="s2">&quot;FileRemoteProtocolInfo&quot;</span><span class="p">,</span> <span class="mh">0xd</span><span class="p">)</span>
<span class="n">FileFullDirectoryInfo</span> <span class="o">=</span> <span class="n">EnumValue</span><span class="p">(</span><span class="s2">&quot;_FILE_INFO_BY_HANDLE_CLASS&quot;</span><span class="p">,</span> <span class="s2">&quot;FileFullDirectoryInfo&quot;</span><span class="p">,</span> <span class="mh">0xe</span><span class="p">)</span>
<span class="n">FileFullDirectoryRestartInfo</span> <span class="o">=</span> <span class="n">EnumValue</span><span class="p">(</span><span class="s2">&quot;_FILE_INFO_BY_HANDLE_CLASS&quot;</span><span class="p">,</span> <span class="s2">&quot;FileFullDirectoryRestartInfo&quot;</span><span class="p">,</span> <span class="mh">0xf</span><span class="p">)</span>
<span class="n">FileStorageInfo</span> <span class="o">=</span> <span class="n">EnumValue</span><span class="p">(</span><span class="s2">&quot;_FILE_INFO_BY_HANDLE_CLASS&quot;</span><span class="p">,</span> <span class="s2">&quot;FileStorageInfo&quot;</span><span class="p">,</span> <span class="mh">0x10</span><span class="p">)</span>
<span class="n">FileAlignmentInfo</span> <span class="o">=</span> <span class="n">EnumValue</span><span class="p">(</span><span class="s2">&quot;_FILE_INFO_BY_HANDLE_CLASS&quot;</span><span class="p">,</span> <span class="s2">&quot;FileAlignmentInfo&quot;</span><span class="p">,</span> <span class="mh">0x11</span><span class="p">)</span>
<span class="n">FileIdInfo</span> <span class="o">=</span> <span class="n">EnumValue</span><span class="p">(</span><span class="s2">&quot;_FILE_INFO_BY_HANDLE_CLASS&quot;</span><span class="p">,</span> <span class="s2">&quot;FileIdInfo&quot;</span><span class="p">,</span> <span class="mh">0x12</span><span class="p">)</span>
<span class="n">FileIdExtdDirectoryInfo</span> <span class="o">=</span> <span class="n">EnumValue</span><span class="p">(</span><span class="s2">&quot;_FILE_INFO_BY_HANDLE_CLASS&quot;</span><span class="p">,</span> <span class="s2">&quot;FileIdExtdDirectoryInfo&quot;</span><span class="p">,</span> <span class="mh">0x13</span><span class="p">)</span>
<span class="n">FileIdExtdDirectoryRestartInfo</span> <span class="o">=</span> <span class="n">EnumValue</span><span class="p">(</span><span class="s2">&quot;_FILE_INFO_BY_HANDLE_CLASS&quot;</span><span class="p">,</span> <span class="s2">&quot;FileIdExtdDirectoryRestartInfo&quot;</span><span class="p">,</span> <span class="mh">0x14</span><span class="p">)</span>
<span class="n">FileDispositionInfoEx</span> <span class="o">=</span> <span class="n">EnumValue</span><span class="p">(</span><span class="s2">&quot;_FILE_INFO_BY_HANDLE_CLASS&quot;</span><span class="p">,</span> <span class="s2">&quot;FileDispositionInfoEx&quot;</span><span class="p">,</span> <span class="mh">0x15</span><span class="p">)</span>
<span class="n">FileRenameInfoEx</span> <span class="o">=</span> <span class="n">EnumValue</span><span class="p">(</span><span class="s2">&quot;_FILE_INFO_BY_HANDLE_CLASS&quot;</span><span class="p">,</span> <span class="s2">&quot;FileRenameInfoEx&quot;</span><span class="p">,</span> <span class="mh">0x16</span><span class="p">)</span>
<span class="n">FileCaseSensitiveInfo</span> <span class="o">=</span> <span class="n">EnumValue</span><span class="p">(</span><span class="s2">&quot;_FILE_INFO_BY_HANDLE_CLASS&quot;</span><span class="p">,</span> <span class="s2">&quot;FileCaseSensitiveInfo&quot;</span><span class="p">,</span> <span class="mh">0x17</span><span class="p">)</span>
<span class="n">FileNormalizedNameInfo</span> <span class="o">=</span> <span class="n">EnumValue</span><span class="p">(</span><span class="s2">&quot;_FILE_INFO_BY_HANDLE_CLASS&quot;</span><span class="p">,</span> <span class="s2">&quot;FileNormalizedNameInfo&quot;</span><span class="p">,</span> <span class="mh">0x18</span><span class="p">)</span>
<span class="n">MaximumFileInfoByHandleClass</span> <span class="o">=</span> <span class="n">EnumValue</span><span class="p">(</span><span class="s2">&quot;_FILE_INFO_BY_HANDLE_CLASS&quot;</span><span class="p">,</span> <span class="s2">&quot;MaximumFileInfoByHandleClass&quot;</span><span class="p">,</span> <span class="mh">0x19</span><span class="p">)</span>
<div class="viewcode-block" id="_FILE_INFO_BY_HANDLE_CLASS">
<a class="viewcode-back" href="../../../winstructs_generated.html#windows.generated_def.winstructs._FILE_INFO_BY_HANDLE_CLASS">[docs]</a>
<span class="k">class</span> <span class="nc">_FILE_INFO_BY_HANDLE_CLASS</span><span class="p">(</span><span class="n">EnumType</span><span class="p">):</span>
<span class="n">values</span> <span class="o">=</span> <span class="p">[</span><span class="n">FileBasicInfo</span><span class="p">,</span> <span class="n">FileStandardInfo</span><span class="p">,</span> <span class="n">FileNameInfo</span><span class="p">,</span> <span class="n">FileRenameInfo</span><span class="p">,</span> <span class="n">FileDispositionInfo</span><span class="p">,</span> <span class="n">FileAllocationInfo</span><span class="p">,</span> <span class="n">FileEndOfFileInfo</span><span class="p">,</span> <span class="n">FileStreamInfo</span><span class="p">,</span> <span class="n">FileCompressionInfo</span><span class="p">,</span> <span class="n">FileAttributeTagInfo</span><span class="p">,</span> <span class="n">FileIdBothDirectoryInfo</span><span class="p">,</span> <span class="n">FileIdBothDirectoryRestartInfo</span><span class="p">,</span> <span class="n">FileIoPriorityHintInfo</span><span class="p">,</span> <span class="n">FileRemoteProtocolInfo</span><span class="p">,</span> <span class="n">FileFullDirectoryInfo</span><span class="p">,</span> <span class="n">FileFullDirectoryRestartInfo</span><span class="p">,</span> <span class="n">FileStorageInfo</span><span class="p">,</span> <span class="n">FileAlignmentInfo</span><span class="p">,</span> <span class="n">FileIdInfo</span><span class="p">,</span> <span class="n">FileIdExtdDirectoryInfo</span><span class="p">,</span> <span class="n">FileIdExtdDirectoryRestartInfo</span><span class="p">,</span> <span class="n">FileDispositionInfoEx</span><span class="p">,</span> <span class="n">FileRenameInfoEx</span><span class="p">,</span> <span class="n">FileCaseSensitiveInfo</span><span class="p">,</span> <span class="n">FileNormalizedNameInfo</span><span class="p">,</span> <span class="n">MaximumFileInfoByHandleClass</span><span class="p">]</span>
<span class="n">mapper</span> <span class="o">=</span> <span class="n">FlagMapper</span><span class="p">(</span><span class="o">*</span><span class="n">values</span><span class="p">)</span></div>
<span class="n">FILE_INFO_BY_HANDLE_CLASS</span> <span class="o">=</span> <span class="n">_FILE_INFO_BY_HANDLE_CLASS</span>
<span class="n">PFILE_INFO_BY_HANDLE_CLASS</span> <span class="o">=</span> <span class="n">POINTER</span><span class="p">(</span><span class="n">_FILE_INFO_BY_HANDLE_CLASS</span><span class="p">)</span>
<span class="n">IoPriorityVeryLow</span> <span class="o">=</span> <span class="n">EnumValue</span><span class="p">(</span><span class="s2">&quot;_IO_PRIORITY_HINT&quot;</span><span class="p">,</span> <span class="s2">&quot;IoPriorityVeryLow&quot;</span><span class="p">,</span> <span class="mh">0x0</span><span class="p">)</span>
<span class="n">IoPriorityLow</span> <span class="o">=</span> <span class="n">EnumValue</span><span class="p">(</span><span class="s2">&quot;_IO_PRIORITY_HINT&quot;</span><span class="p">,</span> <span class="s2">&quot;IoPriorityLow&quot;</span><span class="p">,</span> <span class="mh">0x1</span><span class="p">)</span>
<span class="n">IoPriorityNormal</span> <span class="o">=</span> <span class="n">EnumValue</span><span class="p">(</span><span class="s2">&quot;_IO_PRIORITY_HINT&quot;</span><span class="p">,</span> <span class="s2">&quot;IoPriorityNormal&quot;</span><span class="p">,</span> <span class="mh">0x2</span><span class="p">)</span>
@@ -11472,6 +11652,26 @@
<span class="n">FILE_GET_EA_INFORMATION</span> <span class="o">=</span> <span class="n">_FILE_GET_EA_INFORMATION</span>
<span class="n">PFILE_GET_EA_INFORMATION</span> <span class="o">=</span> <span class="n">POINTER</span><span class="p">(</span><span class="n">_FILE_GET_EA_INFORMATION</span><span class="p">)</span>
<div class="viewcode-block" id="_BY_HANDLE_FILE_INFORMATION">
<a class="viewcode-back" href="../../../winstructs_generated.html#windows.generated_def.winstructs._BY_HANDLE_FILE_INFORMATION">[docs]</a>
<span class="k">class</span> <span class="nc">_BY_HANDLE_FILE_INFORMATION</span><span class="p">(</span><span class="n">Structure</span><span class="p">):</span>
<span class="n">_fields_</span> <span class="o">=</span> <span class="p">[</span>
<span class="p">(</span><span class="s2">&quot;dwFileAttributes&quot;</span><span class="p">,</span> <span class="n">DWORD</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;ftCreationTime&quot;</span><span class="p">,</span> <span class="n">FILETIME</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;ftLastAccessTime&quot;</span><span class="p">,</span> <span class="n">FILETIME</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;ftLastWriteTime&quot;</span><span class="p">,</span> <span class="n">FILETIME</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;dwVolumeSerialNumber&quot;</span><span class="p">,</span> <span class="n">DWORD</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;nFileSizeHigh&quot;</span><span class="p">,</span> <span class="n">DWORD</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;nFileSizeLow&quot;</span><span class="p">,</span> <span class="n">DWORD</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;nNumberOfLinks&quot;</span><span class="p">,</span> <span class="n">DWORD</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;nFileIndexHigh&quot;</span><span class="p">,</span> <span class="n">DWORD</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;nFileIndexLow&quot;</span><span class="p">,</span> <span class="n">DWORD</span><span class="p">),</span>
<span class="p">]</span></div>
<span class="n">BY_HANDLE_FILE_INFORMATION</span> <span class="o">=</span> <span class="n">_BY_HANDLE_FILE_INFORMATION</span>
<span class="n">LPBY_HANDLE_FILE_INFORMATION</span> <span class="o">=</span> <span class="n">POINTER</span><span class="p">(</span><span class="n">_BY_HANDLE_FILE_INFORMATION</span><span class="p">)</span>
<span class="n">PBY_HANDLE_FILE_INFORMATION</span> <span class="o">=</span> <span class="n">POINTER</span><span class="p">(</span><span class="n">_BY_HANDLE_FILE_INFORMATION</span><span class="p">)</span>
<div class="viewcode-block" id="tagVS_FIXEDFILEINFO">
<a class="viewcode-back" href="../../../winstructs_generated.html#windows.generated_def.winstructs.tagVS_FIXEDFILEINFO">[docs]</a>
<span class="k">class</span> <span class="nc">tagVS_FIXEDFILEINFO</span><span class="p">(</span><span class="n">Structure</span><span class="p">):</span>
@@ -14964,7 +15164,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.3 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" >Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.generated_def.winstructs</a></li>
</ul>
+4 -4
View File
@@ -4,12 +4,12 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>windows.hooks &#8212; PythonForWindows 1.0.0 documentation</title>
<title>windows.hooks &#8212; PythonForWindows 1.0.2 documentation</title>
<link rel="stylesheet" type="text/css" href="../../_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="../../_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="../../_static/css/mbasic.css?v=957880af" />
<script src="../../_static/documentation_options.js?v=8d563738"></script>
<script src="../../_static/documentation_options.js?v=1ed6394b"></script>
<script src="../../_static/doctools.js?v=9a2dae69"></script>
<script src="../../_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -25,7 +25,7 @@
<li class="right" >
<a href="../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../index.html" accesskey="U">Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.hooks</a></li>
</ul>
@@ -210,7 +210,7 @@
<li class="right" >
<a href="../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../index.html" >Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.hooks</a></li>
</ul>
+4 -4
View File
@@ -4,12 +4,12 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>windows.native_exec.cpuid &#8212; PythonForWindows 1.0.0 documentation</title>
<title>windows.native_exec.cpuid &#8212; PythonForWindows 1.0.2 documentation</title>
<link rel="stylesheet" type="text/css" href="../../../_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="../../../_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="../../../_static/css/mbasic.css?v=957880af" />
<script src="../../../_static/documentation_options.js?v=8d563738"></script>
<script src="../../../_static/documentation_options.js?v=1ed6394b"></script>
<script src="../../../_static/doctools.js?v=9a2dae69"></script>
<script src="../../../_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -25,7 +25,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" accesskey="U">Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.native_exec.cpuid</a></li>
</ul>
@@ -260,7 +260,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" >Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.native_exec.cpuid</a></li>
</ul>
@@ -4,12 +4,12 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>windows.native_exec.native_function &#8212; PythonForWindows 1.0.0 documentation</title>
<title>windows.native_exec.native_function &#8212; PythonForWindows 1.0.2 documentation</title>
<link rel="stylesheet" type="text/css" href="../../../_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="../../../_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="../../../_static/css/mbasic.css?v=957880af" />
<script src="../../../_static/documentation_options.js?v=8d563738"></script>
<script src="../../../_static/documentation_options.js?v=1ed6394b"></script>
<script src="../../../_static/doctools.js?v=9a2dae69"></script>
<script src="../../../_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -25,7 +25,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" accesskey="U">Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.native_exec.native_function</a></li>
</ul>
@@ -158,7 +158,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" >Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.native_exec.native_function</a></li>
</ul>
@@ -4,12 +4,12 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>windows.native_exec.simple_x86 &#8212; PythonForWindows 1.0.0 documentation</title>
<title>windows.native_exec.simple_x86 &#8212; PythonForWindows 1.0.2 documentation</title>
<link rel="stylesheet" type="text/css" href="../../../_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="../../../_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="../../../_static/css/mbasic.css?v=957880af" />
<script src="../../../_static/documentation_options.js?v=8d563738"></script>
<script src="../../../_static/documentation_options.js?v=1ed6394b"></script>
<script src="../../../_static/doctools.js?v=9a2dae69"></script>
<script src="../../../_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -25,7 +25,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" accesskey="U">Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.native_exec.simple_x86</a></li>
</ul>
@@ -1273,7 +1273,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" >Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.native_exec.simple_x86</a></li>
</ul>
+18 -5
View File
@@ -4,12 +4,12 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>windows.pe_parse &#8212; PythonForWindows 1.0.0 documentation</title>
<title>windows.pe_parse &#8212; PythonForWindows 1.0.2 documentation</title>
<link rel="stylesheet" type="text/css" href="../../_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="../../_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="../../_static/css/mbasic.css?v=957880af" />
<script src="../../_static/documentation_options.js?v=8d563738"></script>
<script src="../../_static/documentation_options.js?v=1ed6394b"></script>
<script src="../../_static/doctools.js?v=9a2dae69"></script>
<script src="../../_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -25,7 +25,7 @@
<li class="right" >
<a href="../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../index.html" accesskey="U">Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.pe_parse</a></li>
</ul>
@@ -503,7 +503,20 @@
<span class="n">iat_entry</span><span class="o">.</span><span class="n">name</span> <span class="o">=</span> <span class="nb">str</span><span class="p">(</span><span class="n">name</span><span class="p">)</span> <span class="k">if</span> <span class="n">name</span> <span class="k">else</span> <span class="s2">&quot;&quot;</span>
<span class="n">name</span> <span class="o">=</span> <span class="n">get_string</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">target</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">baseaddr</span> <span class="o">+</span> <span class="n">import_descriptor</span><span class="o">.</span><span class="n">Name</span><span class="p">)</span>
<span class="n">res</span><span class="o">.</span><span class="n">setdefault</span><span class="p">(</span><span class="n">name</span><span class="o">.</span><span class="n">lower</span><span class="p">(),</span> <span class="p">[])</span><span class="o">.</span><span class="n">extend</span><span class="p">(</span><span class="n">IAT</span><span class="p">)</span>
<span class="k">return</span> <span class="n">res</span></div>
<span class="k">return</span> <span class="n">res</span>
<span class="nd">@utils</span><span class="o">.</span><span class="n">fixedpropety</span>
<span class="k">def</span> <span class="nf">binid</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
<span class="w"> </span><span class="sd">&quot;&quot;&quot;Return the hex-string {TimeStamp}{SizeOfCode} used by PDB to identify a PE.</span>
<span class="sd"> I do not know the official name of this value...</span>
<span class="sd"> :type: :class:`str`</span>
<span class="sd"> &quot;&quot;&quot;</span>
<span class="n">nth</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">get_NT_HEADER</span><span class="p">()</span>
<span class="n">timestamp</span> <span class="o">=</span> <span class="n">nth</span><span class="o">.</span><span class="n">FileHeader</span><span class="o">.</span><span class="n">TimeDateStamp</span>
<span class="n">image_size</span> <span class="o">=</span> <span class="n">nth</span><span class="o">.</span><span class="n">OptionalHeader</span><span class="o">.</span><span class="n">SizeOfImage</span>
<span class="k">return</span> <span class="s2">&quot;</span><span class="si">{timestamp:08x}{image_size:x}</span><span class="s2">&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">timestamp</span><span class="o">=</span><span class="n">timestamp</span><span class="p">,</span> <span class="n">image_size</span><span class="o">=</span><span class="n">image_size</span><span class="p">)</span></div>
</pre></div>
@@ -536,7 +549,7 @@
<li class="right" >
<a href="../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../index.html" >Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.pe_parse</a></li>
</ul>
+4 -4
View File
@@ -4,12 +4,12 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>windows.pipe &#8212; PythonForWindows 1.0.0 documentation</title>
<title>windows.pipe &#8212; PythonForWindows 1.0.2 documentation</title>
<link rel="stylesheet" type="text/css" href="../../_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="../../_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="../../_static/css/mbasic.css?v=957880af" />
<script src="../../_static/documentation_options.js?v=8d563738"></script>
<script src="../../_static/documentation_options.js?v=1ed6394b"></script>
<script src="../../_static/doctools.js?v=9a2dae69"></script>
<script src="../../_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -25,7 +25,7 @@
<li class="right" >
<a href="../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../index.html" accesskey="U">Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.pipe</a></li>
</ul>
@@ -228,7 +228,7 @@
<li class="right" >
<a href="../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../index.html" >Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.pipe</a></li>
</ul>
+4 -4
View File
@@ -4,12 +4,12 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>windows.remotectypes &#8212; PythonForWindows 1.0.0 documentation</title>
<title>windows.remotectypes &#8212; PythonForWindows 1.0.2 documentation</title>
<link rel="stylesheet" type="text/css" href="../../_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="../../_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="../../_static/css/mbasic.css?v=957880af" />
<script src="../../_static/documentation_options.js?v=8d563738"></script>
<script src="../../_static/documentation_options.js?v=1ed6394b"></script>
<script src="../../_static/doctools.js?v=9a2dae69"></script>
<script src="../../_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -25,7 +25,7 @@
<li class="right" >
<a href="../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../index.html" accesskey="U">Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.remotectypes</a></li>
</ul>
@@ -599,7 +599,7 @@
<li class="right" >
<a href="../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../index.html" >Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.remotectypes</a></li>
</ul>
+170 -19
View File
@@ -4,12 +4,12 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>windows.rpc.client &#8212; PythonForWindows 1.0.1 documentation</title>
<title>windows.rpc.client &#8212; PythonForWindows 1.0.3 documentation</title>
<link rel="stylesheet" type="text/css" href="../../../_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="../../../_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="../../../_static/css/mbasic.css?v=957880af" />
<script src="../../../_static/documentation_options.js?v=292eb321"></script>
<script src="../../../_static/documentation_options.js?v=baaebd52"></script>
<script src="../../../_static/doctools.js?v=9a2dae69"></script>
<script src="../../../_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -25,7 +25,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.1 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.3 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" accesskey="U">Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.rpc.client</a></li>
</ul>
@@ -101,11 +101,28 @@
<span class="p">(</span><span class="s2">&quot;orpc_ipid&quot;</span><span class="p">,</span> <span class="n">gdef</span><span class="o">.</span><span class="n">GUID</span><span class="p">)</span>
<span class="p">]</span>
<span class="c1"># Was an array of 6 DWORD, new class inspired by :</span>
<span class="c1"># https://github.com/googleprojectzero/sandbox-attacksurface-analysis-tools/blob/main/NtCoreLib/Win32/Rpc/Transport/Alpc/LRPC_IMMEDIATE_RESPONSE_MESSAGE.cs#L22</span>
<span class="k">class</span> <span class="nc">ALPC_RPC_RESPONSE</span><span class="p">(</span><span class="n">ctypes</span><span class="o">.</span><span class="n">Structure</span><span class="p">):</span>
<span class="n">_pack_</span> <span class="o">=</span> <span class="mi">1</span>
<span class="n">_fields_</span> <span class="o">=</span> <span class="p">[</span>
<span class="p">(</span><span class="s2">&quot;request_type&quot;</span><span class="p">,</span> <span class="n">gdef</span><span class="o">.</span><span class="n">DWORD</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;UNK1&quot;</span><span class="p">,</span> <span class="n">gdef</span><span class="o">.</span><span class="n">DWORD</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;flags&quot;</span><span class="p">,</span><span class="n">gdef</span><span class="o">.</span><span class="n">DWORD</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;request_id&quot;</span><span class="p">,</span> <span class="n">gdef</span><span class="o">.</span><span class="n">DWORD</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;UNK2&quot;</span><span class="p">,</span> <span class="n">gdef</span><span class="o">.</span><span class="n">DWORD</span><span class="p">),</span>
<span class="p">(</span><span class="s2">&quot;UNK3&quot;</span><span class="p">,</span> <span class="n">gdef</span><span class="o">.</span><span class="n">DWORD</span><span class="p">),</span>
<span class="p">]</span>
<div class="viewcode-block" id="RPCClient">
<a class="viewcode-back" href="../../../rpc.html#windows.rpc.RPCClient">[docs]</a>
<span class="k">class</span> <span class="nc">RPCClient</span><span class="p">(</span><span class="nb">object</span><span class="p">):</span>
<span class="w"> </span><span class="sd">&quot;&quot;&quot;A client for RPC-over-ALPC able to bind to interface and perform calls using NDR32 marshalling&quot;&quot;&quot;</span>
<span class="n">REQUEST_IDENTIFIER</span> <span class="o">=</span> <span class="mh">0x11223344</span>
<span class="n">REQUEST_IDENTIFIER</span> <span class="o">=</span> <span class="mh">0x42424242</span>
<span class="c1"># Used to recognize ORPC call we made</span>
<span class="c1"># thus we know the response contains a orpcthat &amp; localthat</span>
<span class="n">REQUEST_IDENTIFIER_ORPC</span> <span class="o">=</span> <span class="mh">0x43434343</span>
<span class="k">def</span> <span class="fm">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">port</span><span class="p">):</span>
<span class="bp">self</span><span class="o">.</span><span class="n">alpc_client</span> <span class="o">=</span> <span class="n">alpc</span><span class="o">.</span><span class="n">AlpcClient</span><span class="p">(</span><span class="n">port</span><span class="p">)</span> <span class="c1">#: The :class:`windows.alpc.AlpcClient` used to communicate with the server</span>
@@ -160,6 +177,10 @@
<span class="sd"> :param str params: The mashalled parameters (NDR32)</span>
<span class="sd"> :param GUID ipid: The IPID for `ORPC calls &lt;https://learn.microsoft.com/en-us/openspecs/windows_protocols/ms-dcom/db1d5ce1-a783-4f3d-854c-dc44308e78fb&gt;`_</span>
<span class="sd"> :returns: :class:`str`</span>
<span class="sd"> .. note::</span>
<span class="sd"> Since `1.0.3` if the call is an ORPC call, the `ORPCTHAT` &amp; `LOCALTHAT` present in the response are parsed and striped from the result.</span>
<span class="sd"> &quot;&quot;&quot;</span>
<span class="n">request</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">forge_alpc_request</span><span class="p">(</span><span class="n">IID</span><span class="p">,</span> <span class="n">method_offset</span><span class="p">,</span> <span class="n">params</span><span class="p">,</span> <span class="n">ipid</span><span class="o">=</span><span class="n">ipid</span><span class="p">)</span>
<span class="n">response</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">_send_request</span><span class="p">(</span><span class="n">request</span><span class="p">)</span>
@@ -188,17 +209,14 @@
<span class="n">req</span><span class="o">.</span><span class="n">if_nb</span> <span class="o">=</span> <span class="n">interface_nb</span>
<span class="n">req</span><span class="o">.</span><span class="n">method_offset</span> <span class="o">=</span> <span class="n">method_offset</span>
<span class="k">if</span> <span class="n">ipid</span><span class="p">:</span>
<span class="n">req</span><span class="o">.</span><span class="n">request_id</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">REQUEST_IDENTIFIER_ORPC</span>
<span class="n">req</span><span class="o">.</span><span class="n">flags</span> <span class="o">=</span> <span class="mi">1</span> <span class="c1"># We have a IPID</span>
<span class="n">req</span><span class="o">.</span><span class="n">orpc_ipid</span> <span class="o">=</span> <span class="n">ipid</span>
<span class="n">this</span> <span class="o">=</span> <span class="n">gdef</span><span class="o">.</span><span class="n">ORPCTHIS32</span><span class="p">()</span> <span class="c1"># we use NDR32</span>
<span class="n">this</span><span class="o">.</span><span class="n">version</span> <span class="o">=</span> <span class="p">(</span><span class="mi">5</span><span class="p">,</span><span class="mi">7</span><span class="p">)</span>
<span class="n">this</span><span class="o">.</span><span class="n">flags</span> <span class="o">=</span> <span class="n">gdef</span><span class="o">.</span><span class="n">ORPCF_LOCAL</span>
<span class="c1"># Not mandatory</span>
<span class="c1"># this.cid = gdef.GUID.from_string(&quot;42424242-4242-4242-4242-424242424242&quot;)</span>
<span class="n">lthis</span> <span class="o">=</span> <span class="n">gdef</span><span class="o">.</span><span class="n">LOCALTHIS32</span><span class="p">()</span> <span class="c1"># we use NDR32</span>
<span class="c1"># RPC_E_INVALID_HEADER is NULL</span>
<span class="n">lthis</span><span class="o">.</span><span class="n">callTraceActivity</span> <span class="o">=</span> <span class="n">gdef</span><span class="o">.</span><span class="n">GUID</span><span class="o">.</span><span class="n">from_string</span><span class="p">(</span><span class="s2">&quot;42424242-4242-4242-4242-424242424242&quot;</span><span class="p">)</span>
<span class="n">lthis</span><span class="o">.</span><span class="n">dwClientThread</span> <span class="o">=</span> <span class="n">windows</span><span class="o">.</span><span class="n">current_thread</span><span class="o">.</span><span class="n">tid</span>
<span class="c1"># Returned correct type with mandatory fields filed</span>
<span class="n">lthis</span> <span class="o">=</span> <span class="n">find_correct_localthis_for_version</span><span class="p">()</span>
<span class="k">return</span> <span class="n">buffer</span><span class="p">(</span><span class="n">req</span><span class="p">)[:]</span> <span class="o">+</span> <span class="n">buffer</span><span class="p">(</span><span class="n">this</span><span class="p">)[:]</span> <span class="o">+</span> <span class="n">buffer</span><span class="p">(</span><span class="n">lthis</span><span class="p">)[:]</span> <span class="o">+</span> <span class="n">params</span>
<span class="k">return</span> <span class="n">buffer</span><span class="p">(</span><span class="n">req</span><span class="p">)[:]</span> <span class="o">+</span> <span class="n">params</span>
@@ -238,21 +256,154 @@
<span class="n">request_type</span> <span class="o">=</span> <span class="n">struct</span><span class="o">.</span><span class="n">unpack</span><span class="p">(</span><span class="s2">&quot;&lt;I&quot;</span><span class="p">,</span> <span class="n">response</span><span class="o">.</span><span class="n">data</span><span class="p">[:</span><span class="mi">4</span><span class="p">])[</span><span class="mi">0</span><span class="p">]</span>
<span class="k">if</span> <span class="n">request_type</span> <span class="o">==</span> <span class="n">gdef</span><span class="o">.</span><span class="n">RPC_RESPONSE_TYPE_FAIL</span><span class="p">:</span>
<span class="n">error_code</span> <span class="o">=</span> <span class="n">struct</span><span class="o">.</span><span class="n">unpack</span><span class="p">(</span><span class="s2">&quot;&lt;5I&quot;</span><span class="p">,</span> <span class="n">response</span><span class="o">.</span><span class="n">data</span><span class="p">)[</span><span class="mi">2</span><span class="p">]</span>
<span class="k">raise</span> <span class="ne">ValueError</span><span class="p">(</span><span class="s2">&quot;RPC Response error </span><span class="si">{0}</span><span class="s2"> (</span><span class="si">{1}</span><span class="s2">)&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">error_code</span><span class="p">,</span> <span class="n">KNOWN_RPC_ERROR_CODE</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="n">error_code</span><span class="p">,</span> <span class="n">error_code</span><span class="p">)))</span>
<span class="k">raise</span> <span class="ne">ValueError</span><span class="p">(</span><span class="s2">&quot;RPC Response error </span><span class="si">{0}</span><span class="s2"> (</span><span class="si">{1!r}</span><span class="s2">)&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">error_code</span><span class="p">,</span> <span class="n">KNOWN_RPC_ERROR_CODE</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="n">error_code</span><span class="p">,</span> <span class="n">error_code</span><span class="p">)))</span>
<span class="k">return</span> <span class="n">request_type</span>
<span class="k">def</span> <span class="nf">_get_response_effective_data</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">response</span><span class="p">):</span>
<span class="w"> </span><span class="sd">&quot;&quot;&quot;Response is a `AlpcMessage` needed to handle response in message vs response in view&quot;&quot;&quot;</span>
<span class="n">response_header</span> <span class="o">=</span> <span class="n">ALPC_RPC_RESPONSE</span><span class="o">.</span><span class="n">from_buffer_copy</span><span class="p">(</span><span class="n">response</span><span class="o">.</span><span class="n">data</span><span class="p">)</span>
<span class="k">if</span> <span class="ow">not</span> <span class="n">response</span><span class="o">.</span><span class="n">view_is_valid</span><span class="p">:</span>
<span class="c1"># Reponse directly in PORT_MESSAGE</span>
<span class="k">return</span> <span class="n">response</span><span class="o">.</span><span class="n">data</span><span class="p">[</span><span class="mh">0x18</span><span class="p">:]</span> <span class="c1"># 4 * 6</span>
<span class="c1"># Response in view M extract size from PORT_MESSAGE &amp; read data from view</span>
<span class="k">assert</span> <span class="n">response</span><span class="o">.</span><span class="n">port_message</span><span class="o">.</span><span class="n">u1</span><span class="o">.</span><span class="n">s1</span><span class="o">.</span><span class="n">TotalLength</span> <span class="o">&gt;=</span> <span class="mh">0x48</span> <span class="c1"># At least 0x20 of data</span>
<span class="n">rpcdatasize</span> <span class="o">=</span> <span class="n">struct</span><span class="o">.</span><span class="n">unpack</span><span class="p">(</span><span class="s2">&quot;&lt;I&quot;</span><span class="p">,</span> <span class="n">response</span><span class="o">.</span><span class="n">data</span><span class="p">[</span><span class="mh">0x18</span><span class="p">:</span><span class="mh">0x1c</span><span class="p">])[</span><span class="mi">0</span><span class="p">]</span>
<span class="n">viewattr</span> <span class="o">=</span> <span class="n">response</span><span class="o">.</span><span class="n">view_attribute</span>
<span class="k">assert</span> <span class="n">viewattr</span><span class="o">.</span><span class="n">ViewSize</span> <span class="o">&gt;=</span> <span class="n">rpcdatasize</span>
<span class="k">return</span> <span class="n">windows</span><span class="o">.</span><span class="n">current_process</span><span class="o">.</span><span class="n">read_memory</span><span class="p">(</span><span class="n">viewattr</span><span class="o">.</span><span class="n">ViewBase</span><span class="p">,</span> <span class="n">rpcdatasize</span><span class="p">)</span></div>
<span class="n">data</span> <span class="o">=</span> <span class="n">response</span><span class="o">.</span><span class="n">data</span><span class="p">[</span><span class="n">ctypes</span><span class="o">.</span><span class="n">sizeof</span><span class="p">(</span><span class="n">ALPC_RPC_RESPONSE</span><span class="p">):]</span>
<span class="k">else</span><span class="p">:</span>
<span class="c1"># Response in view M extract size from PORT_MESSAGE &amp; read data from view</span>
<span class="k">assert</span> <span class="n">response</span><span class="o">.</span><span class="n">port_message</span><span class="o">.</span><span class="n">u1</span><span class="o">.</span><span class="n">s1</span><span class="o">.</span><span class="n">TotalLength</span> <span class="o">&gt;=</span> <span class="mh">0x48</span> <span class="c1"># At least 0x20 of data</span>
<span class="n">rpcdatasize</span> <span class="o">=</span> <span class="n">struct</span><span class="o">.</span><span class="n">unpack</span><span class="p">(</span><span class="s2">&quot;&lt;I&quot;</span><span class="p">,</span> <span class="n">response</span><span class="o">.</span><span class="n">data</span><span class="p">[</span><span class="mh">0x18</span><span class="p">:</span><span class="mh">0x1c</span><span class="p">])[</span><span class="mi">0</span><span class="p">]</span> <span class="c1"># ctypes.sizeof(ALPC_RPC_RESPONSE)</span>
<span class="n">viewattr</span> <span class="o">=</span> <span class="n">response</span><span class="o">.</span><span class="n">view_attribute</span>
<span class="k">assert</span> <span class="n">viewattr</span><span class="o">.</span><span class="n">ViewSize</span> <span class="o">&gt;=</span> <span class="n">rpcdatasize</span>
<span class="n">data</span> <span class="o">=</span> <span class="n">windows</span><span class="o">.</span><span class="n">current_process</span><span class="o">.</span><span class="n">read_memory</span><span class="p">(</span><span class="n">viewattr</span><span class="o">.</span><span class="n">ViewBase</span><span class="p">,</span> <span class="n">rpcdatasize</span><span class="p">)</span>
<span class="k">if</span> <span class="n">response_header</span><span class="o">.</span><span class="n">request_id</span> <span class="o">==</span> <span class="bp">self</span><span class="o">.</span><span class="n">REQUEST_IDENTIFIER_ORPC</span><span class="p">:</span>
<span class="c1"># Parse &amp; remove ORPC headers (orpcthat + LocalThat)</span>
<span class="n">orpcthat</span> <span class="o">=</span> <span class="n">gdef</span><span class="o">.</span><span class="n">ORPCTHAT32</span><span class="o">.</span><span class="n">from_buffer_copy</span><span class="p">(</span><span class="n">data</span><span class="p">)</span>
<span class="n">data</span> <span class="o">=</span> <span class="n">data</span><span class="p">[</span><span class="n">ctypes</span><span class="o">.</span><span class="n">sizeof</span><span class="p">(</span><span class="n">orpcthat</span><span class="p">):]</span>
<span class="k">if</span> <span class="n">orpcthat</span><span class="o">.</span><span class="n">extensions</span> <span class="o">!=</span> <span class="mi">0</span><span class="p">:</span>
<span class="nb">print</span><span class="p">(</span><span class="s2">&quot;Parsing extension !&quot;</span><span class="p">)</span>
<span class="c1"># Parse extension : code have not been tested a lot</span>
<span class="n">write_array_extend</span> <span class="o">=</span> <span class="n">gdef</span><span class="o">.</span><span class="n">WireExtentArray</span><span class="o">.</span><span class="n">from_buffer_copy</span><span class="p">(</span><span class="n">data</span><span class="p">)</span>
<span class="n">data</span> <span class="o">=</span> <span class="n">data</span><span class="p">[</span><span class="n">ctypes</span><span class="o">.</span><span class="n">sizeof</span><span class="p">(</span><span class="n">gdef</span><span class="o">.</span><span class="n">WireExtentArray</span><span class="p">):]</span>
<span class="k">if</span> <span class="n">write_array_extend</span><span class="o">.</span><span class="n">rounded_size</span> <span class="o">!=</span> <span class="mi">2</span><span class="p">:</span>
<span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">(</span><span class="s2">&quot;orpcthat.extensions: WireExtentArray.rounded_size != 2&quot;</span><span class="p">)</span>
<span class="k">for</span> <span class="n">value</span> <span class="ow">in</span> <span class="n">write_array_extend</span><span class="o">.</span><span class="n">unique_flag</span><span class="p">:</span>
<span class="k">if</span> <span class="n">value</span> <span class="o">!=</span> <span class="mi">0</span><span class="p">:</span>
<span class="n">data</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">_pass_wire_extend</span><span class="p">(</span><span class="n">data</span><span class="p">)</span>
<span class="n">localthat_type</span> <span class="o">=</span> <span class="n">find_correct_localthat_for_version</span><span class="p">()</span>
<span class="k">if</span> <span class="n">localthat_type</span> <span class="ow">is</span> <span class="ow">not</span> <span class="kc">None</span><span class="p">:</span>
<span class="n">localthat</span> <span class="o">=</span> <span class="n">localthat_type</span><span class="o">.</span><span class="n">from_buffer_copy</span><span class="p">(</span><span class="n">data</span><span class="p">)</span>
<span class="c1"># Check localthat pointers are empty</span>
<span class="k">for</span> <span class="n">field</span> <span class="ow">in</span> <span class="p">(</span><span class="s2">&quot;pAsyncResponseBlock&quot;</span><span class="p">,</span> <span class="s2">&quot;containerErrorInformation&quot;</span><span class="p">,</span> <span class="s2">&quot;containerPassthroughData&quot;</span><span class="p">):</span>
<span class="k">if</span> <span class="nb">getattr</span><span class="p">(</span><span class="n">localthat</span><span class="p">,</span> <span class="n">field</span><span class="p">,</span> <span class="mi">0</span><span class="p">)</span> <span class="o">!=</span> <span class="mi">0</span><span class="p">:</span>
<span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">(</span><span class="s2">&quot;ORPC Response with localthat.</span><span class="si">{0}</span><span class="s2"> != 0&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">field</span><span class="p">))</span>
<span class="n">data</span> <span class="o">=</span> <span class="n">data</span><span class="p">[</span><span class="n">ctypes</span><span class="o">.</span><span class="n">sizeof</span><span class="p">(</span><span class="n">localthat</span><span class="p">):]</span>
<span class="k">return</span> <span class="n">data</span>
<span class="k">def</span> <span class="nf">_pass_wire_extend</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">data</span><span class="p">):</span>
<span class="n">wire_extend</span> <span class="o">=</span> <span class="n">gdef</span><span class="o">.</span><span class="n">WireExtent</span><span class="o">.</span><span class="n">from_buffer_copy</span><span class="p">(</span><span class="n">data</span><span class="p">)</span>
<span class="c1"># We don&#39;t care -&gt; jump over the size only</span>
<span class="k">return</span> <span class="n">data</span><span class="p">[</span><span class="n">ctypes</span><span class="o">.</span><span class="n">sizeof</span><span class="p">(</span><span class="n">gdef</span><span class="o">.</span><span class="n">WireExtent</span><span class="p">)</span> <span class="o">+</span> <span class="n">wire_extend</span><span class="o">.</span><span class="n">rounded_size</span><span class="p">:]</span></div>
<span class="c1"># Based on combase.dll analysis</span>
<span class="c1"># LOCALTHIS</span>
<span class="c1"># Nb fields: 2</span>
<span class="c1"># 6.1.7601.17514 -&gt; 6.2.9200.22376</span>
<span class="c1"># * 6.1.7601.17514</span>
<span class="c1"># * 6.1.7601.17514</span>
<span class="c1"># * 6.2.9200.22376</span>
<span class="c1"># Nb fields: 4</span>
<span class="c1"># 6.3.9600.17031 -&gt; 6.3.9600.20772</span>
<span class="c1"># * 6.3.9600.17031</span>
<span class="c1"># * 6.3.9600.20772</span>
<span class="c1"># Nb fields: 5</span>
<span class="c1"># 10.0.10240.16384 -&gt; 10.0.15063.2679</span>
<span class="c1"># Nb fields: 7</span>
<span class="c1"># 10.0.16299.1 -&gt; 10.0.26100.2454</span>
<span class="k">def</span> <span class="nf">find_correct_localthis_for_version</span><span class="p">():</span>
<span class="n">vmaj</span><span class="p">,</span> <span class="n">vmin</span> <span class="o">=</span> <span class="n">windows</span><span class="o">.</span><span class="n">system</span><span class="o">.</span><span class="n">version</span>
<span class="k">if</span> <span class="p">(</span><span class="n">vmaj</span><span class="p">,</span> <span class="n">vmin</span><span class="p">)</span> <span class="o">&lt;</span> <span class="p">(</span><span class="mi">6</span><span class="p">,</span> <span class="mi">1</span><span class="p">):</span>
<span class="k">return</span> <span class="kc">None</span>
<span class="k">if</span> <span class="p">(</span><span class="n">vmaj</span><span class="p">,</span> <span class="n">vmin</span><span class="p">)</span> <span class="ow">in</span> <span class="p">((</span><span class="mi">6</span><span class="p">,</span> <span class="mi">1</span><span class="p">),</span> <span class="p">(</span><span class="mi">6</span><span class="p">,</span> <span class="mi">2</span><span class="p">)):</span>
<span class="k">return</span> <span class="n">gdef</span><span class="o">.</span><span class="n">LOCALTHIS32_NT_62</span><span class="p">(</span><span class="n">dwClientThread</span> <span class="o">=</span> <span class="n">windows</span><span class="o">.</span><span class="n">current_thread</span><span class="o">.</span><span class="n">tid</span><span class="p">)</span>
<span class="k">elif</span> <span class="p">(</span><span class="n">vmaj</span><span class="p">,</span> <span class="n">vmin</span><span class="p">)</span> <span class="o">==</span> <span class="p">(</span><span class="mi">6</span><span class="p">,</span><span class="mi">3</span><span class="p">):</span>
<span class="k">return</span> <span class="n">gdef</span><span class="o">.</span><span class="n">LOCALTHIS32_NT_63</span><span class="p">(</span><span class="n">dwClientThread</span> <span class="o">=</span> <span class="n">windows</span><span class="o">.</span><span class="n">current_thread</span><span class="o">.</span><span class="n">tid</span><span class="p">)</span>
<span class="k">assert</span> <span class="n">vmaj</span> <span class="o">==</span> <span class="mi">10</span>
<span class="n">vnumber</span> <span class="o">=</span> <span class="n">windows</span><span class="o">.</span><span class="n">system</span><span class="o">.</span><span class="n">get_file_version</span><span class="p">(</span><span class="sa">r</span><span class="s2">&quot;C:\windows\system32\combase.dll&quot;</span><span class="p">)</span>
<span class="c1"># Extract version number from combase</span>
<span class="c1"># as it was used to find the struct per version</span>
<span class="n">build_number</span> <span class="o">=</span> <span class="nb">int</span><span class="p">(</span><span class="n">vnumber</span><span class="o">.</span><span class="n">split</span><span class="p">(</span><span class="s2">&quot;.&quot;</span><span class="p">)[</span><span class="mi">2</span><span class="p">])</span>
<span class="k">if</span> <span class="n">build_number</span> <span class="o">&lt;=</span> <span class="mi">15063</span><span class="p">:</span>
<span class="k">return</span> <span class="n">gdef</span><span class="o">.</span><span class="n">LOCALTHIS32_NT_1607</span><span class="p">(</span><span class="n">dwClientThread</span> <span class="o">=</span> <span class="n">windows</span><span class="o">.</span><span class="n">current_thread</span><span class="o">.</span><span class="n">tid</span><span class="p">)</span>
<span class="k">return</span> <span class="n">gdef</span><span class="o">.</span><span class="n">LOCALTHIS32</span><span class="p">(</span><span class="n">callTraceActivity</span><span class="o">=</span><span class="n">gdef</span><span class="o">.</span><span class="n">GUID</span><span class="o">.</span><span class="n">from_string</span><span class="p">(</span><span class="s2">&quot;42424242-4242-4242-4242-424242424242&quot;</span><span class="p">),</span>
<span class="n">dwClientThread</span> <span class="o">=</span> <span class="n">windows</span><span class="o">.</span><span class="n">current_thread</span><span class="o">.</span><span class="n">tid</span><span class="p">)</span>
<span class="c1"># LOCALTHAT</span>
<span class="c1"># Nb fields: 2</span>
<span class="c1"># 6.3.9600.17031 -&gt; 6.3.9600.20772</span>
<span class="c1"># * 6.3.9600.17031</span>
<span class="c1"># * 6.3.9600.17031</span>
<span class="c1"># * 6.3.9600.17031</span>
<span class="c1"># * 6.3.9600.20772</span>
<span class="c1"># Nb fields: 3</span>
<span class="c1"># 10.0.18362.900 -&gt; 10.0.18362.1916</span>
<span class="c1"># * 10.0.18362.900</span>
<span class="c1"># * 10.0.18362.900</span>
<span class="c1"># * 10.0.18362.1016</span>
<span class="c1"># * 10.0.18362.1916</span>
<span class="c1"># Nb fields: 4</span>
<span class="c1"># 10.0.10240.16384 -&gt; 10.0.17763.6040</span>
<span class="c1"># * 10.0.10240.16384</span>
<span class="c1"># * 10.0.10240.16384</span>
<span class="c1"># * 10.0.10240.20747</span>
<span class="c1"># * 10.0.10586.0</span>
<span class="c1"># * 10.0.14393.576</span>
<span class="c1"># * 10.0.14393.6451</span>
<span class="c1"># * 10.0.14393.7426</span>
<span class="c1"># * 10.0.15063.251</span>
<span class="c1"># * 10.0.15063.1563</span>
<span class="c1"># * 10.0.15063.2500</span>
<span class="c1"># * 10.0.15063.2679</span>
<span class="c1"># * 10.0.16299.1</span>
<span class="c1"># * 10.0.16299.15</span>
<span class="c1"># * 10.0.17134.1</span>
<span class="c1"># * 10.0.17134.48</span>
<span class="c1"># * 10.0.17134.2145</span>
<span class="c1"># * 10.0.17134.2145</span>
<span class="c1"># * 10.0.17763.1</span>
<span class="c1"># * 10.0.17763.2931</span>
<span class="c1"># * 10.0.17763.6040</span>
<span class="c1"># Nb fields: 5</span>
<span class="c1"># 10.0.19039.1 -&gt; 10.0.26100.2454</span>
<span class="c1"># * 10.0.19039.1</span>
<span class="c1"># * 10.0.19041.84</span>
<span class="c1"># * 10.0.19041.4894</span>
<span class="c1"># * 10.0.22000.65</span>
<span class="c1"># * 10.0.22621.2792</span>
<span class="c1"># * 10.0.22621.3958</span>
<span class="c1"># * 10.0.22621.4111</span>
<span class="c1"># * 10.0.22621.4541</span>
<span class="c1"># * 10.0.26100.2454</span>
<span class="c1"># * 10.0.26100.2454</span>
<span class="k">def</span> <span class="nf">find_correct_localthat_for_version</span><span class="p">():</span>
<span class="n">vmaj</span><span class="p">,</span> <span class="n">vmin</span> <span class="o">=</span> <span class="n">windows</span><span class="o">.</span><span class="n">system</span><span class="o">.</span><span class="n">version</span>
<span class="k">if</span> <span class="p">(</span><span class="n">vmaj</span><span class="p">,</span> <span class="n">vmin</span><span class="p">)</span> <span class="o">&lt;</span> <span class="p">(</span><span class="mi">6</span><span class="p">,</span> <span class="mi">3</span><span class="p">):</span>
<span class="k">return</span> <span class="kc">None</span>
<span class="k">elif</span> <span class="p">(</span><span class="n">vmaj</span><span class="p">,</span> <span class="n">vmin</span><span class="p">)</span> <span class="o">==</span> <span class="p">(</span><span class="mi">6</span><span class="p">,</span><span class="mi">3</span><span class="p">):</span>
<span class="k">return</span> <span class="n">gdef</span><span class="o">.</span><span class="n">LOCALTHAT32_NT_63</span>
<span class="k">assert</span> <span class="n">vmaj</span> <span class="o">==</span> <span class="mi">10</span>
<span class="n">vnumber</span> <span class="o">=</span> <span class="n">windows</span><span class="o">.</span><span class="n">system</span><span class="o">.</span><span class="n">get_file_version</span><span class="p">(</span><span class="sa">r</span><span class="s2">&quot;C:\windows\system32\combase.dll&quot;</span><span class="p">)</span>
<span class="c1"># Extract version number from combase</span>
<span class="c1"># as it was used to find the struct per version</span>
<span class="n">build_number</span> <span class="o">=</span> <span class="nb">int</span><span class="p">(</span><span class="n">vnumber</span><span class="o">.</span><span class="n">split</span><span class="p">(</span><span class="s2">&quot;.&quot;</span><span class="p">)[</span><span class="mi">2</span><span class="p">])</span>
<span class="k">if</span> <span class="n">build_number</span> <span class="o">&lt;=</span> <span class="mi">17763</span><span class="p">:</span>
<span class="k">return</span> <span class="n">gdef</span><span class="o">.</span><span class="n">LOCALTHAT32_NT_1607</span>
<span class="k">elif</span> <span class="n">build_number</span> <span class="o">==</span> <span class="mi">18362</span><span class="p">:</span>
<span class="k">return</span> <span class="n">gdef</span><span class="o">.</span><span class="n">LOCALTHAT32_10_1903</span>
<span class="k">elif</span> <span class="n">build_number</span> <span class="o">&gt;=</span> <span class="mi">19039</span><span class="p">:</span>
<span class="k">return</span> <span class="n">gdef</span><span class="o">.</span><span class="n">LOCALTHAT32</span>
<span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">(</span><span class="s2">&quot;Unknown LOCALTHAT32 structure for version </span><span class="si">{0}</span><span class="s2">, please share me your combase.dll file&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">windows</span><span class="o">.</span><span class="n">system</span><span class="o">.</span><span class="n">versionstr</span><span class="p">))</span>
</pre></div>
<div class="clearer"></div>
@@ -284,7 +435,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.1 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.3 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" >Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.rpc.client</a></li>
</ul>
+4 -4
View File
@@ -4,12 +4,12 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>windows.rpc.epmapper &#8212; PythonForWindows 1.0.0 documentation</title>
<title>windows.rpc.epmapper &#8212; PythonForWindows 1.0.2 documentation</title>
<link rel="stylesheet" type="text/css" href="../../../_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="../../../_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="../../../_static/css/mbasic.css?v=957880af" />
<script src="../../../_static/documentation_options.js?v=8d563738"></script>
<script src="../../../_static/documentation_options.js?v=1ed6394b"></script>
<script src="../../../_static/doctools.js?v=9a2dae69"></script>
<script src="../../../_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -25,7 +25,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" accesskey="U">Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.rpc.epmapper</a></li>
</ul>
@@ -273,7 +273,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" >Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.rpc.epmapper</a></li>
</ul>
+4 -4
View File
@@ -4,12 +4,12 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>windows.rpc.ndr &#8212; PythonForWindows 1.0.0 documentation</title>
<title>windows.rpc.ndr &#8212; PythonForWindows 1.0.2 documentation</title>
<link rel="stylesheet" type="text/css" href="../../../_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="../../../_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="../../../_static/css/mbasic.css?v=957880af" />
<script src="../../../_static/documentation_options.js?v=8d563738"></script>
<script src="../../../_static/documentation_options.js?v=1ed6394b"></script>
<script src="../../../_static/doctools.js?v=9a2dae69"></script>
<script src="../../../_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -25,7 +25,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" accesskey="U">Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.rpc.ndr</a></li>
</ul>
@@ -757,7 +757,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" >Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.rpc.ndr</a></li>
</ul>
+4 -4
View File
@@ -4,12 +4,12 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>windows.security &#8212; PythonForWindows 1.0.0 documentation</title>
<title>windows.security &#8212; PythonForWindows 1.0.2 documentation</title>
<link rel="stylesheet" type="text/css" href="../../_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="../../_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="../../_static/css/mbasic.css?v=957880af" />
<script src="../../_static/documentation_options.js?v=8d563738"></script>
<script src="../../_static/documentation_options.js?v=1ed6394b"></script>
<script src="../../_static/doctools.js?v=9a2dae69"></script>
<script src="../../_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -25,7 +25,7 @@
<li class="right" >
<a href="../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../index.html" accesskey="U">Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.security</a></li>
</ul>
@@ -1386,7 +1386,7 @@
<li class="right" >
<a href="../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../index.html" >Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.security</a></li>
</ul>
+4 -4
View File
@@ -4,12 +4,12 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>windows.syswow64 &#8212; PythonForWindows 1.0.0 documentation</title>
<title>windows.syswow64 &#8212; PythonForWindows 1.0.2 documentation</title>
<link rel="stylesheet" type="text/css" href="../../_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="../../_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="../../_static/css/mbasic.css?v=957880af" />
<script src="../../_static/documentation_options.js?v=8d563738"></script>
<script src="../../_static/documentation_options.js?v=1ed6394b"></script>
<script src="../../_static/doctools.js?v=9a2dae69"></script>
<script src="../../_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -25,7 +25,7 @@
<li class="right" >
<a href="../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../index.html" accesskey="U">Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.syswow64</a></li>
</ul>
@@ -432,7 +432,7 @@
<li class="right" >
<a href="../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../index.html" >Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.syswow64</a></li>
</ul>
+4 -4
View File
@@ -4,12 +4,12 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>windows.utils.pythonutils &#8212; PythonForWindows 1.0.0 documentation</title>
<title>windows.utils.pythonutils &#8212; PythonForWindows 1.0.2 documentation</title>
<link rel="stylesheet" type="text/css" href="../../../_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="../../../_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="../../../_static/css/mbasic.css?v=957880af" />
<script src="../../../_static/documentation_options.js?v=8d563738"></script>
<script src="../../../_static/documentation_options.js?v=1ed6394b"></script>
<script src="../../../_static/doctools.js?v=9a2dae69"></script>
<script src="../../../_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -25,7 +25,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" accesskey="U">Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.utils.pythonutils</a></li>
</ul>
@@ -186,7 +186,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" >Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.utils.pythonutils</a></li>
</ul>
+9 -9
View File
@@ -4,12 +4,12 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>windows.utils.winutils &#8212; PythonForWindows 1.0.0 documentation</title>
<title>windows.utils.winutils &#8212; PythonForWindows 1.0.2 documentation</title>
<link rel="stylesheet" type="text/css" href="../../../_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="../../../_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="../../../_static/css/mbasic.css?v=957880af" />
<script src="../../../_static/documentation_options.js?v=8d563738"></script>
<script src="../../../_static/documentation_options.js?v=1ed6394b"></script>
<script src="../../../_static/doctools.js?v=9a2dae69"></script>
<script src="../../../_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -25,7 +25,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" accesskey="U">Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.utils.winutils</a></li>
</ul>
@@ -620,11 +620,11 @@
<span class="k">def</span> <span class="nf">create_file</span><span class="p">(</span><span class="n">name</span><span class="p">,</span> <span class="n">access</span><span class="o">=</span><span class="n">gdef</span><span class="o">.</span><span class="n">GENERIC_READ</span><span class="p">,</span> <span class="n">share</span><span class="o">=</span><span class="n">gdef</span><span class="o">.</span><span class="n">FILE_SHARE_READ</span><span class="p">,</span> <span class="n">security</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="n">creation</span><span class="o">=</span><span class="n">gdef</span><span class="o">.</span><span class="n">OPEN_EXISTING</span><span class="p">,</span> <span class="n">flags</span><span class="o">=</span><span class="n">gdef</span><span class="o">.</span><span class="n">FILE_ATTRIBUTE_NORMAL</span><span class="p">):</span>
<span class="k">return</span> <span class="n">windows</span><span class="o">.</span><span class="n">winproxy</span><span class="o">.</span><span class="n">CreateFileW</span><span class="p">(</span><span class="n">name</span><span class="p">,</span> <span class="n">access</span><span class="p">,</span> <span class="n">share</span><span class="p">,</span> <span class="n">security</span><span class="p">,</span> <span class="n">creation</span><span class="p">,</span> <span class="n">flags</span><span class="p">,</span> <span class="mi">0</span><span class="p">)</span>
<span class="k">def</span> <span class="nf">mapfile</span><span class="p">(</span><span class="n">file</span><span class="p">):</span>
<span class="n">fhandle</span> <span class="o">=</span> <span class="n">get_handle_from_file</span><span class="p">(</span><span class="n">file</span><span class="p">)</span>
<span class="n">h</span> <span class="o">=</span> <span class="n">windows</span><span class="o">.</span><span class="n">winproxy</span><span class="o">.</span><span class="n">CreateFileMappingA</span><span class="p">(</span><span class="n">fhandle</span><span class="p">,</span> <span class="kc">None</span><span class="p">,</span> <span class="n">PAGE_READONLY</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="kc">None</span><span class="p">)</span>
<span class="n">addr</span> <span class="o">=</span> <span class="n">windows</span><span class="o">.</span><span class="n">winproxy</span><span class="o">.</span><span class="n">MapViewOfFile</span><span class="p">(</span><span class="n">h</span><span class="p">,</span> <span class="n">dwDesiredAccess</span><span class="o">=</span><span class="n">FILE_MAP_READ</span><span class="p">,</span> <span class="n">dwNumberOfBytesToMap</span><span class="o">=</span><span class="mi">0</span><span class="p">)</span>
<span class="k">return</span> <span class="n">addr</span>
<span class="c1">#def mapfile(file):</span>
<span class="c1"># fhandle = get_handle_from_file(file)</span>
<span class="c1"># h = windows.winproxy.CreateFileMappingA(fhandle, None, PAGE_READONLY, 0, 1, None)</span>
<span class="c1"># addr = windows.winproxy.MapViewOfFile(h, dwDesiredAccess=FILE_MAP_READ, dwNumberOfBytesToMap=1)</span>
<span class="c1"># return addr</span>
<span class="k">def</span> <span class="nf">decompress_buffer</span><span class="p">(</span><span class="n">buffer</span><span class="p">,</span> <span class="n">comptype</span><span class="o">=</span><span class="n">gdef</span><span class="o">.</span><span class="n">COMPRESSION_FORMAT_LZNT1</span><span class="p">,</span> <span class="n">uncompress_size</span><span class="o">=</span><span class="kc">None</span><span class="p">):</span>
<span class="k">if</span> <span class="n">uncompress_size</span> <span class="ow">is</span> <span class="kc">None</span><span class="p">:</span>
@@ -752,7 +752,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" >Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.utils.winutils</a></li>
</ul>
+4 -4
View File
@@ -4,12 +4,12 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>windows.winobject.apisetmap &#8212; PythonForWindows 1.0.0 documentation</title>
<title>windows.winobject.apisetmap &#8212; PythonForWindows 1.0.2 documentation</title>
<link rel="stylesheet" type="text/css" href="../../../_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="../../../_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="../../../_static/css/mbasic.css?v=957880af" />
<script src="../../../_static/documentation_options.js?v=8d563738"></script>
<script src="../../../_static/documentation_options.js?v=1ed6394b"></script>
<script src="../../../_static/doctools.js?v=9a2dae69"></script>
<script src="../../../_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -25,7 +25,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" accesskey="U">Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.winobject.apisetmap</a></li>
</ul>
@@ -264,7 +264,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" >Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.winobject.apisetmap</a></li>
</ul>
@@ -4,12 +4,12 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>windows.winobject.device_manager &#8212; PythonForWindows 1.0.0 documentation</title>
<title>windows.winobject.device_manager &#8212; PythonForWindows 1.0.2 documentation</title>
<link rel="stylesheet" type="text/css" href="../../../_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="../../../_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="../../../_static/css/mbasic.css?v=957880af" />
<script src="../../../_static/documentation_options.js?v=8d563738"></script>
<script src="../../../_static/documentation_options.js?v=1ed6394b"></script>
<script src="../../../_static/doctools.js?v=9a2dae69"></script>
<script src="../../../_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -25,7 +25,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" accesskey="U">Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.winobject.device_manager</a></li>
</ul>
@@ -638,7 +638,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" >Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.winobject.device_manager</a></li>
</ul>
+5 -4
View File
@@ -4,12 +4,12 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>windows.winobject.event_log &#8212; PythonForWindows 1.0.0 documentation</title>
<title>windows.winobject.event_log &#8212; PythonForWindows 1.0.2 documentation</title>
<link rel="stylesheet" type="text/css" href="../../../_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="../../../_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="../../../_static/css/mbasic.css?v=957880af" />
<script src="../../../_static/documentation_options.js?v=8d563738"></script>
<script src="../../../_static/documentation_options.js?v=1ed6394b"></script>
<script src="../../../_static/doctools.js?v=9a2dae69"></script>
<script src="../../../_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -25,7 +25,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" accesskey="U">Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.winobject.event_log</a></li>
</ul>
@@ -437,6 +437,7 @@
<span class="n">gdef</span><span class="o">.</span><span class="n">EvtVarTypeUInt16</span> <span class="o">+</span> <span class="n">gdef</span><span class="o">.</span><span class="n">EVT_VARIANT_TYPE_ARRAY</span> <span class="p">:</span> <span class="s2">&quot;UInt16Arr&quot;</span><span class="p">,</span>
<span class="n">gdef</span><span class="o">.</span><span class="n">EvtVarTypeUInt32</span> <span class="o">+</span> <span class="n">gdef</span><span class="o">.</span><span class="n">EVT_VARIANT_TYPE_ARRAY</span> <span class="p">:</span> <span class="s2">&quot;UInt32Arr&quot;</span><span class="p">,</span>
<span class="n">gdef</span><span class="o">.</span><span class="n">EvtVarTypeUInt64</span> <span class="o">+</span> <span class="n">gdef</span><span class="o">.</span><span class="n">EVT_VARIANT_TYPE_ARRAY</span> <span class="p">:</span> <span class="s2">&quot;UInt64Arr&quot;</span><span class="p">,</span>
<span class="n">gdef</span><span class="o">.</span><span class="n">EvtVarTypeHexInt64</span> <span class="o">+</span> <span class="n">gdef</span><span class="o">.</span><span class="n">EVT_VARIANT_TYPE_ARRAY</span> <span class="p">:</span> <span class="s2">&quot;UInt64Arr&quot;</span><span class="p">,</span>
<span class="p">}</span>
<span class="n">NoneValue</span> <span class="o">=</span> <span class="kc">None</span>
@@ -1278,7 +1279,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" >Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.winobject.event_log</a></li>
</ul>
@@ -4,12 +4,12 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>windows.winobject.event_trace &#8212; PythonForWindows 1.0.0 documentation</title>
<title>windows.winobject.event_trace &#8212; PythonForWindows 1.0.2 documentation</title>
<link rel="stylesheet" type="text/css" href="../../../_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="../../../_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="../../../_static/css/mbasic.css?v=957880af" />
<script src="../../../_static/documentation_options.js?v=8d563738"></script>
<script src="../../../_static/documentation_options.js?v=1ed6394b"></script>
<script src="../../../_static/doctools.js?v=9a2dae69"></script>
<script src="../../../_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -25,7 +25,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" accesskey="U">Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.winobject.event_trace</a></li>
</ul>
@@ -556,7 +556,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" >Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.winobject.event_trace</a></li>
</ul>
+4 -4
View File
@@ -4,12 +4,12 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>windows.winobject.exception &#8212; PythonForWindows 1.0.0 documentation</title>
<title>windows.winobject.exception &#8212; PythonForWindows 1.0.2 documentation</title>
<link rel="stylesheet" type="text/css" href="../../../_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="../../../_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="../../../_static/css/mbasic.css?v=957880af" />
<script src="../../../_static/documentation_options.js?v=8d563738"></script>
<script src="../../../_static/documentation_options.js?v=1ed6394b"></script>
<script src="../../../_static/doctools.js?v=9a2dae69"></script>
<script src="../../../_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -25,7 +25,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" accesskey="U">Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.winobject.exception</a></li>
</ul>
@@ -485,7 +485,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" >Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.winobject.exception</a></li>
</ul>
+4 -4
View File
@@ -4,12 +4,12 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>windows.winobject.handle &#8212; PythonForWindows 1.0.0 documentation</title>
<title>windows.winobject.handle &#8212; PythonForWindows 1.0.2 documentation</title>
<link rel="stylesheet" type="text/css" href="../../../_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="../../../_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="../../../_static/css/mbasic.css?v=957880af" />
<script src="../../../_static/documentation_options.js?v=8d563738"></script>
<script src="../../../_static/documentation_options.js?v=1ed6394b"></script>
<script src="../../../_static/doctools.js?v=9a2dae69"></script>
<script src="../../../_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -25,7 +25,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" accesskey="U">Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.winobject.handle</a></li>
</ul>
@@ -267,7 +267,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" >Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.winobject.handle</a></li>
</ul>
+4 -4
View File
@@ -4,12 +4,12 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>windows.winobject.network &#8212; PythonForWindows 1.0.0 documentation</title>
<title>windows.winobject.network &#8212; PythonForWindows 1.0.2 documentation</title>
<link rel="stylesheet" type="text/css" href="../../../_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="../../../_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="../../../_static/css/mbasic.css?v=957880af" />
<script src="../../../_static/documentation_options.js?v=8d563738"></script>
<script src="../../../_static/documentation_options.js?v=1ed6394b"></script>
<script src="../../../_static/doctools.js?v=9a2dae69"></script>
<script src="../../../_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -25,7 +25,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" accesskey="U">Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.winobject.network</a></li>
</ul>
@@ -533,7 +533,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" >Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.winobject.network</a></li>
</ul>
@@ -4,12 +4,12 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>windows.winobject.object_manager &#8212; PythonForWindows 1.0.0 documentation</title>
<title>windows.winobject.object_manager &#8212; PythonForWindows 1.0.2 documentation</title>
<link rel="stylesheet" type="text/css" href="../../../_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="../../../_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="../../../_static/css/mbasic.css?v=957880af" />
<script src="../../../_static/documentation_options.js?v=8d563738"></script>
<script src="../../../_static/documentation_options.js?v=1ed6394b"></script>
<script src="../../../_static/doctools.js?v=9a2dae69"></script>
<script src="../../../_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -25,7 +25,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" accesskey="U">Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.winobject.object_manager</a></li>
</ul>
@@ -317,7 +317,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" >Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.winobject.object_manager</a></li>
</ul>
+4 -4
View File
@@ -4,12 +4,12 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>windows.winobject.process &#8212; PythonForWindows 1.0.0 documentation</title>
<title>windows.winobject.process &#8212; PythonForWindows 1.0.2 documentation</title>
<link rel="stylesheet" type="text/css" href="../../../_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="../../../_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="../../../_static/css/mbasic.css?v=957880af" />
<script src="../../../_static/documentation_options.js?v=8d563738"></script>
<script src="../../../_static/documentation_options.js?v=1ed6394b"></script>
<script src="../../../_static/doctools.js?v=9a2dae69"></script>
<script src="../../../_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -25,7 +25,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" accesskey="U">Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.winobject.process</a></li>
</ul>
@@ -1727,7 +1727,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" >Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.winobject.process</a></li>
</ul>
+4 -4
View File
@@ -4,12 +4,12 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>windows.winobject.registry &#8212; PythonForWindows 1.0.0 documentation</title>
<title>windows.winobject.registry &#8212; PythonForWindows 1.0.2 documentation</title>
<link rel="stylesheet" type="text/css" href="../../../_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="../../../_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="../../../_static/css/mbasic.css?v=957880af" />
<script src="../../../_static/documentation_options.js?v=8d563738"></script>
<script src="../../../_static/documentation_options.js?v=1ed6394b"></script>
<script src="../../../_static/doctools.js?v=9a2dae69"></script>
<script src="../../../_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -25,7 +25,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" accesskey="U">Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.winobject.registry</a></li>
</ul>
@@ -610,7 +610,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" >Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.winobject.registry</a></li>
</ul>
+20 -6
View File
@@ -4,12 +4,12 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>windows.winobject.service &#8212; PythonForWindows 1.0.0 documentation</title>
<title>windows.winobject.service &#8212; PythonForWindows 1.0.3 documentation</title>
<link rel="stylesheet" type="text/css" href="../../../_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="../../../_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="../../../_static/css/mbasic.css?v=957880af" />
<script src="../../../_static/documentation_options.js?v=8d563738"></script>
<script src="../../../_static/documentation_options.js?v=baaebd52"></script>
<script src="../../../_static/doctools.js?v=9a2dae69"></script>
<script src="../../../_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -25,7 +25,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.3 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" accesskey="U">Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.winobject.service</a></li>
</ul>
@@ -193,7 +193,13 @@
<span class="k">def</span> <span class="nf">enumerate_services</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
<span class="k">return</span> <span class="nb">list</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_enumerate_services_generator</span><span class="p">())</span>
<span class="k">def</span> <span class="nf">create</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">name</span><span class="p">,</span> <span class="n">description</span><span class="p">,</span> <span class="n">access</span><span class="p">,</span> <span class="nb">type</span><span class="p">,</span> <span class="n">start</span><span class="p">,</span> <span class="n">path</span><span class="p">):</span>
<div class="viewcode-block" id="ServiceManager.create">
<a class="viewcode-back" href="../../../service.html#windows.winobject.service.ServiceManager.create">[docs]</a>
<span class="k">def</span> <span class="nf">create</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">name</span><span class="p">,</span> <span class="n">description</span><span class="p">,</span> <span class="n">access</span><span class="p">,</span> <span class="nb">type</span><span class="p">,</span> <span class="n">start</span><span class="p">,</span> <span class="n">path</span><span class="p">,</span> <span class="n">user</span><span class="o">=</span><span class="kc">None</span><span class="p">):</span>
<span class="w"> </span><span class="sd">&quot;&quot;&quot;Create a new service</span>
<span class="sd"> :return: :class:`Service` -- The newly created service</span>
<span class="sd"> &quot;&quot;&quot;</span>
<span class="n">newservice_handle</span> <span class="o">=</span> <span class="n">windows</span><span class="o">.</span><span class="n">winproxy</span><span class="o">.</span><span class="n">CreateServiceW</span><span class="p">(</span>
<span class="bp">self</span><span class="o">.</span><span class="n">handle</span><span class="p">,</span> <span class="c1"># hSCManager</span>
<span class="n">name</span><span class="p">,</span> <span class="c1"># lpServiceName</span>
@@ -206,10 +212,11 @@
<span class="kc">None</span><span class="p">,</span> <span class="c1"># lpLoadOrderGroup</span>
<span class="kc">None</span><span class="p">,</span> <span class="c1"># lpdwTagId</span>
<span class="kc">None</span><span class="p">,</span> <span class="c1"># lpDependencies</span>
<span class="kc">None</span><span class="p">,</span> <span class="c1"># lpServiceStartName</span>
<span class="n">user</span><span class="p">,</span> <span class="c1"># lpServiceStartName</span>
<span class="kc">None</span><span class="p">)</span> <span class="c1"># lpPassword</span>
<span class="k">return</span> <span class="n">Service</span><span class="p">(</span><span class="n">handle</span><span class="o">=</span><span class="n">newservice_handle</span><span class="p">,</span> <span class="n">name</span><span class="o">=</span><span class="n">name</span><span class="p">,</span> <span class="n">description</span><span class="o">=</span><span class="n">description</span><span class="p">)</span></div>
</div>
@@ -291,6 +298,13 @@
<span class="k">return</span> <span class="n">status</span></div>
<div class="viewcode-block" id="Service.delete">
<a class="viewcode-back" href="../../../service.html#windows.winobject.service.Service.delete">[docs]</a>
<span class="k">def</span> <span class="nf">delete</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
<span class="w"> </span><span class="sd">&quot;&quot;&quot;Delete the service&quot;&quot;&quot;</span>
<span class="k">return</span> <span class="n">windows</span><span class="o">.</span><span class="n">winproxy</span><span class="o">.</span><span class="n">DeleteService</span><span class="p">(</span><span class="bp">self</span><span class="p">)</span></div>
<span class="k">def</span> <span class="fm">__repr__</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
<span class="k">return</span> <span class="n">urepr_encode</span><span class="p">(</span><span class="sa">u</span><span class="s2">&quot;&quot;&quot;&lt;</span><span class="si">{0}</span><span class="s2"> &quot;</span><span class="si">{1}</span><span class="s2">&quot; </span><span class="si">{2!r}</span><span class="s2">&gt;&quot;&quot;&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="nb">type</span><span class="p">(</span><span class="bp">self</span><span class="p">)</span><span class="o">.</span><span class="vm">__name__</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">name</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">status</span><span class="o">.</span><span class="n">state</span><span class="p">))</span>
@@ -328,7 +342,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.3 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" >Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.winobject.service</a></li>
</ul>
+17 -5
View File
@@ -4,12 +4,12 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>windows.winobject.system &#8212; PythonForWindows 1.0.0 documentation</title>
<title>windows.winobject.system &#8212; PythonForWindows 1.0.3 documentation</title>
<link rel="stylesheet" type="text/css" href="../../../_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="../../../_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="../../../_static/css/mbasic.css?v=957880af" />
<script src="../../../_static/documentation_options.js?v=8d563738"></script>
<script src="../../../_static/documentation_options.js?v=baaebd52"></script>
<script src="../../../_static/doctools.js?v=9a2dae69"></script>
<script src="../../../_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -25,7 +25,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.3 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" accesskey="U">Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.winobject.system</a></li>
</ul>
@@ -506,8 +506,9 @@
<span class="n">bufstr</span> <span class="o">=</span> <span class="n">ctypes</span><span class="o">.</span><span class="n">cast</span><span class="p">(</span><span class="n">bufptr</span><span class="p">,</span> <span class="n">gdef</span><span class="o">.</span><span class="n">LPWSTR</span><span class="p">)</span>
<span class="k">return</span> <span class="n">bufstr</span><span class="o">.</span><span class="n">value</span>
<span class="nd">@utils</span><span class="o">.</span><span class="n">fixedpropety</span>
<span class="nd">@utils</span><span class="o">.</span><span class="n">fixedproperty</span>
<span class="k">def</span> <span class="nf">build_number</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
<span class="w"> </span><span class="sd">&quot;&quot;&quot;Return the `CurrentBuildNumber`&quot;&quot;&quot;</span>
<span class="c1"># Will only work on Windows 10 ?</span>
<span class="n">build</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">kuser_shared_data</span><span class="o">.</span><span class="n">NtBuildNumber</span>
<span class="k">if</span> <span class="n">build</span><span class="p">:</span> <span class="c1"># 0 before windows 10</span>
@@ -516,6 +517,17 @@
<span class="n">key</span> <span class="o">=</span> <span class="n">windows</span><span class="o">.</span><span class="n">system</span><span class="o">.</span><span class="n">registry</span><span class="p">(</span><span class="sa">r</span><span class="s2">&quot;HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion&quot;</span><span class="p">)</span>
<span class="k">return</span> <span class="nb">int</span><span class="p">(</span><span class="n">key</span><span class="p">[</span><span class="s2">&quot;CurrentBuildNumber&quot;</span><span class="p">]</span><span class="o">.</span><span class="n">value</span><span class="p">)</span>
<span class="nd">@utils</span><span class="o">.</span><span class="n">fixedproperty</span>
<span class="k">def</span> <span class="nf">display_version</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
<span class="w"> </span><span class="sd">&quot;&quot;&quot;Return the `DisplayVersion` (22H2, 23H2, ...) is it exists, else None&quot;&quot;&quot;</span>
<span class="n">key</span> <span class="o">=</span> <span class="n">windows</span><span class="o">.</span><span class="n">system</span><span class="o">.</span><span class="n">registry</span><span class="p">(</span><span class="sa">r</span><span class="s2">&quot;HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion&quot;</span><span class="p">)</span>
<span class="k">try</span><span class="p">:</span>
<span class="k">return</span> <span class="n">key</span><span class="p">[</span><span class="s2">&quot;DisplayVersion&quot;</span><span class="p">]</span><span class="o">.</span><span class="n">value</span>
<span class="k">except</span> <span class="ne">WindowsError</span> <span class="k">as</span> <span class="n">e</span><span class="p">:</span>
<span class="k">if</span> <span class="ow">not</span> <span class="n">e</span><span class="o">.</span><span class="n">winerror</span> <span class="o">==</span> <span class="n">gdef</span><span class="o">.</span><span class="n">ERROR_FILE_NOT_FOUND</span><span class="p">:</span>
<span class="k">raise</span>
<span class="k">return</span> <span class="kc">None</span>
<span class="nd">@utils</span><span class="o">.</span><span class="n">fixedproperty</span>
<span class="k">def</span> <span class="nf">versionstr</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
<span class="c1"># Best effort. use get_file_version if registry code fails</span>
@@ -651,7 +663,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.3 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" >Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.winobject.system</a></li>
</ul>
@@ -4,12 +4,12 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>windows.winobject.system_module &#8212; PythonForWindows 1.0.0 documentation</title>
<title>windows.winobject.system_module &#8212; PythonForWindows 1.0.2 documentation</title>
<link rel="stylesheet" type="text/css" href="../../../_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="../../../_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="../../../_static/css/mbasic.css?v=957880af" />
<script src="../../../_static/documentation_options.js?v=8d563738"></script>
<script src="../../../_static/documentation_options.js?v=1ed6394b"></script>
<script src="../../../_static/doctools.js?v=9a2dae69"></script>
<script src="../../../_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -25,7 +25,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" accesskey="U">Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.winobject.system_module</a></li>
</ul>
@@ -130,7 +130,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" >Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.winobject.system_module</a></li>
</ul>
@@ -4,12 +4,12 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>windows.winobject.task_scheduler &#8212; PythonForWindows 1.0.0 documentation</title>
<title>windows.winobject.task_scheduler &#8212; PythonForWindows 1.0.2 documentation</title>
<link rel="stylesheet" type="text/css" href="../../../_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="../../../_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="../../../_static/css/mbasic.css?v=957880af" />
<script src="../../../_static/documentation_options.js?v=8d563738"></script>
<script src="../../../_static/documentation_options.js?v=1ed6394b"></script>
<script src="../../../_static/doctools.js?v=9a2dae69"></script>
<script src="../../../_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -25,7 +25,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" accesskey="U">Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.winobject.task_scheduler</a></li>
</ul>
@@ -625,7 +625,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" >Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.winobject.task_scheduler</a></li>
</ul>
+4 -4
View File
@@ -4,12 +4,12 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>windows.winobject.token &#8212; PythonForWindows 1.0.0 documentation</title>
<title>windows.winobject.token &#8212; PythonForWindows 1.0.2 documentation</title>
<link rel="stylesheet" type="text/css" href="../../../_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="../../../_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="../../../_static/css/mbasic.css?v=957880af" />
<script src="../../../_static/documentation_options.js?v=8d563738"></script>
<script src="../../../_static/documentation_options.js?v=1ed6394b"></script>
<script src="../../../_static/doctools.js?v=9a2dae69"></script>
<script src="../../../_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -25,7 +25,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" accesskey="U">Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.winobject.token</a></li>
</ul>
@@ -739,7 +739,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" >Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.winobject.token</a></li>
</ul>
+4 -4
View File
@@ -4,12 +4,12 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>windows.winobject.volume &#8212; PythonForWindows 1.0.0 documentation</title>
<title>windows.winobject.volume &#8212; PythonForWindows 1.0.2 documentation</title>
<link rel="stylesheet" type="text/css" href="../../../_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="../../../_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="../../../_static/css/mbasic.css?v=957880af" />
<script src="../../../_static/documentation_options.js?v=8d563738"></script>
<script src="../../../_static/documentation_options.js?v=1ed6394b"></script>
<script src="../../../_static/doctools.js?v=9a2dae69"></script>
<script src="../../../_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -25,7 +25,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" accesskey="U">Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.winobject.volume</a></li>
</ul>
@@ -165,7 +165,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" >Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.winobject.volume</a></li>
</ul>
+4 -4
View File
@@ -4,12 +4,12 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>windows.winobject.wmi &#8212; PythonForWindows 1.0.0 documentation</title>
<title>windows.winobject.wmi &#8212; PythonForWindows 1.0.2 documentation</title>
<link rel="stylesheet" type="text/css" href="../../../_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="../../../_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="../../../_static/css/mbasic.css?v=957880af" />
<script src="../../../_static/documentation_options.js?v=8d563738"></script>
<script src="../../../_static/documentation_options.js?v=1ed6394b"></script>
<script src="../../../_static/doctools.js?v=9a2dae69"></script>
<script src="../../../_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -25,7 +25,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" accesskey="U">Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.winobject.wmi</a></li>
</ul>
@@ -676,7 +676,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" >Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.winobject.wmi</a></li>
</ul>
+4 -4
View File
@@ -4,12 +4,12 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>windows.winproxy.apiproxy &#8212; PythonForWindows 1.0.0 documentation</title>
<title>windows.winproxy.apiproxy &#8212; PythonForWindows 1.0.2 documentation</title>
<link rel="stylesheet" type="text/css" href="../../../_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="../../../_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="../../../_static/css/mbasic.css?v=957880af" />
<script src="../../../_static/documentation_options.js?v=8d563738"></script>
<script src="../../../_static/documentation_options.js?v=1ed6394b"></script>
<script src="../../../_static/doctools.js?v=9a2dae69"></script>
<script src="../../../_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -25,7 +25,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" accesskey="U">Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.winproxy.apiproxy</a></li>
</ul>
@@ -196,7 +196,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" >Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.winproxy.apiproxy</a></li>
</ul>
+4 -4
View File
@@ -4,12 +4,12 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>windows.winproxy.error &#8212; PythonForWindows 1.0.0 documentation</title>
<title>windows.winproxy.error &#8212; PythonForWindows 1.0.2 documentation</title>
<link rel="stylesheet" type="text/css" href="../../../_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="../../../_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="../../../_static/css/mbasic.css?v=957880af" />
<script src="../../../_static/documentation_options.js?v=8d563738"></script>
<script src="../../../_static/documentation_options.js?v=1ed6394b"></script>
<script src="../../../_static/doctools.js?v=9a2dae69"></script>
<script src="../../../_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -25,7 +25,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" accesskey="U">Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.winproxy.error</a></li>
</ul>
@@ -150,7 +150,7 @@
<li class="right" >
<a href="../../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../../index.html" >Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.winproxy.error</a></li>
</ul>
+4 -4
View File
@@ -4,12 +4,12 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>windows.wintrust &#8212; PythonForWindows 1.0.0 documentation</title>
<title>windows.wintrust &#8212; PythonForWindows 1.0.2 documentation</title>
<link rel="stylesheet" type="text/css" href="../../_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="../../_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="../../_static/css/mbasic.css?v=957880af" />
<script src="../../_static/documentation_options.js?v=8d563738"></script>
<script src="../../_static/documentation_options.js?v=1ed6394b"></script>
<script src="../../_static/doctools.js?v=9a2dae69"></script>
<script src="../../_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -25,7 +25,7 @@
<li class="right" >
<a href="../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../index.html" accesskey="U">Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.wintrust</a></li>
</ul>
@@ -268,7 +268,7 @@
<li class="right" >
<a href="../../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="../../index.html">PythonForWindows 1.0.0 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../index.html">PythonForWindows 1.0.2 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../index.html" >Module code</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">windows.wintrust</a></li>
</ul>
+10 -10
View File
@@ -2,16 +2,6 @@
Interfaces
----------
.. class:: IActivationStageInfo
.. method:: QueryInterface
.. method:: AddRef
.. method:: Release
.. method:: SetStageAndIndex
.. method:: GetStage
.. method:: GetIndex
.. class:: ICallFactory
.. method:: QueryInterface
@@ -722,6 +712,16 @@ Interfaces
.. method:: GetReturnActivationProperties
.. class:: IActivationStageInfo
.. method:: QueryInterface
.. method:: AddRef
.. method:: Release
.. method:: SetStageAndIndex
.. method:: GetStage
.. method:: GetIndex
.. class:: IClassClassicInfo
.. method:: QueryInterface
+10
View File
@@ -103,7 +103,17 @@ Output
.. literalinclude:: samples_output\service_service_demo.txt
Windows Service in Python
'''''''''''''''''''''''''
This script can register itself as a service and act on `stop` request.
It also can delete its own service.
.. literalinclude:: ..\..\samples\service\python_service.py
Output
.. literalinclude:: samples_output\service_python_service.txt
.. _sample_network_exploration:
+18
View File
@@ -488,6 +488,12 @@ Functions
.. function:: LockFileEx(hFile, dwFlags, dwReserved, nNumberOfBytesToLockLow, nNumberOfBytesToLockHigh, lpOverlapped)
.. function:: SetFileInformationByHandle(hFile, FileInformationClass, lpFileInformation, dwBufferSize)
.. function:: GetFileInformationByHandle(hFile, lpFileInformation)
.. function:: GetFileInformationByHandleEx(hFile, FileInformationClass, lpFileInformation, dwBufferSize)
.. function:: HeapAlloc(hHeap, dwFlags, dwBytes)
.. function:: InternetCheckConnectionA(lpszUrl, dwFlags, dwReserved)
@@ -916,6 +922,18 @@ Functions
.. function:: StartServiceCtrlDispatcherW(lpServiceStartTable)
.. function:: RegisterServiceCtrlHandlerExA(lpServiceName, lpHandlerProc, lpContext)
.. function:: RegisterServiceCtrlHandlerExW(lpServiceName, lpHandlerProc, lpContext)
.. function:: RegisterServiceCtrlHandlerA(lpServiceName, lpHandlerProc)
.. function:: RegisterServiceCtrlHandlerW(lpServiceName, lpHandlerProc)
.. function:: SetServiceStatus(hServiceStatus, lpServiceStatus)
.. function:: SetServiceBits(hServiceStatus, dwServiceBits, bSetBitsOn, bUpdateImmediately)
.. function:: SetupDiClassNameFromGuidA(ClassGuid, ClassName, ClassNameSize, RequiredSize)
.. function:: SetupDiClassNameFromGuidW(ClassGuid, ClassName, ClassNameSize, RequiredSize)
+161
View File
@@ -511,6 +511,10 @@ Simple types
.. autoclass:: PDNS_QUERY_COMPLETION_ROUTINE
.. autoclass:: LPHANDLER_FUNCTION
.. autoclass:: LPHANDLER_FUNCTION_EX
.. autoclass:: LPCONTEXT
.. autoclass:: HCERTSTORE
@@ -21089,6 +21093,71 @@ _FILE_GET_EA_INFORMATION
:class:`CHAR`
_BY_HANDLE_FILE_INFORMATION
'''''''''''''''''''''''''''
.. class:: BY_HANDLE_FILE_INFORMATION
Alias for :class:`_BY_HANDLE_FILE_INFORMATION`
.. class:: LPBY_HANDLE_FILE_INFORMATION
Pointer to :class:`_BY_HANDLE_FILE_INFORMATION`
.. class:: PBY_HANDLE_FILE_INFORMATION
Pointer to :class:`_BY_HANDLE_FILE_INFORMATION`
.. class:: _BY_HANDLE_FILE_INFORMATION
.. attribute:: dwFileAttributes
:class:`DWORD`
.. attribute:: ftCreationTime
:class:`FILETIME`
.. attribute:: ftLastAccessTime
:class:`FILETIME`
.. attribute:: ftLastWriteTime
:class:`FILETIME`
.. attribute:: dwVolumeSerialNumber
:class:`DWORD`
.. attribute:: nFileSizeHigh
:class:`DWORD`
.. attribute:: nFileSizeLow
:class:`DWORD`
.. attribute:: nNumberOfLinks
:class:`DWORD`
.. attribute:: nFileIndexHigh
:class:`DWORD`
.. attribute:: nFileIndexLow
:class:`DWORD`
tagVS_FIXEDFILEINFO
'''''''''''''''''''
.. class:: VS_FIXEDFILEINFO
@@ -32567,6 +32636,98 @@ _FILE_INFORMATION_CLASS
.. attribute:: FileMaximumInformation(67)
_FILE_INFO_BY_HANDLE_CLASS
''''''''''''''''''''''''''
.. class:: FILE_INFO_BY_HANDLE_CLASS
Alias for :class:`_FILE_INFO_BY_HANDLE_CLASS`
.. class:: PFILE_INFO_BY_HANDLE_CLASS
Pointer to :class:`_FILE_INFO_BY_HANDLE_CLASS`
.. class:: _FILE_INFO_BY_HANDLE_CLASS
.. attribute:: FileBasicInfo(0)
.. attribute:: FileStandardInfo(1)
.. attribute:: FileNameInfo(2)
.. attribute:: FileRenameInfo(3)
.. attribute:: FileDispositionInfo(4)
.. attribute:: FileAllocationInfo(5)
.. attribute:: FileEndOfFileInfo(6)
.. attribute:: FileStreamInfo(7)
.. attribute:: FileCompressionInfo(8)
.. attribute:: FileAttributeTagInfo(9)
.. attribute:: FileIdBothDirectoryInfo(10)
.. attribute:: FileIdBothDirectoryRestartInfo(11)
.. attribute:: FileIoPriorityHintInfo(12)
.. attribute:: FileRemoteProtocolInfo(13)
.. attribute:: FileFullDirectoryInfo(14)
.. attribute:: FileFullDirectoryRestartInfo(15)
.. attribute:: FileStorageInfo(16)
.. attribute:: FileAlignmentInfo(17)
.. attribute:: FileIdInfo(18)
.. attribute:: FileIdExtdDirectoryInfo(19)
.. attribute:: FileIdExtdDirectoryRestartInfo(20)
.. attribute:: FileDispositionInfoEx(21)
.. attribute:: FileRenameInfoEx(22)
.. attribute:: FileCaseSensitiveInfo(23)
.. attribute:: FileNormalizedNameInfo(24)
.. attribute:: MaximumFileInfoByHandleClass(25)
_IO_PRIORITY_HINT
'''''''''''''''''
.. class:: IO_PRIORITY_HINT
+1 -1
View File
@@ -1,5 +1,5 @@
const DOCUMENTATION_OPTIONS = {
VERSION: '1.0.1',
VERSION: '1.0.3',
LANGUAGE: 'en',
COLLAPSE_INDEX: false,
BUILDER: 'html',
+4 -4
View File
@@ -5,12 +5,12 @@
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="viewport" content="width=device-width, initial-scale=1" />
<title>12. windows.alpc Advanced Local Procedure Call &#8212; PythonForWindows 1.0.1 documentation</title>
<title>12. windows.alpc Advanced Local Procedure Call &#8212; PythonForWindows 1.0.3 documentation</title>
<link rel="stylesheet" type="text/css" href="_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="_static/css/mbasic.css?v=957880af" />
<script src="_static/documentation_options.js?v=292eb321"></script>
<script src="_static/documentation_options.js?v=baaebd52"></script>
<script src="_static/doctools.js?v=9a2dae69"></script>
<script src="_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -34,7 +34,7 @@
<li class="right" >
<a href="crypto.html" title="11. windows.crypto CryptoAPI"
accesskey="P">previous</a> |</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.1 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.3 documentation</a> &#187;</li>
<li class="nav-item nav-item-this"><a href=""><span class="section-number">12. </span><code class="docutils literal notranslate"><span class="pre">windows.alpc</span></code> Advanced Local Procedure Call</a></li>
</ul>
</div>
@@ -544,7 +544,7 @@ ALPC messages over an ALPC port and the classes representing these messages.</p>
<li class="right" >
<a href="crypto.html" title="11. windows.crypto CryptoAPI"
>previous</a> |</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.1 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.3 documentation</a> &#187;</li>
<li class="nav-item nav-item-this"><a href=""><span class="section-number">12. </span><code class="docutils literal notranslate"><span class="pre">windows.alpc</span></code> Advanced Local Procedure Call</a></li>
</ul>
</div>
+4 -4
View File
@@ -5,12 +5,12 @@
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="viewport" content="width=device-width, initial-scale=1" />
<title>10. windows.com - Component Object Model &#8212; PythonForWindows 1.0.1 documentation</title>
<title>10. windows.com - Component Object Model &#8212; PythonForWindows 1.0.3 documentation</title>
<link rel="stylesheet" type="text/css" href="_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="_static/css/mbasic.css?v=957880af" />
<script src="_static/documentation_options.js?v=292eb321"></script>
<script src="_static/documentation_options.js?v=baaebd52"></script>
<script src="_static/doctools.js?v=9a2dae69"></script>
<script src="_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -34,7 +34,7 @@
<li class="right" >
<a href="debug.html" title="9. windows.debug Debugging"
accesskey="P">previous</a> |</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.1 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.3 documentation</a> &#187;</li>
<li class="nav-item nav-item-this"><a href=""><span class="section-number">10. </span><code class="xref py py-mod docutils literal notranslate"><span class="pre">windows.com</span></code> - Component Object Model</a></li>
</ul>
</div>
@@ -204,7 +204,7 @@ You can then use the instance to call whatever method you need.</p>
<li class="right" >
<a href="debug.html" title="9. windows.debug Debugging"
>previous</a> |</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.1 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.3 documentation</a> &#187;</li>
<li class="nav-item nav-item-this"><a href=""><span class="section-number">10. </span><code class="xref py py-mod docutils literal notranslate"><span class="pre">windows.com</span></code> - Component Object Model</a></li>
</ul>
</div>
+4 -4
View File
@@ -5,12 +5,12 @@
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="viewport" content="width=device-width, initial-scale=1" />
<title>11. windows.crypto CryptoAPI &#8212; PythonForWindows 1.0.1 documentation</title>
<title>11. windows.crypto CryptoAPI &#8212; PythonForWindows 1.0.3 documentation</title>
<link rel="stylesheet" type="text/css" href="_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="_static/css/mbasic.css?v=957880af" />
<script src="_static/documentation_options.js?v=292eb321"></script>
<script src="_static/documentation_options.js?v=baaebd52"></script>
<script src="_static/doctools.js?v=9a2dae69"></script>
<script src="_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -34,7 +34,7 @@
<li class="right" >
<a href="com.html" title="10. windows.com - Component Object Model"
accesskey="P">previous</a> |</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.1 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.3 documentation</a> &#187;</li>
<li class="nav-item nav-item-this"><a href=""><span class="section-number">11. </span><code class="docutils literal notranslate"><span class="pre">windows.crypto</span></code> CryptoAPI</a></li>
</ul>
</div>
@@ -774,7 +774,7 @@ See <a class="reference external" href="https://msdn.microsoft.com/en-us/library
<li class="right" >
<a href="com.html" title="10. windows.com - Component Object Model"
>previous</a> |</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.1 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.3 documentation</a> &#187;</li>
<li class="nav-item nav-item-this"><a href=""><span class="section-number">11. </span><code class="docutils literal notranslate"><span class="pre">windows.crypto</span></code> CryptoAPI</a></li>
</ul>
</div>
+4 -4
View File
@@ -5,12 +5,12 @@
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="viewport" content="width=device-width, initial-scale=1" />
<title>9. windows.debug Debugging &#8212; PythonForWindows 1.0.1 documentation</title>
<title>9. windows.debug Debugging &#8212; PythonForWindows 1.0.3 documentation</title>
<link rel="stylesheet" type="text/css" href="_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="_static/css/mbasic.css?v=957880af" />
<script src="_static/documentation_options.js?v=292eb321"></script>
<script src="_static/documentation_options.js?v=baaebd52"></script>
<script src="_static/doctools.js?v=9a2dae69"></script>
<script src="_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -34,7 +34,7 @@
<li class="right" >
<a href="wintrust.html" title="8. windows.wintrust Checking signature"
accesskey="P">previous</a> |</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.1 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.3 documentation</a> &#187;</li>
<li class="nav-item nav-item-this"><a href=""><span class="section-number">9. </span><code class="xref py py-mod docutils literal notranslate"><span class="pre">windows.debug</span></code> Debugging</a></li>
</ul>
</div>
@@ -1404,7 +1404,7 @@ If the symbol include a displacement, it is not taken into account</p>
<li class="right" >
<a href="wintrust.html" title="8. windows.wintrust Checking signature"
>previous</a> |</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.1 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.3 documentation</a> &#187;</li>
<li class="nav-item nav-item-this"><a href=""><span class="section-number">9. </span><code class="xref py py-mod docutils literal notranslate"><span class="pre">windows.debug</span></code> Debugging</a></li>
</ul>
</div>
+4 -4
View File
@@ -5,12 +5,12 @@
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="viewport" content="width=device-width, initial-scale=1" />
<title>2.14. Device Manager &#8212; PythonForWindows 1.0.1 documentation</title>
<title>2.14. Device Manager &#8212; PythonForWindows 1.0.3 documentation</title>
<link rel="stylesheet" type="text/css" href="_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="_static/css/mbasic.css?v=957880af" />
<script src="_static/documentation_options.js?v=292eb321"></script>
<script src="_static/documentation_options.js?v=baaebd52"></script>
<script src="_static/doctools.js?v=9a2dae69"></script>
<script src="_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -34,7 +34,7 @@
<li class="right" >
<a href="object_manager.html" title="2.13. Object Manager Kernel objects"
accesskey="P">previous</a> |</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.1 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.3 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="winobject.html" accesskey="U"><span class="section-number">2. </span>The <code class="xref py py-mod docutils literal notranslate"><span class="pre">windows</span></code> objects</a> &#187;</li>
<li class="nav-item nav-item-this"><a href=""><span class="section-number">2.14. </span>Device Manager</a></li>
</ul>
@@ -964,7 +964,7 @@ This class is a base class, all resources returned by <a class="reference intern
<li class="right" >
<a href="object_manager.html" title="2.13. Object Manager Kernel objects"
>previous</a> |</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.1 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.3 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="winobject.html" ><span class="section-number">2. </span>The <code class="xref py py-mod docutils literal notranslate"><span class="pre">windows</span></code> objects</a> &#187;</li>
<li class="nav-item nav-item-this"><a href=""><span class="section-number">2.14. </span>Device Manager</a></li>
</ul>
+4 -4
View File
@@ -5,12 +5,12 @@
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="viewport" content="width=device-width, initial-scale=1" />
<title>19. Python, Windows &amp; encoding &#8212; PythonForWindows 1.0.1 documentation</title>
<title>19. Python, Windows &amp; encoding &#8212; PythonForWindows 1.0.3 documentation</title>
<link rel="stylesheet" type="text/css" href="_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="_static/css/mbasic.css?v=957880af" />
<script src="_static/documentation_options.js?v=292eb321"></script>
<script src="_static/documentation_options.js?v=baaebd52"></script>
<script src="_static/doctools.js?v=9a2dae69"></script>
<script src="_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -30,7 +30,7 @@
<li class="right" >
<a href="sample.html" title="18. Samples of code"
accesskey="P">previous</a> |</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.1 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.3 documentation</a> &#187;</li>
<li class="nav-item nav-item-this"><a href=""><span class="section-number">19. </span>Python, Windows &amp; encoding</a></li>
</ul>
</div>
@@ -347,7 +347,7 @@ Unicode object repr: &lt;MyUtf8Object name=&quot;お前はもう死んでい-к
<li class="right" >
<a href="sample.html" title="18. Samples of code"
>previous</a> |</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.1 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.3 documentation</a> &#187;</li>
<li class="nav-item nav-item-this"><a href=""><span class="section-number">19. </span>Python, Windows &amp; encoding</a></li>
</ul>
</div>
+4 -4
View File
@@ -5,12 +5,12 @@
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="viewport" content="width=device-width, initial-scale=1" />
<title>2.17. ETW Event Tracing for Windows &#8212; PythonForWindows 1.0.1 documentation</title>
<title>2.17. ETW Event Tracing for Windows &#8212; PythonForWindows 1.0.3 documentation</title>
<link rel="stylesheet" type="text/css" href="_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="_static/css/mbasic.css?v=957880af" />
<script src="_static/documentation_options.js?v=292eb321"></script>
<script src="_static/documentation_options.js?v=baaebd52"></script>
<script src="_static/doctools.js?v=9a2dae69"></script>
<script src="_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -34,7 +34,7 @@
<li class="right" >
<a href="evtlog.html" title="2.16. Event Log"
accesskey="P">previous</a> |</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.1 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.3 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="winobject.html" accesskey="U"><span class="section-number">2. </span>The <code class="xref py py-mod docutils literal notranslate"><span class="pre">windows</span></code> objects</a> &#187;</li>
<li class="nav-item nav-item-this"><a href=""><span class="section-number">2.17. </span>ETW Event Tracing for Windows</a></li>
</ul>
@@ -376,7 +376,7 @@ This allow for simpler script that stop/start some EtwTrace.</p>
<li class="right" >
<a href="evtlog.html" title="2.16. Event Log"
>previous</a> |</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.1 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.3 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="winobject.html" ><span class="section-number">2. </span>The <code class="xref py py-mod docutils literal notranslate"><span class="pre">windows</span></code> objects</a> &#187;</li>
<li class="nav-item nav-item-this"><a href=""><span class="section-number">2.17. </span>ETW Event Tracing for Windows</a></li>
</ul>
+4 -4
View File
@@ -5,12 +5,12 @@
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="viewport" content="width=device-width, initial-scale=1" />
<title>2.16. Event Log &#8212; PythonForWindows 1.0.1 documentation</title>
<title>2.16. Event Log &#8212; PythonForWindows 1.0.3 documentation</title>
<link rel="stylesheet" type="text/css" href="_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="_static/css/mbasic.css?v=957880af" />
<script src="_static/documentation_options.js?v=292eb321"></script>
<script src="_static/documentation_options.js?v=baaebd52"></script>
<script src="_static/doctools.js?v=9a2dae69"></script>
<script src="_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -34,7 +34,7 @@
<li class="right" >
<a href="task_scheduler.html" title="2.15. Task scheduler"
accesskey="P">previous</a> |</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.1 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.3 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="winobject.html" accesskey="U"><span class="section-number">2. </span>The <code class="xref py py-mod docutils literal notranslate"><span class="pre">windows</span></code> objects</a> &#187;</li>
<li class="nav-item nav-item-this"><a href=""><span class="section-number">2.16. </span>Event Log</a></li>
</ul>
@@ -1051,7 +1051,7 @@ Retrieved by parsing <a class="reference internal" href="#windows.winobject.even
<li class="right" >
<a href="task_scheduler.html" title="2.15. Task scheduler"
>previous</a> |</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.1 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.3 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="winobject.html" ><span class="section-number">2. </span>The <code class="xref py py-mod docutils literal notranslate"><span class="pre">windows</span></code> objects</a> &#187;</li>
<li class="nav-item nav-item-this"><a href=""><span class="section-number">2.16. </span>Event Log</a></li>
</ul>
+4 -4
View File
@@ -5,12 +5,12 @@
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="viewport" content="width=device-width, initial-scale=1" />
<title>2.5. Exception and Context related structures &#8212; PythonForWindows 1.0.1 documentation</title>
<title>2.5. Exception and Context related structures &#8212; PythonForWindows 1.0.3 documentation</title>
<link rel="stylesheet" type="text/css" href="_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="_static/css/mbasic.css?v=957880af" />
<script src="_static/documentation_options.js?v=292eb321"></script>
<script src="_static/documentation_options.js?v=baaebd52"></script>
<script src="_static/doctools.js?v=9a2dae69"></script>
<script src="_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -34,7 +34,7 @@
<li class="right" >
<a href="token.html" title="2.4. Token"
accesskey="P">previous</a> |</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.1 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.3 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="winobject.html" accesskey="U"><span class="section-number">2. </span>The <code class="xref py py-mod docutils literal notranslate"><span class="pre">windows</span></code> objects</a> &#187;</li>
<li class="nav-item nav-item-this"><a href=""><span class="section-number">2.5. </span>Exception and Context related structures</a></li>
</ul>
@@ -669,7 +669,7 @@ Most of the structures are the Windows structure with a prefix <code class="docu
<li class="right" >
<a href="token.html" title="2.4. Token"
>previous</a> |</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.1 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.3 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="winobject.html" ><span class="section-number">2. </span>The <code class="xref py py-mod docutils literal notranslate"><span class="pre">windows</span></code> objects</a> &#187;</li>
<li class="nav-item nav-item-this"><a href=""><span class="section-number">2.5. </span>Exception and Context related structures</a></li>
</ul>
+4 -4
View File
@@ -5,12 +5,12 @@
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="viewport" content="width=device-width, initial-scale=1" />
<title>14. windows.generated_def generated Windows defines and structures &#8212; PythonForWindows 1.0.1 documentation</title>
<title>14. windows.generated_def generated Windows defines and structures &#8212; PythonForWindows 1.0.3 documentation</title>
<link rel="stylesheet" type="text/css" href="_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="_static/css/mbasic.css?v=957880af" />
<script src="_static/documentation_options.js?v=292eb321"></script>
<script src="_static/documentation_options.js?v=baaebd52"></script>
<script src="_static/doctools.js?v=9a2dae69"></script>
<script src="_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -34,7 +34,7 @@
<li class="right" >
<a href="rpc.html" title="13. windows.rpc ALPC-based Windows RPC"
accesskey="P">previous</a> |</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.1 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.3 documentation</a> &#187;</li>
<li class="nav-item nav-item-this"><a href=""><span class="section-number">14. </span><code class="docutils literal notranslate"><span class="pre">windows.generated_def</span></code> generated Windows defines and structures</a></li>
</ul>
</div>
@@ -185,7 +185,7 @@
<li class="right" >
<a href="rpc.html" title="13. windows.rpc ALPC-based Windows RPC"
>previous</a> |</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.1 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.3 documentation</a> &#187;</li>
<li class="nav-item nav-item-this"><a href=""><span class="section-number">14. </span><code class="docutils literal notranslate"><span class="pre">windows.generated_def</span></code> generated Windows defines and structures</a></li>
</ul>
</div>
+144 -26
View File
@@ -4,12 +4,12 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Index &#8212; PythonForWindows 1.0.1 documentation</title>
<title>Index &#8212; PythonForWindows 1.0.3 documentation</title>
<link rel="stylesheet" type="text/css" href="_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="_static/css/mbasic.css?v=957880af" />
<script src="_static/documentation_options.js?v=292eb321"></script>
<script src="_static/documentation_options.js?v=baaebd52"></script>
<script src="_static/doctools.js?v=9a2dae69"></script>
<script src="_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -25,7 +25,7 @@
<li class="right" >
<a href="py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.1 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.3 documentation</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">Index</a></li>
</ul>
</div>
@@ -303,6 +303,8 @@
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._BG_JOB_TIMES">_BG_JOB_TIMES (class in windows.generated_def.winstructs)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._BG_JOB_TYPE">_BG_JOB_TYPE (class in windows.generated_def.winstructs)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._BY_HANDLE_FILE_INFORMATION">_BY_HANDLE_FILE_INFORMATION (class in windows.generated_def.winstructs)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._CALLFRAME_COPY">_CALLFRAME_COPY (class in windows.generated_def.winstructs)</a>
</li>
@@ -669,6 +671,8 @@
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._FILE_FULL_EA_INFORMATION">_FILE_FULL_EA_INFORMATION (class in windows.generated_def.winstructs)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._FILE_GET_EA_INFORMATION">_FILE_GET_EA_INFORMATION (class in windows.generated_def.winstructs)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._FILE_INFO_BY_HANDLE_CLASS">_FILE_INFO_BY_HANDLE_CLASS (class in windows.generated_def.winstructs)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._FILE_INFORMATION_CLASS">_FILE_INFORMATION_CLASS (class in windows.generated_def.winstructs)</a>
</li>
@@ -755,11 +759,11 @@
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._IMAGEHLP_CBA_EVENTW">_IMAGEHLP_CBA_EVENTW (class in windows.generated_def.winstructs)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._IMAGEHLP_CBA_READ_MEMORY">_IMAGEHLP_CBA_READ_MEMORY (class in windows.generated_def.winstructs)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._IMAGEHLP_DEFERRED_SYMBOL_LOAD">_IMAGEHLP_DEFERRED_SYMBOL_LOAD (class in windows.generated_def.winstructs)</a>
</li>
</ul></td>
<td style="width: 33%; vertical-align: top;"><ul>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._IMAGEHLP_DEFERRED_SYMBOL_LOAD">_IMAGEHLP_DEFERRED_SYMBOL_LOAD (class in windows.generated_def.winstructs)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._IMAGEHLP_DEFERRED_SYMBOL_LOAD64">_IMAGEHLP_DEFERRED_SYMBOL_LOAD64 (class in windows.generated_def.winstructs)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._IMAGEHLP_DEFERRED_SYMBOL_LOADW64">_IMAGEHLP_DEFERRED_SYMBOL_LOADW64 (class in windows.generated_def.winstructs)</a>
@@ -3344,10 +3348,10 @@
</ul></li>
<li><a href="interfaces_generated.html#windows.generated_def.interfaces.IMoniker.BindToObject">BindToObject() (windows.generated_def.interfaces.IMoniker method)</a>
</li>
</ul></td>
<td style="width: 33%; vertical-align: top;"><ul>
<li><a href="interfaces_generated.html#windows.generated_def.interfaces.IMoniker.BindToStorage">BindToStorage() (windows.generated_def.interfaces.IMoniker method)</a>
</li>
</ul></td>
<td style="width: 33%; vertical-align: top;"><ul>
<li><a href="interfaces_generated.html#windows.generated_def.interfaces.ITypeComp.BindType">BindType() (windows.generated_def.interfaces.ITypeComp method)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._SECURITY_ATTRIBUTES.bInheritHandle">bInheritHandle (windows.generated_def.winstructs._SECURITY_ATTRIBUTES attribute)</a>
@@ -3572,6 +3576,8 @@
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._TRACE_LOGFILE_HEADER.BuffersWritten">(windows.generated_def.winstructs._TRACE_LOGFILE_HEADER attribute)</a>
</li>
</ul></li>
<li><a href="windows.html#windows.winobject.system.System.build_number">build_number (windows.winobject.system.System property)</a>
</li>
<li><a href="winfuncs_generated.html#windows.generated_def.winfuncs.BuildSecurityDescriptorW">BuildSecurityDescriptorW() (in module windows.generated_def.winfuncs)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._KDHELP64.BuildVersion">BuildVersion (windows.generated_def.winstructs._KDHELP64 attribute)</a>
@@ -3619,6 +3625,8 @@
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._ANON_TMP_variant_sub_union.bVal">bVal (windows.generated_def.winstructs._ANON_TMP_variant_sub_union attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._PUBLICKEYSTRUC.bVersion">bVersion (windows.generated_def.winstructs._PUBLICKEYSTRUC attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs.BY_HANDLE_FILE_INFORMATION">BY_HANDLE_FILE_INFORMATION (class in windows.generated_def.winstructs)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._ANON_TMP_variant_sub_union.byref">byref (windows.generated_def.winstructs._ANON_TMP_variant_sub_union attribute)</a>
</li>
@@ -6710,6 +6718,8 @@
<li><a href="etw.html#windows.winobject.event_trace.EventTraceProperties.create">(windows.winobject.event_trace.EventTraceProperties class method)</a>
</li>
<li><a href="registry.html#windows.winobject.registry.PyHKey.create">(windows.winobject.registry.PyHKey method)</a>
</li>
<li><a href="service.html#windows.winobject.service.ServiceManager.create">(windows.winobject.service.ServiceManager method)</a>
</li>
<li><a href="task_scheduler.html#windows.winobject.task_scheduler.ActionCollection.create">(windows.winobject.task_scheduler.ActionCollection method)</a>
</li>
@@ -8063,7 +8073,11 @@
</li>
</ul></li>
<li><a href="registry.html#windows.winobject.registry.PyHKey.delete">delete() (windows.winobject.registry.PyHKey method)</a>
<ul>
<li><a href="service.html#windows.winobject.service.Service.delete">(windows.winobject.service.Service method)</a>
</li>
</ul></li>
<li><a href="task_scheduler.html#windows.winobject.task_scheduler.TaskFolder.delete_folder">delete_folder() (windows.winobject.task_scheduler.TaskFolder method)</a>
</li>
<li><a href="wmi.html#windows.winobject.wmi.WmiNamespace.delete_instance">delete_instance() (windows.winobject.wmi.WmiNamespace method)</a>
@@ -8307,6 +8321,8 @@
<li><a href="winstructs_generated.html#windows.generated_def.winstructs.DISPID">DISPID (in module windows.generated_def.winstructs)</a>
</li>
<li><a href="debug.html#windows.debug.symbols.SymbolInfoA.displacement">displacement (windows.debug.symbols.SymbolInfoA attribute)</a>
</li>
<li><a href="windows.html#windows.winobject.system.System.display_version">display_version (windows.winobject.system.System property)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs.DISPPARAMS">DISPPARAMS (class in windows.generated_def.winstructs)</a>
</li>
@@ -9470,9 +9486,11 @@
<li><a href="winstructs_generated.html#windows.generated_def.winstructs.DNS_TKEY_DATAW.dwExpireTime">(windows.generated_def.winstructs.DNS_TKEY_DATAW attribute)</a>
</li>
</ul></li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._WIN32_FIND_DATAA.dwFileAttributes">dwFileAttributes (windows.generated_def.winstructs._WIN32_FIND_DATAA attribute)</a>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._BY_HANDLE_FILE_INFORMATION.dwFileAttributes">dwFileAttributes (windows.generated_def.winstructs._BY_HANDLE_FILE_INFORMATION attribute)</a>
<ul>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._WIN32_FIND_DATAA.dwFileAttributes">(windows.generated_def.winstructs._WIN32_FIND_DATAA attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._WIN32_FIND_DATAW.dwFileAttributes">(windows.generated_def.winstructs._WIN32_FIND_DATAW attribute)</a>
</li>
</ul></li>
@@ -10144,6 +10162,8 @@
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._CTL_INFO.dwVersion">(windows.generated_def.winstructs._CTL_INFO attribute)</a>
</li>
</ul></li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._BY_HANDLE_FILE_INFORMATION.dwVolumeSerialNumber">dwVolumeSerialNumber (windows.generated_def.winstructs._BY_HANDLE_FILE_INFORMATION attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._SERVICE_STATUS.dwWaitHint">dwWaitHint (windows.generated_def.winstructs._SERVICE_STATUS attribute)</a>
<ul>
@@ -19543,6 +19563,8 @@
<li><a href="windef_generated.html#windows.generated_def.FILE_GENERIC_WRITE">FILE_GENERIC_WRITE (in module windows.generated_def)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs.FILE_GET_EA_INFORMATION">FILE_GET_EA_INFORMATION (class in windows.generated_def.winstructs)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs.FILE_INFO_BY_HANDLE_CLASS">FILE_INFO_BY_HANDLE_CLASS (class in windows.generated_def.winstructs)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs.FILE_INFORMATION_CLASS">FILE_INFORMATION_CLASS (class in windows.generated_def.winstructs)</a>
</li>
@@ -19746,9 +19768,13 @@
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._IMAGE_OPTIONAL_HEADER64.FileAlignment">(windows.generated_def.winstructs._IMAGE_OPTIONAL_HEADER64 attribute)</a>
</li>
</ul></li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._FILE_INFO_BY_HANDLE_CLASS.FileAlignmentInfo">FileAlignmentInfo (windows.generated_def.winstructs._FILE_INFO_BY_HANDLE_CLASS attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._FILE_INFORMATION_CLASS.FileAlignmentInformation">FileAlignmentInformation (windows.generated_def.winstructs._FILE_INFORMATION_CLASS attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._FILE_INFORMATION_CLASS.FileAllInformation">FileAllInformation (windows.generated_def.winstructs._FILE_INFORMATION_CLASS attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._FILE_INFO_BY_HANDLE_CLASS.FileAllocationInfo">FileAllocationInfo (windows.generated_def.winstructs._FILE_INFO_BY_HANDLE_CLASS attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._FILE_INFORMATION_CLASS.FileAllocationInformation">FileAllocationInformation (windows.generated_def.winstructs._FILE_INFORMATION_CLASS attribute)</a>
</li>
@@ -19764,23 +19790,37 @@
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._FILE_NOTIFY_EXTENDED_INFORMATION.FileAttributes">(windows.generated_def.winstructs._FILE_NOTIFY_EXTENDED_INFORMATION attribute)</a>
</li>
</ul></li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._FILE_INFO_BY_HANDLE_CLASS.FileAttributeTagInfo">FileAttributeTagInfo (windows.generated_def.winstructs._FILE_INFO_BY_HANDLE_CLASS attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._FILE_INFORMATION_CLASS.FileAttributeTagInformation">FileAttributeTagInformation (windows.generated_def.winstructs._FILE_INFORMATION_CLASS attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._FILE_INFO_BY_HANDLE_CLASS.FileBasicInfo">FileBasicInfo (windows.generated_def.winstructs._FILE_INFO_BY_HANDLE_CLASS attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._FILE_INFORMATION_CLASS.FileBasicInformation">FileBasicInformation (windows.generated_def.winstructs._FILE_INFORMATION_CLASS attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._FILE_INFORMATION_CLASS.FileBothDirectoryInformation">FileBothDirectoryInformation (windows.generated_def.winstructs._FILE_INFORMATION_CLASS attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._FILE_INFO_BY_HANDLE_CLASS.FileCaseSensitiveInfo">FileCaseSensitiveInfo (windows.generated_def.winstructs._FILE_INFO_BY_HANDLE_CLASS attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._FILE_INFORMATION_CLASS.FileCompletionInformation">FileCompletionInformation (windows.generated_def.winstructs._FILE_INFORMATION_CLASS attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._FILE_INFO_BY_HANDLE_CLASS.FileCompressionInfo">FileCompressionInfo (windows.generated_def.winstructs._FILE_INFO_BY_HANDLE_CLASS attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._FILE_INFORMATION_CLASS.FileCompressionInformation">FileCompressionInformation (windows.generated_def.winstructs._FILE_INFORMATION_CLASS attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._FILE_INFORMATION_CLASS.FileDirectoryInformation">FileDirectoryInformation (windows.generated_def.winstructs._FILE_INFORMATION_CLASS attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._FILE_INFO_BY_HANDLE_CLASS.FileDispositionInfo">FileDispositionInfo (windows.generated_def.winstructs._FILE_INFO_BY_HANDLE_CLASS attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._FILE_INFO_BY_HANDLE_CLASS.FileDispositionInfoEx">FileDispositionInfoEx (windows.generated_def.winstructs._FILE_INFO_BY_HANDLE_CLASS attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._FILE_INFORMATION_CLASS.FileDispositionInformation">FileDispositionInformation (windows.generated_def.winstructs._FILE_INFORMATION_CLASS attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._FILE_INFORMATION_CLASS.FileDispositionInformationEx">FileDispositionInformationEx (windows.generated_def.winstructs._FILE_INFORMATION_CLASS attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._FILE_INFORMATION_CLASS.FileEaInformation">FileEaInformation (windows.generated_def.winstructs._FILE_INFORMATION_CLASS attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._FILE_INFO_BY_HANDLE_CLASS.FileEndOfFileInfo">FileEndOfFileInfo (windows.generated_def.winstructs._FILE_INFO_BY_HANDLE_CLASS attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._FILE_INFORMATION_CLASS.FileEndOfFileInformation">FileEndOfFileInformation (windows.generated_def.winstructs._FILE_INFORMATION_CLASS attribute)</a>
</li>
@@ -19805,8 +19845,12 @@
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._FS_INFORMATION_CLASS.FileFsVolumeFlagsInformation">FileFsVolumeFlagsInformation (windows.generated_def.winstructs._FS_INFORMATION_CLASS attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._FS_INFORMATION_CLASS.FileFsVolumeInformation">FileFsVolumeInformation (windows.generated_def.winstructs._FS_INFORMATION_CLASS attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._FILE_INFO_BY_HANDLE_CLASS.FileFullDirectoryInfo">FileFullDirectoryInfo (windows.generated_def.winstructs._FILE_INFO_BY_HANDLE_CLASS attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._FILE_INFORMATION_CLASS.FileFullDirectoryInformation">FileFullDirectoryInformation (windows.generated_def.winstructs._FILE_INFORMATION_CLASS attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._FILE_INFO_BY_HANDLE_CLASS.FileFullDirectoryRestartInfo">FileFullDirectoryRestartInfo (windows.generated_def.winstructs._FILE_INFO_BY_HANDLE_CLASS attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._FILE_INFORMATION_CLASS.FileFullEaInformation">FileFullEaInformation (windows.generated_def.winstructs._FILE_INFORMATION_CLASS attribute)</a>
</li>
@@ -19821,22 +19865,34 @@
</li>
</ul></li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._FILE_NOTIFY_EXTENDED_INFORMATION.FileId">FileId (windows.generated_def.winstructs._FILE_NOTIFY_EXTENDED_INFORMATION attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._FILE_INFO_BY_HANDLE_CLASS.FileIdBothDirectoryInfo">FileIdBothDirectoryInfo (windows.generated_def.winstructs._FILE_INFO_BY_HANDLE_CLASS attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._FILE_INFORMATION_CLASS.FileIdBothDirectoryInformation">FileIdBothDirectoryInformation (windows.generated_def.winstructs._FILE_INFORMATION_CLASS attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._FILE_INFO_BY_HANDLE_CLASS.FileIdBothDirectoryRestartInfo">FileIdBothDirectoryRestartInfo (windows.generated_def.winstructs._FILE_INFO_BY_HANDLE_CLASS attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._FILE_INFORMATION_CLASS.FileIdExtdBothDirectoryInformation">FileIdExtdBothDirectoryInformation (windows.generated_def.winstructs._FILE_INFORMATION_CLASS attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._FILE_INFO_BY_HANDLE_CLASS.FileIdExtdDirectoryInfo">FileIdExtdDirectoryInfo (windows.generated_def.winstructs._FILE_INFO_BY_HANDLE_CLASS attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._FILE_INFORMATION_CLASS.FileIdExtdDirectoryInformation">FileIdExtdDirectoryInformation (windows.generated_def.winstructs._FILE_INFORMATION_CLASS attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._FILE_INFO_BY_HANDLE_CLASS.FileIdExtdDirectoryRestartInfo">FileIdExtdDirectoryRestartInfo (windows.generated_def.winstructs._FILE_INFO_BY_HANDLE_CLASS attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._FILE_INFORMATION_CLASS.FileIdFullDirectoryInformation">FileIdFullDirectoryInformation (windows.generated_def.winstructs._FILE_INFORMATION_CLASS attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._FILE_INFORMATION_CLASS.FileIdGlobalTxDirectoryInformation">FileIdGlobalTxDirectoryInformation (windows.generated_def.winstructs._FILE_INFORMATION_CLASS attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._FILE_INFO_BY_HANDLE_CLASS.FileIdInfo">FileIdInfo (windows.generated_def.winstructs._FILE_INFO_BY_HANDLE_CLASS attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._FILE_INFORMATION_CLASS.FileIdInformation">FileIdInformation (windows.generated_def.winstructs._FILE_INFORMATION_CLASS attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._FILE_INFORMATION_CLASS.FileInternalInformation">FileInternalInformation (windows.generated_def.winstructs._FILE_INFORMATION_CLASS attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._FILE_INFORMATION_CLASS.FileIoCompletionNotificationInformation">FileIoCompletionNotificationInformation (windows.generated_def.winstructs._FILE_INFORMATION_CLASS attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._FILE_INFO_BY_HANDLE_CLASS.FileIoPriorityHintInfo">FileIoPriorityHintInfo (windows.generated_def.winstructs._FILE_INFO_BY_HANDLE_CLASS attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._FILE_INFORMATION_CLASS.FileIoPriorityHintInformation">FileIoPriorityHintInformation (windows.generated_def.winstructs._FILE_INFORMATION_CLASS attribute)</a>
</li>
@@ -19881,6 +19937,8 @@
<li><a href="winproxy.html#windows.winproxy.WinproxyError.filename2">filename2 (windows.winproxy.WinproxyError attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._DEBUG_SYMBOL_SOURCE_ENTRY.FileNameId">FileNameId (windows.generated_def.winstructs._DEBUG_SYMBOL_SOURCE_ENTRY attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._FILE_INFO_BY_HANDLE_CLASS.FileNameInfo">FileNameInfo (windows.generated_def.winstructs._FILE_INFO_BY_HANDLE_CLASS attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._FILE_INFORMATION_CLASS.FileNameInformation">FileNameInformation (windows.generated_def.winstructs._FILE_INFORMATION_CLASS attribute)</a>
</li>
@@ -19903,6 +19961,8 @@
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._FILE_INFORMATION_CLASS.FileNetworkOpenInformation">FileNetworkOpenInformation (windows.generated_def.winstructs._FILE_INFORMATION_CLASS attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._FILE_INFORMATION_CLASS.FileNetworkPhysicalNameInformation">FileNetworkPhysicalNameInformation (windows.generated_def.winstructs._FILE_INFORMATION_CLASS attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._FILE_INFO_BY_HANDLE_CLASS.FileNormalizedNameInfo">FileNormalizedNameInfo (windows.generated_def.winstructs._FILE_INFO_BY_HANDLE_CLASS attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._FILE_INFORMATION_CLASS.FileNormalizedNameInformation">FileNormalizedNameInformation (windows.generated_def.winstructs._FILE_INFORMATION_CLASS attribute)</a>
</li>
@@ -19923,8 +19983,14 @@
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._FILE_INFORMATION_CLASS.FileProcessIdsUsingFileInformation">FileProcessIdsUsingFileInformation (windows.generated_def.winstructs._FILE_INFORMATION_CLASS attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._FILE_INFORMATION_CLASS.FileQuotaInformation">FileQuotaInformation (windows.generated_def.winstructs._FILE_INFORMATION_CLASS attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._FILE_INFO_BY_HANDLE_CLASS.FileRemoteProtocolInfo">FileRemoteProtocolInfo (windows.generated_def.winstructs._FILE_INFO_BY_HANDLE_CLASS attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._FILE_INFORMATION_CLASS.FileRemoteProtocolInformation">FileRemoteProtocolInformation (windows.generated_def.winstructs._FILE_INFORMATION_CLASS attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._FILE_INFO_BY_HANDLE_CLASS.FileRenameInfo">FileRenameInfo (windows.generated_def.winstructs._FILE_INFO_BY_HANDLE_CLASS attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._FILE_INFO_BY_HANDLE_CLASS.FileRenameInfoEx">FileRenameInfoEx (windows.generated_def.winstructs._FILE_INFO_BY_HANDLE_CLASS attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._FILE_INFORMATION_CLASS.FileRenameInformation">FileRenameInformation (windows.generated_def.winstructs._FILE_INFORMATION_CLASS attribute)</a>
</li>
@@ -19945,14 +20011,20 @@
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._FILE_INFORMATION_CLASS.FileShortNameInformation">FileShortNameInformation (windows.generated_def.winstructs._FILE_INFORMATION_CLASS attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._FILE_NOTIFY_EXTENDED_INFORMATION.FileSize">FileSize (windows.generated_def.winstructs._FILE_NOTIFY_EXTENDED_INFORMATION attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._FILE_INFO_BY_HANDLE_CLASS.FileStandardInfo">FileStandardInfo (windows.generated_def.winstructs._FILE_INFO_BY_HANDLE_CLASS attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._FILE_INFORMATION_CLASS.FileStandardInformation">FileStandardInformation (windows.generated_def.winstructs._FILE_INFORMATION_CLASS attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._FILE_INFORMATION_CLASS.FileStandardLinkInformation">FileStandardLinkInformation (windows.generated_def.winstructs._FILE_INFORMATION_CLASS attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._FILE_INFO_BY_HANDLE_CLASS.FileStorageInfo">FileStorageInfo (windows.generated_def.winstructs._FILE_INFO_BY_HANDLE_CLASS attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._BG_JOB_PROGRESS.FilesTotal">FilesTotal (windows.generated_def.winstructs._BG_JOB_PROGRESS attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._BG_JOB_PROGRESS.FilesTransferred">FilesTransferred (windows.generated_def.winstructs._BG_JOB_PROGRESS attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._FILE_INFO_BY_HANDLE_CLASS.FileStreamInfo">FileStreamInfo (windows.generated_def.winstructs._FILE_INFO_BY_HANDLE_CLASS attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._FILE_INFORMATION_CLASS.FileStreamInformation">FileStreamInformation (windows.generated_def.winstructs._FILE_INFORMATION_CLASS attribute)</a>
</li>
@@ -20984,21 +21056,27 @@
</li>
<li><a href="windef_generated.html#windows.generated_def.FSCTL_WRITE_USN_REASON">FSCTL_WRITE_USN_REASON (in module windows.generated_def)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._WIN32_FIND_DATAA.ftCreationTime">ftCreationTime (windows.generated_def.winstructs._WIN32_FIND_DATAA attribute)</a>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._BY_HANDLE_FILE_INFORMATION.ftCreationTime">ftCreationTime (windows.generated_def.winstructs._BY_HANDLE_FILE_INFORMATION attribute)</a>
<ul>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._WIN32_FIND_DATAA.ftCreationTime">(windows.generated_def.winstructs._WIN32_FIND_DATAA attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._WIN32_FIND_DATAW.ftCreationTime">(windows.generated_def.winstructs._WIN32_FIND_DATAW attribute)</a>
</li>
</ul></li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._WIN32_FIND_DATAA.ftLastAccessTime">ftLastAccessTime (windows.generated_def.winstructs._WIN32_FIND_DATAA attribute)</a>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._BY_HANDLE_FILE_INFORMATION.ftLastAccessTime">ftLastAccessTime (windows.generated_def.winstructs._BY_HANDLE_FILE_INFORMATION attribute)</a>
<ul>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._WIN32_FIND_DATAA.ftLastAccessTime">(windows.generated_def.winstructs._WIN32_FIND_DATAA attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._WIN32_FIND_DATAW.ftLastAccessTime">(windows.generated_def.winstructs._WIN32_FIND_DATAW attribute)</a>
</li>
</ul></li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._WIN32_FIND_DATAA.ftLastWriteTime">ftLastWriteTime (windows.generated_def.winstructs._WIN32_FIND_DATAA attribute)</a>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._BY_HANDLE_FILE_INFORMATION.ftLastWriteTime">ftLastWriteTime (windows.generated_def.winstructs._BY_HANDLE_FILE_INFORMATION attribute)</a>
<ul>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._WIN32_FIND_DATAA.ftLastWriteTime">(windows.generated_def.winstructs._WIN32_FIND_DATAA attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._WIN32_FIND_DATAW.ftLastWriteTime">(windows.generated_def.winstructs._WIN32_FIND_DATAW attribute)</a>
</li>
</ul></li>
@@ -22431,6 +22509,10 @@
<li><a href="winfuncs_generated.html#windows.generated_def.winfuncs.GetExtendedUdpTable">GetExtendedUdpTable() (in module windows.generated_def.winfuncs)</a>
</li>
<li><a href="interfaces_generated.html#windows.generated_def.interfaces.IBackgroundCopyError.GetFile">GetFile() (windows.generated_def.interfaces.IBackgroundCopyError method)</a>
</li>
<li><a href="winfuncs_generated.html#windows.generated_def.winfuncs.GetFileInformationByHandle">GetFileInformationByHandle() (in module windows.generated_def.winfuncs)</a>
</li>
<li><a href="winfuncs_generated.html#windows.generated_def.winfuncs.GetFileInformationByHandleEx">GetFileInformationByHandleEx() (in module windows.generated_def.winfuncs)</a>
</li>
<li><a href="interfaces_generated.html#windows.generated_def.interfaces.IBackgroundCopyFile2.GetFileRanges">GetFileRanges() (windows.generated_def.interfaces.IBackgroundCopyFile2 method)</a>
@@ -22575,11 +22657,11 @@
<li><a href="interfaces_generated.html#windows.generated_def.interfaces.ICallFrame.GetIIDAndMethod">GetIIDAndMethod() (windows.generated_def.interfaces.ICallFrame method)</a>
</li>
<li><a href="interfaces_generated.html#windows.generated_def.interfaces.IRpcHelper.GetIIDFromOBJREF">GetIIDFromOBJREF() (windows.generated_def.interfaces.IRpcHelper method)</a>
</li>
<li><a href="interfaces_generated.html#windows.generated_def.interfaces.IClassClassicInfo.GetImplementedClsid">GetImplementedClsid() (windows.generated_def.interfaces.IClassClassicInfo method)</a>
</li>
</ul></td>
<td style="width: 33%; vertical-align: top;"><ul>
<li><a href="interfaces_generated.html#windows.generated_def.interfaces.IClassClassicInfo.GetImplementedClsid">GetImplementedClsid() (windows.generated_def.interfaces.IClassClassicInfo method)</a>
</li>
<li><a href="interfaces_generated.html#windows.generated_def.interfaces.ITypeInfo.GetImplTypeFlags">GetImplTypeFlags() (windows.generated_def.interfaces.ITypeInfo method)</a>
</li>
<li><a href="interfaces_generated.html#windows.generated_def.interfaces.IActivationStageInfo.GetIndex">GetIndex() (windows.generated_def.interfaces.IActivationStageInfo method)</a>
@@ -26463,6 +26545,8 @@
<li><a href="winstructs_generated.html#windows.generated_def.winstructs.LPBITMAPINFOHEADER">LPBITMAPINFOHEADER (class in windows.generated_def.winstructs)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs.LPBOOL">LPBOOL (in module windows.generated_def.winstructs)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs.LPBY_HANDLE_FILE_INFORMATION">LPBY_HANDLE_FILE_INFORMATION (class in windows.generated_def.winstructs)</a>
</li>
</ul></td>
<td style="width: 33%; vertical-align: top;"><ul>
@@ -26591,6 +26675,10 @@
<li><a href="winstructs_generated.html#windows.generated_def.winstructs.LPGUID">LPGUID (class in windows.generated_def.winstructs)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs.LPHANDLE">LPHANDLE (class in windows.generated_def.winstructs)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs.LPHANDLER_FUNCTION">LPHANDLER_FUNCTION (in module windows.generated_def.winstructs)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs.LPHANDLER_FUNCTION_EX">LPHANDLER_FUNCTION_EX (in module windows.generated_def.winstructs)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs.LPIDLDESC">LPIDLDESC (class in windows.generated_def.winstructs)</a>
</li>
@@ -27189,6 +27277,8 @@
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._CERT_CHAIN_ENGINE_CONFIG.MaximumCachedCertificates">MaximumCachedCertificates (windows.generated_def.winstructs._CERT_CHAIN_ENGINE_CONFIG attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._FILE_FS_ATTRIBUTE_INFORMATION.MaximumComponentNameLength">MaximumComponentNameLength (windows.generated_def.winstructs._FILE_FS_ATTRIBUTE_INFORMATION attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._FILE_INFO_BY_HANDLE_CLASS.MaximumFileInfoByHandleClass">MaximumFileInfoByHandleClass (windows.generated_def.winstructs._FILE_INFO_BY_HANDLE_CLASS attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._EVENT_TRACE_PROPERTIES.MaximumFileSize">MaximumFileSize (windows.generated_def.winstructs._EVENT_TRACE_PROPERTIES attribute)</a>
@@ -27557,11 +27647,11 @@
<li><a href="winstructs_generated.html#windows.generated_def.winstructs.MIB_TCPTABLE_OWNER_PID">MIB_TCPTABLE_OWNER_PID (class in windows.generated_def.winstructs)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs.MIB_UDP6ROW_OWNER_PID">MIB_UDP6ROW_OWNER_PID (class in windows.generated_def.winstructs)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs.MIB_UDP6TABLE_OWNER_PID">MIB_UDP6TABLE_OWNER_PID (class in windows.generated_def.winstructs)</a>
</li>
</ul></td>
<td style="width: 33%; vertical-align: top;"><ul>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs.MIB_UDP6TABLE_OWNER_PID">MIB_UDP6TABLE_OWNER_PID (class in windows.generated_def.winstructs)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs.MIB_UDPROW_OWNER_PID">MIB_UDPROW_OWNER_PID (class in windows.generated_def.winstructs)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs.MIB_UDPTABLE_OWNER_PID">MIB_UDPTABLE_OWNER_PID (class in windows.generated_def.winstructs)</a>
@@ -28935,14 +29025,14 @@
</li>
<li><a href="windef_generated.html#windows.generated_def.NERR_RplLoadrDiskErr">NERR_RplLoadrDiskErr (in module windows.generated_def)</a>
</li>
</ul></td>
<td style="width: 33%; vertical-align: top;"><ul>
<li><a href="windef_generated.html#windows.generated_def.NERR_RplLoadrNetBiosErr">NERR_RplLoadrNetBiosErr (in module windows.generated_def)</a>
</li>
<li><a href="windef_generated.html#windows.generated_def.NERR_RplNeedsRPLUSERAcct">NERR_RplNeedsRPLUSERAcct (in module windows.generated_def)</a>
</li>
<li><a href="windef_generated.html#windows.generated_def.NERR_RplNoAdaptersStarted">NERR_RplNoAdaptersStarted (in module windows.generated_def)</a>
</li>
</ul></td>
<td style="width: 33%; vertical-align: top;"><ul>
<li><a href="windef_generated.html#windows.generated_def.NERR_RplNotRplServer">NERR_RplNotRplServer (in module windows.generated_def)</a>
</li>
<li><a href="windef_generated.html#windows.generated_def.NERR_RplProfileInfoCorrupted">NERR_RplProfileInfoCorrupted (in module windows.generated_def)</a>
@@ -29271,15 +29361,23 @@
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._CTL_INFO.NextUpdate">(windows.generated_def.winstructs._CTL_INFO attribute)</a>
</li>
</ul></li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._WIN32_FIND_DATAA.nFileSizeHigh">nFileSizeHigh (windows.generated_def.winstructs._WIN32_FIND_DATAA attribute)</a>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._BY_HANDLE_FILE_INFORMATION.nFileIndexHigh">nFileIndexHigh (windows.generated_def.winstructs._BY_HANDLE_FILE_INFORMATION attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._BY_HANDLE_FILE_INFORMATION.nFileIndexLow">nFileIndexLow (windows.generated_def.winstructs._BY_HANDLE_FILE_INFORMATION attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._BY_HANDLE_FILE_INFORMATION.nFileSizeHigh">nFileSizeHigh (windows.generated_def.winstructs._BY_HANDLE_FILE_INFORMATION attribute)</a>
<ul>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._WIN32_FIND_DATAA.nFileSizeHigh">(windows.generated_def.winstructs._WIN32_FIND_DATAA attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._WIN32_FIND_DATAW.nFileSizeHigh">(windows.generated_def.winstructs._WIN32_FIND_DATAW attribute)</a>
</li>
</ul></li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._WIN32_FIND_DATAA.nFileSizeLow">nFileSizeLow (windows.generated_def.winstructs._WIN32_FIND_DATAA attribute)</a>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._BY_HANDLE_FILE_INFORMATION.nFileSizeLow">nFileSizeLow (windows.generated_def.winstructs._BY_HANDLE_FILE_INFORMATION attribute)</a>
<ul>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._WIN32_FIND_DATAA.nFileSizeLow">(windows.generated_def.winstructs._WIN32_FIND_DATAA attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._WIN32_FIND_DATAW.nFileSizeLow">(windows.generated_def.winstructs._WIN32_FIND_DATAW attribute)</a>
</li>
</ul></li>
@@ -29290,6 +29388,8 @@
<li><a href="windef_generated.html#windows.generated_def.NMPWAIT_USE_DEFAULT_WAIT">NMPWAIT_USE_DEFAULT_WAIT (in module windows.generated_def)</a>
</li>
<li><a href="windef_generated.html#windows.generated_def.NMPWAIT_WAIT_FOREVER">NMPWAIT_WAIT_FOREVER (in module windows.generated_def)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._BY_HANDLE_FILE_INFORMATION.nNumberOfLinks">nNumberOfLinks (windows.generated_def.winstructs._BY_HANDLE_FILE_INFORMATION attribute)</a>
</li>
<li><a href="winerror_generated.html#windows.generated_def.NO_ERROR">NO_ERROR (in module windows.generated_def)</a>
</li>
@@ -30778,6 +30878,8 @@
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._ANON_TMP_variant_sub_union.pbVal">pbVal (windows.generated_def.winstructs._ANON_TMP_variant_sub_union attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs.CRYPTCATATTRIBUTE_.pbValue">pbValue (windows.generated_def.winstructs.CRYPTCATATTRIBUTE_ attribute)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs.PBY_HANDLE_FILE_INFORMATION">PBY_HANDLE_FILE_INFORMATION (class in windows.generated_def.winstructs)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs.PBYTE">PBYTE (class in windows.generated_def.winstructs)</a>
</li>
@@ -31654,6 +31756,8 @@
<li><a href="winstructs_generated.html#windows.generated_def.winstructs.PFILE_FULL_EA_INFORMATION">PFILE_FULL_EA_INFORMATION (class in windows.generated_def.winstructs)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs.PFILE_GET_EA_INFORMATION">PFILE_GET_EA_INFORMATION (class in windows.generated_def.winstructs)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs.PFILE_INFO_BY_HANDLE_CLASS">PFILE_INFO_BY_HANDLE_CLASS (class in windows.generated_def.winstructs)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs.PFILE_INFORMATION_CLASS">PFILE_INFORMATION_CLASS (class in windows.generated_def.winstructs)</a>
</li>
@@ -32272,11 +32376,11 @@
<li><a href="winstructs_generated.html#windows.generated_def.winstructs.POBJECTS_AND_NAME_A">POBJECTS_AND_NAME_A (class in windows.generated_def.winstructs)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs.POBJECTS_AND_NAME_W">POBJECTS_AND_NAME_W (class in windows.generated_def.winstructs)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs.POBJECTS_AND_SID">POBJECTS_AND_SID (class in windows.generated_def.winstructs)</a>
</li>
</ul></td>
<td style="width: 33%; vertical-align: top;"><ul>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs.POBJECTS_AND_SID">POBJECTS_AND_SID (class in windows.generated_def.winstructs)</a>
</li>
<li><a href="winstructs_generated.html#windows.generated_def.winstructs._CLAIM_SECURITY_ATTRIBUTE_RELATIVE_V1_UNION.pOctetString">pOctetString (windows.generated_def.winstructs._CLAIM_SECURITY_ATTRIBUTE_RELATIVE_V1_UNION attribute)</a>
<ul>
@@ -34810,6 +34914,14 @@
<li><a href="interfaces_generated.html#windows.generated_def.interfaces.IBindCtx.RegisterObjectBound">RegisterObjectBound() (windows.generated_def.interfaces.IBindCtx method)</a>
</li>
<li><a href="interfaces_generated.html#windows.generated_def.interfaces.IBindCtx.RegisterObjectParam">RegisterObjectParam() (windows.generated_def.interfaces.IBindCtx method)</a>
</li>
<li><a href="winfuncs_generated.html#windows.generated_def.winfuncs.RegisterServiceCtrlHandlerA">RegisterServiceCtrlHandlerA() (in module windows.generated_def.winfuncs)</a>
</li>
<li><a href="winfuncs_generated.html#windows.generated_def.winfuncs.RegisterServiceCtrlHandlerExA">RegisterServiceCtrlHandlerExA() (in module windows.generated_def.winfuncs)</a>
</li>
<li><a href="winfuncs_generated.html#windows.generated_def.winfuncs.RegisterServiceCtrlHandlerExW">RegisterServiceCtrlHandlerExW() (in module windows.generated_def.winfuncs)</a>
</li>
<li><a href="winfuncs_generated.html#windows.generated_def.winfuncs.RegisterServiceCtrlHandlerW">RegisterServiceCtrlHandlerW() (in module windows.generated_def.winfuncs)</a>
</li>
<li><a href="interfaces_generated.html#windows.generated_def.interfaces.ICallInterceptor.RegisterSink">RegisterSink() (windows.generated_def.interfaces.ICallInterceptor method)</a>
</li>
@@ -35521,6 +35633,8 @@
<li><a href="interfaces_generated.html#windows.generated_def.interfaces.IStandardActivator.Reset">(windows.generated_def.interfaces.IStandardActivator method)</a>
</li>
</ul></li>
</ul></td>
<td style="width: 33%; vertical-align: top;"><ul>
<li><a href="process.html#windows.winobject.apisetmap.ApiSetMap.resolution_dict">resolution_dict (windows.winobject.apisetmap.ApiSetMap property)</a>
</li>
<li><a href="winproxy.html#windows.winproxy.resolve">resolve() (in module windows.winproxy)</a>
@@ -35531,8 +35645,6 @@
<li><a href="debug.html#windows.debug.symbols.VirtualSymbolHandler.resolve">(windows.debug.symbols.VirtualSymbolHandler method)</a>
</li>
</ul></li>
</ul></td>
<td style="width: 33%; vertical-align: top;"><ul>
<li><a href="interfaces_generated.html#windows.generated_def.interfaces.IShellLinkA.Resolve">Resolve() (windows.generated_def.interfaces.IShellLinkA method)</a>
<ul>
@@ -37862,6 +37974,8 @@
<li><a href="winfuncs_generated.html#windows.generated_def.winfuncs.SetEnvironmentVariableA">SetEnvironmentVariableA() (in module windows.generated_def.winfuncs)</a>
</li>
<li><a href="winfuncs_generated.html#windows.generated_def.winfuncs.SetEnvironmentVariableW">SetEnvironmentVariableW() (in module windows.generated_def.winfuncs)</a>
</li>
<li><a href="winfuncs_generated.html#windows.generated_def.winfuncs.SetFileInformationByHandle">SetFileInformationByHandle() (in module windows.generated_def.winfuncs)</a>
</li>
<li><a href="interfaces_generated.html#windows.generated_def.interfaces.IShellLinkA.SetHotkey">SetHotkey() (windows.generated_def.interfaces.IShellLinkA method)</a>
@@ -37990,6 +38104,10 @@
<li><a href="winfuncs_generated.html#windows.generated_def.winfuncs.SetSecurityDescriptorOwner">SetSecurityDescriptorOwner() (in module windows.generated_def.winfuncs)</a>
</li>
<li><a href="winfuncs_generated.html#windows.generated_def.winfuncs.SetSecurityInfo">SetSecurityInfo() (in module windows.generated_def.winfuncs)</a>
</li>
<li><a href="winfuncs_generated.html#windows.generated_def.winfuncs.SetServiceBits">SetServiceBits() (in module windows.generated_def.winfuncs)</a>
</li>
<li><a href="winfuncs_generated.html#windows.generated_def.winfuncs.SetServiceStatus">SetServiceStatus() (in module windows.generated_def.winfuncs)</a>
</li>
<li><a href="interfaces_generated.html#windows.generated_def.interfaces.IShellLinkA.SetShowCmd">SetShowCmd() (windows.generated_def.interfaces.IShellLinkA method)</a>
@@ -40591,12 +40709,12 @@
</li>
<li><a href="ntstatus_generated.html#windows.generated_def.STATUS_FWP_DUPLICATE_CONDITION">STATUS_FWP_DUPLICATE_CONDITION (in module windows.generated_def)</a>
</li>
</ul></td>
<td style="width: 33%; vertical-align: top;"><ul>
<li><a href="ntstatus_generated.html#windows.generated_def.STATUS_FWP_DUPLICATE_KEYMOD">STATUS_FWP_DUPLICATE_KEYMOD (in module windows.generated_def)</a>
</li>
<li><a href="ntstatus_generated.html#windows.generated_def.STATUS_FWP_DYNAMIC_SESSION_IN_PROGRESS">STATUS_FWP_DYNAMIC_SESSION_IN_PROGRESS (in module windows.generated_def)</a>
</li>
</ul></td>
<td style="width: 33%; vertical-align: top;"><ul>
<li><a href="ntstatus_generated.html#windows.generated_def.STATUS_FWP_EM_NOT_SUPPORTED">STATUS_FWP_EM_NOT_SUPPORTED (in module windows.generated_def)</a>
</li>
<li><a href="ntstatus_generated.html#windows.generated_def.STATUS_FWP_FILTER_NOT_FOUND">STATUS_FWP_FILTER_NOT_FOUND (in module windows.generated_def)</a>
@@ -50909,7 +51027,7 @@
<li class="right" >
<a href="py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.1 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.3 documentation</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">Index</a></li>
</ul>
</div>
+4 -4
View File
@@ -5,12 +5,12 @@
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="viewport" content="width=device-width, initial-scale=1" />
<title>2.11. Handle Processes handles &#8212; PythonForWindows 1.0.1 documentation</title>
<title>2.11. Handle Processes handles &#8212; PythonForWindows 1.0.3 documentation</title>
<link rel="stylesheet" type="text/css" href="_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="_static/css/mbasic.css?v=957880af" />
<script src="_static/documentation_options.js?v=292eb321"></script>
<script src="_static/documentation_options.js?v=baaebd52"></script>
<script src="_static/doctools.js?v=9a2dae69"></script>
<script src="_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -34,7 +34,7 @@
<li class="right" >
<a href="wmi.html" title="2.10. WMI Make request to WMI"
accesskey="P">previous</a> |</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.1 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.3 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="winobject.html" accesskey="U"><span class="section-number">2. </span>The <code class="xref py py-mod docutils literal notranslate"><span class="pre">windows</span></code> objects</a> &#187;</li>
<li class="nav-item nav-item-this"><a href=""><span class="section-number">2.11. </span>Handle Processes handles</a></li>
</ul>
@@ -179,7 +179,7 @@
<li class="right" >
<a href="wmi.html" title="2.10. WMI Make request to WMI"
>previous</a> |</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.1 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.3 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="winobject.html" ><span class="section-number">2. </span>The <code class="xref py py-mod docutils literal notranslate"><span class="pre">windows</span></code> objects</a> &#187;</li>
<li class="nav-item nav-item-this"><a href=""><span class="section-number">2.11. </span>Handle Processes handles</a></li>
</ul>
+4 -4
View File
@@ -5,12 +5,12 @@
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="viewport" content="width=device-width, initial-scale=1" />
<title>15. IAT hooking &#8212; PythonForWindows 1.0.1 documentation</title>
<title>15. IAT hooking &#8212; PythonForWindows 1.0.3 documentation</title>
<link rel="stylesheet" type="text/css" href="_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="_static/css/mbasic.css?v=957880af" />
<script src="_static/documentation_options.js?v=292eb321"></script>
<script src="_static/documentation_options.js?v=baaebd52"></script>
<script src="_static/doctools.js?v=9a2dae69"></script>
<script src="_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -34,7 +34,7 @@
<li class="right" >
<a href="interfaces_generated.html" title="14.7. Interfaces"
accesskey="P">previous</a> |</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.1 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.3 documentation</a> &#187;</li>
<li class="nav-item nav-item-this"><a href=""><span class="section-number">15. </span>IAT hooking</a></li>
</ul>
</div>
@@ -247,7 +247,7 @@
<li class="right" >
<a href="interfaces_generated.html" title="14.7. Interfaces"
>previous</a> |</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.1 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.3 documentation</a> &#187;</li>
<li class="nav-item nav-item-this"><a href=""><span class="section-number">15. </span>IAT hooking</a></li>
</ul>
</div>
+4 -4
View File
@@ -5,12 +5,12 @@
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="viewport" content="width=device-width, initial-scale=1" />
<title>Welcome to PythonForWindowss documentation! &#8212; PythonForWindows 1.0.1 documentation</title>
<title>Welcome to PythonForWindowss documentation! &#8212; PythonForWindows 1.0.3 documentation</title>
<link rel="stylesheet" type="text/css" href="_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="_static/css/mbasic.css?v=957880af" />
<script src="_static/documentation_options.js?v=292eb321"></script>
<script src="_static/documentation_options.js?v=baaebd52"></script>
<script src="_static/doctools.js?v=9a2dae69"></script>
<script src="_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -30,7 +30,7 @@
<li class="right" >
<a href="windows.html" title="1. The windows module"
accesskey="N">next</a> |</li>
<li class="nav-item nav-item-0"><a href="#">PythonForWindows 1.0.1 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="#">PythonForWindows 1.0.3 documentation</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">Welcome to PythonForWindowss documentation!</a></li>
</ul>
</div>
@@ -310,7 +310,7 @@ Encoding errors at print time might be awkward for unicode string on python2, se
<li class="right" >
<a href="windows.html" title="1. The windows module"
>next</a> |</li>
<li class="nav-item nav-item-0"><a href="#">PythonForWindows 1.0.1 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="#">PythonForWindows 1.0.3 documentation</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">Welcome to PythonForWindowss documentation!</a></li>
</ul>
</div>
+48 -48
View File
@@ -5,12 +5,12 @@
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="viewport" content="width=device-width, initial-scale=1" />
<title>14.7. Interfaces &#8212; PythonForWindows 1.0.1 documentation</title>
<title>14.7. Interfaces &#8212; PythonForWindows 1.0.3 documentation</title>
<link rel="stylesheet" type="text/css" href="_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="_static/css/mbasic.css?v=957880af" />
<script src="_static/documentation_options.js?v=292eb321"></script>
<script src="_static/documentation_options.js?v=baaebd52"></script>
<script src="_static/doctools.js?v=9a2dae69"></script>
<script src="_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -34,7 +34,7 @@
<li class="right" >
<a href="winerror_generated.html" title="14.6. WinError"
accesskey="P">previous</a> |</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.1 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.3 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="generated.html" accesskey="U"><span class="section-number">14. </span><code class="docutils literal notranslate"><span class="pre">windows.generated_def</span></code> generated Windows defines and structures</a> &#187;</li>
<li class="nav-item nav-item-this"><a href=""><span class="section-number">14.7. </span>Interfaces</a></li>
</ul>
@@ -47,41 +47,6 @@
<section id="interfaces">
<span id="module-windows.generated_def.interfaces"></span><h1><span class="section-number">14.7. </span>Interfaces<a class="headerlink" href="#interfaces" title="Link to this heading"></a></h1>
<dl class="py class">
<dt class="sig sig-object py" id="windows.generated_def.interfaces.IActivationStageInfo">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">windows.generated_def.interfaces.</span></span><span class="sig-name descname"><span class="pre">IActivationStageInfo</span></span><a class="reference internal" href="_modules/windows/generated_def/interfaces.html#IActivationStageInfo"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#windows.generated_def.interfaces.IActivationStageInfo" title="Link to this definition"></a></dt>
<dd><dl class="py method">
<dt class="sig sig-object py" id="windows.generated_def.interfaces.IActivationStageInfo.QueryInterface">
<span class="sig-name descname"><span class="pre">QueryInterface</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#windows.generated_def.interfaces.IActivationStageInfo.QueryInterface" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="windows.generated_def.interfaces.IActivationStageInfo.AddRef">
<span class="sig-name descname"><span class="pre">AddRef</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#windows.generated_def.interfaces.IActivationStageInfo.AddRef" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="windows.generated_def.interfaces.IActivationStageInfo.Release">
<span class="sig-name descname"><span class="pre">Release</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#windows.generated_def.interfaces.IActivationStageInfo.Release" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="windows.generated_def.interfaces.IActivationStageInfo.SetStageAndIndex">
<span class="sig-name descname"><span class="pre">SetStageAndIndex</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#windows.generated_def.interfaces.IActivationStageInfo.SetStageAndIndex" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="windows.generated_def.interfaces.IActivationStageInfo.GetStage">
<span class="sig-name descname"><span class="pre">GetStage</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#windows.generated_def.interfaces.IActivationStageInfo.GetStage" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="windows.generated_def.interfaces.IActivationStageInfo.GetIndex">
<span class="sig-name descname"><span class="pre">GetIndex</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#windows.generated_def.interfaces.IActivationStageInfo.GetIndex" title="Link to this definition"></a></dt>
<dd></dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="windows.generated_def.interfaces.ICallFactory">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">windows.generated_def.interfaces.</span></span><span class="sig-name descname"><span class="pre">ICallFactory</span></span><a class="reference internal" href="_modules/windows/generated_def/interfaces.html#ICallFactory"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#windows.generated_def.interfaces.ICallFactory" title="Link to this definition"></a></dt>
@@ -2987,6 +2952,41 @@
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="windows.generated_def.interfaces.IActivationStageInfo">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">windows.generated_def.interfaces.</span></span><span class="sig-name descname"><span class="pre">IActivationStageInfo</span></span><a class="reference internal" href="_modules/windows/generated_def/interfaces.html#IActivationStageInfo"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#windows.generated_def.interfaces.IActivationStageInfo" title="Link to this definition"></a></dt>
<dd><dl class="py method">
<dt class="sig sig-object py" id="windows.generated_def.interfaces.IActivationStageInfo.QueryInterface">
<span class="sig-name descname"><span class="pre">QueryInterface</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#windows.generated_def.interfaces.IActivationStageInfo.QueryInterface" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="windows.generated_def.interfaces.IActivationStageInfo.AddRef">
<span class="sig-name descname"><span class="pre">AddRef</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#windows.generated_def.interfaces.IActivationStageInfo.AddRef" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="windows.generated_def.interfaces.IActivationStageInfo.Release">
<span class="sig-name descname"><span class="pre">Release</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#windows.generated_def.interfaces.IActivationStageInfo.Release" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="windows.generated_def.interfaces.IActivationStageInfo.SetStageAndIndex">
<span class="sig-name descname"><span class="pre">SetStageAndIndex</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#windows.generated_def.interfaces.IActivationStageInfo.SetStageAndIndex" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="windows.generated_def.interfaces.IActivationStageInfo.GetStage">
<span class="sig-name descname"><span class="pre">GetStage</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#windows.generated_def.interfaces.IActivationStageInfo.GetStage" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="windows.generated_def.interfaces.IActivationStageInfo.GetIndex">
<span class="sig-name descname"><span class="pre">GetIndex</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#windows.generated_def.interfaces.IActivationStageInfo.GetIndex" title="Link to this definition"></a></dt>
<dd></dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="windows.generated_def.interfaces.IClassClassicInfo">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">windows.generated_def.interfaces.</span></span><span class="sig-name descname"><span class="pre">IClassClassicInfo</span></span><a class="reference internal" href="_modules/windows/generated_def/interfaces.html#IClassClassicInfo"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#windows.generated_def.interfaces.IClassClassicInfo" title="Link to this definition"></a></dt>
@@ -7700,15 +7700,6 @@
<h3><a href="index.html">Table of Contents</a></h3>
<ul>
<li><a class="reference internal" href="#">14.7. Interfaces</a><ul>
<li><a class="reference internal" href="#windows.generated_def.interfaces.IActivationStageInfo"><code class="docutils literal notranslate"><span class="pre">IActivationStageInfo</span></code></a><ul>
<li><a class="reference internal" href="#windows.generated_def.interfaces.IActivationStageInfo.QueryInterface"><code class="docutils literal notranslate"><span class="pre">QueryInterface()</span></code></a></li>
<li><a class="reference internal" href="#windows.generated_def.interfaces.IActivationStageInfo.AddRef"><code class="docutils literal notranslate"><span class="pre">AddRef()</span></code></a></li>
<li><a class="reference internal" href="#windows.generated_def.interfaces.IActivationStageInfo.Release"><code class="docutils literal notranslate"><span class="pre">Release()</span></code></a></li>
<li><a class="reference internal" href="#windows.generated_def.interfaces.IActivationStageInfo.SetStageAndIndex"><code class="docutils literal notranslate"><span class="pre">SetStageAndIndex()</span></code></a></li>
<li><a class="reference internal" href="#windows.generated_def.interfaces.IActivationStageInfo.GetStage"><code class="docutils literal notranslate"><span class="pre">GetStage()</span></code></a></li>
<li><a class="reference internal" href="#windows.generated_def.interfaces.IActivationStageInfo.GetIndex"><code class="docutils literal notranslate"><span class="pre">GetIndex()</span></code></a></li>
</ul>
</li>
<li><a class="reference internal" href="#windows.generated_def.interfaces.ICallFactory"><code class="docutils literal notranslate"><span class="pre">ICallFactory</span></code></a><ul>
<li><a class="reference internal" href="#windows.generated_def.interfaces.ICallFactory.QueryInterface"><code class="docutils literal notranslate"><span class="pre">QueryInterface()</span></code></a></li>
<li><a class="reference internal" href="#windows.generated_def.interfaces.ICallFactory.AddRef"><code class="docutils literal notranslate"><span class="pre">AddRef()</span></code></a></li>
@@ -8376,6 +8367,15 @@
<li><a class="reference internal" href="#windows.generated_def.interfaces.IActivationPropertiesIn.GetReturnActivationProperties"><code class="docutils literal notranslate"><span class="pre">GetReturnActivationProperties()</span></code></a></li>
</ul>
</li>
<li><a class="reference internal" href="#windows.generated_def.interfaces.IActivationStageInfo"><code class="docutils literal notranslate"><span class="pre">IActivationStageInfo</span></code></a><ul>
<li><a class="reference internal" href="#windows.generated_def.interfaces.IActivationStageInfo.QueryInterface"><code class="docutils literal notranslate"><span class="pre">QueryInterface()</span></code></a></li>
<li><a class="reference internal" href="#windows.generated_def.interfaces.IActivationStageInfo.AddRef"><code class="docutils literal notranslate"><span class="pre">AddRef()</span></code></a></li>
<li><a class="reference internal" href="#windows.generated_def.interfaces.IActivationStageInfo.Release"><code class="docutils literal notranslate"><span class="pre">Release()</span></code></a></li>
<li><a class="reference internal" href="#windows.generated_def.interfaces.IActivationStageInfo.SetStageAndIndex"><code class="docutils literal notranslate"><span class="pre">SetStageAndIndex()</span></code></a></li>
<li><a class="reference internal" href="#windows.generated_def.interfaces.IActivationStageInfo.GetStage"><code class="docutils literal notranslate"><span class="pre">GetStage()</span></code></a></li>
<li><a class="reference internal" href="#windows.generated_def.interfaces.IActivationStageInfo.GetIndex"><code class="docutils literal notranslate"><span class="pre">GetIndex()</span></code></a></li>
</ul>
</li>
<li><a class="reference internal" href="#windows.generated_def.interfaces.IClassClassicInfo"><code class="docutils literal notranslate"><span class="pre">IClassClassicInfo</span></code></a><ul>
<li><a class="reference internal" href="#windows.generated_def.interfaces.IClassClassicInfo.QueryInterface"><code class="docutils literal notranslate"><span class="pre">QueryInterface()</span></code></a></li>
<li><a class="reference internal" href="#windows.generated_def.interfaces.IClassClassicInfo.AddRef"><code class="docutils literal notranslate"><span class="pre">AddRef()</span></code></a></li>
@@ -9499,7 +9499,7 @@
<li class="right" >
<a href="winerror_generated.html" title="14.6. WinError"
>previous</a> |</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.1 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.3 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="generated.html" ><span class="section-number">14. </span><code class="docutils literal notranslate"><span class="pre">windows.generated_def</span></code> generated Windows defines and structures</a> &#187;</li>
<li class="nav-item nav-item-this"><a href=""><span class="section-number">14.7. </span>Interfaces</a></li>
</ul>
+4 -4
View File
@@ -5,12 +5,12 @@
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="viewport" content="width=device-width, initial-scale=1" />
<title>17. Internals &#8212; PythonForWindows 1.0.1 documentation</title>
<title>17. Internals &#8212; PythonForWindows 1.0.3 documentation</title>
<link rel="stylesheet" type="text/css" href="_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="_static/css/mbasic.css?v=957880af" />
<script src="_static/documentation_options.js?v=292eb321"></script>
<script src="_static/documentation_options.js?v=baaebd52"></script>
<script src="_static/doctools.js?v=9a2dae69"></script>
<script src="_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -34,7 +34,7 @@
<li class="right" >
<a href="wip.html" title="16. Early Work In Progress"
accesskey="P">previous</a> |</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.1 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.3 documentation</a> &#187;</li>
<li class="nav-item nav-item-this"><a href=""><span class="section-number">17. </span>Internals</a></li>
</ul>
</div>
@@ -277,7 +277,7 @@ With these information we are able to know</p>
<li class="right" >
<a href="wip.html" title="16. Early Work In Progress"
>previous</a> |</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.1 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.3 documentation</a> &#187;</li>
<li class="nav-item nav-item-this"><a href=""><span class="section-number">17. </span>Internals</a></li>
</ul>
</div>
+4 -4
View File
@@ -5,12 +5,12 @@
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="viewport" content="width=device-width, initial-scale=1" />
<title>3. windows.native_exec Native Code Execution &#8212; PythonForWindows 1.0.1 documentation</title>
<title>3. windows.native_exec Native Code Execution &#8212; PythonForWindows 1.0.3 documentation</title>
<link rel="stylesheet" type="text/css" href="_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="_static/css/mbasic.css?v=957880af" />
<script src="_static/documentation_options.js?v=292eb321"></script>
<script src="_static/documentation_options.js?v=baaebd52"></script>
<script src="_static/doctools.js?v=9a2dae69"></script>
<script src="_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -34,7 +34,7 @@
<li class="right" >
<a href="etw.html" title="2.17. ETW Event Tracing for Windows"
accesskey="P">previous</a> |</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.1 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.3 documentation</a> &#187;</li>
<li class="nav-item nav-item-this"><a href=""><span class="section-number">3. </span><code class="docutils literal notranslate"><span class="pre">windows.native_exec</span></code> Native Code Execution</a></li>
</ul>
</div>
@@ -558,7 +558,7 @@ the end of your <code class="xref py py-class docutils literal notranslate"><spa
<li class="right" >
<a href="etw.html" title="2.17. ETW Event Tracing for Windows"
>previous</a> |</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.1 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.3 documentation</a> &#187;</li>
<li class="nav-item nav-item-this"><a href=""><span class="section-number">3. </span><code class="docutils literal notranslate"><span class="pre">windows.native_exec</span></code> Native Code Execution</a></li>
</ul>
</div>
+4 -4
View File
@@ -5,12 +5,12 @@
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="viewport" content="width=device-width, initial-scale=1" />
<title>2.7. Network &#8212; PythonForWindows 1.0.1 documentation</title>
<title>2.7. Network &#8212; PythonForWindows 1.0.3 documentation</title>
<link rel="stylesheet" type="text/css" href="_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="_static/css/mbasic.css?v=957880af" />
<script src="_static/documentation_options.js?v=292eb321"></script>
<script src="_static/documentation_options.js?v=baaebd52"></script>
<script src="_static/doctools.js?v=9a2dae69"></script>
<script src="_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -34,7 +34,7 @@
<li class="right" >
<a href="registry.html" title="2.6. Registry"
accesskey="P">previous</a> |</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.1 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.3 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="winobject.html" accesskey="U"><span class="section-number">2. </span>The <code class="xref py py-mod docutils literal notranslate"><span class="pre">windows</span></code> objects</a> &#187;</li>
<li class="nav-item nav-item-this"><a href=""><span class="section-number">2.7. </span>Network</a></li>
</ul>
@@ -597,7 +597,7 @@ Equals <code class="docutils literal notranslate"><span class="pre">remote_port<
<li class="right" >
<a href="registry.html" title="2.6. Registry"
>previous</a> |</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.1 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.3 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="winobject.html" ><span class="section-number">2. </span>The <code class="xref py py-mod docutils literal notranslate"><span class="pre">windows</span></code> objects</a> &#187;</li>
<li class="nav-item nav-item-this"><a href=""><span class="section-number">2.7. </span>Network</a></li>
</ul>
+4 -4
View File
@@ -5,12 +5,12 @@
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="viewport" content="width=device-width, initial-scale=1" />
<title>14.2. Ntstatus &#8212; PythonForWindows 1.0.1 documentation</title>
<title>14.2. Ntstatus &#8212; PythonForWindows 1.0.3 documentation</title>
<link rel="stylesheet" type="text/css" href="_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="_static/css/mbasic.css?v=957880af" />
<script src="_static/documentation_options.js?v=292eb321"></script>
<script src="_static/documentation_options.js?v=baaebd52"></script>
<script src="_static/doctools.js?v=9a2dae69"></script>
<script src="_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -34,7 +34,7 @@
<li class="right" >
<a href="windef_generated.html" title="14.1. WinDef"
accesskey="P">previous</a> |</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.1 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.3 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="generated.html" accesskey="U"><span class="section-number">14. </span><code class="docutils literal notranslate"><span class="pre">windows.generated_def</span></code> generated Windows defines and structures</a> &#187;</li>
<li class="nav-item nav-item-this"><a href=""><span class="section-number">14.2. </span>Ntstatus</a></li>
</ul>
@@ -10875,7 +10875,7 @@
<li class="right" >
<a href="windef_generated.html" title="14.1. WinDef"
>previous</a> |</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.1 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.3 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="generated.html" ><span class="section-number">14. </span><code class="docutils literal notranslate"><span class="pre">windows.generated_def</span></code> generated Windows defines and structures</a> &#187;</li>
<li class="nav-item nav-item-this"><a href=""><span class="section-number">14.2. </span>Ntstatus</a></li>
</ul>
+4 -4
View File
@@ -5,12 +5,12 @@
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="viewport" content="width=device-width, initial-scale=1" />
<title>2.13. Object Manager Kernel objects &#8212; PythonForWindows 1.0.1 documentation</title>
<title>2.13. Object Manager Kernel objects &#8212; PythonForWindows 1.0.3 documentation</title>
<link rel="stylesheet" type="text/css" href="_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="_static/css/mbasic.css?v=957880af" />
<script src="_static/documentation_options.js?v=292eb321"></script>
<script src="_static/documentation_options.js?v=baaebd52"></script>
<script src="_static/doctools.js?v=9a2dae69"></script>
<script src="_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -34,7 +34,7 @@
<li class="right" >
<a href="system_module.html" title="2.12. System Module Loaded kernel modules"
accesskey="P">previous</a> |</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.1 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.3 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="winobject.html" accesskey="U"><span class="section-number">2. </span>The <code class="xref py py-mod docutils literal notranslate"><span class="pre">windows</span></code> objects</a> &#187;</li>
<li class="nav-item nav-item-this"><a href=""><span class="section-number">2.13. </span>Object Manager Kernel objects</a></li>
</ul>
@@ -293,7 +293,7 @@ code <a class="reference internal" href="ntstatus_generated.html#windows.generat
<li class="right" >
<a href="system_module.html" title="2.12. System Module Loaded kernel modules"
>previous</a> |</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.1 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.3 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="winobject.html" ><span class="section-number">2. </span>The <code class="xref py py-mod docutils literal notranslate"><span class="pre">windows</span></code> objects</a> &#187;</li>
<li class="nav-item nav-item-this"><a href=""><span class="section-number">2.13. </span>Object Manager Kernel objects</a></li>
</ul>
+4 -4
View File
@@ -5,12 +5,12 @@
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="viewport" content="width=device-width, initial-scale=1" />
<title>6. windows.pipe Inter-Process Communication &#8212; PythonForWindows 1.0.1 documentation</title>
<title>6. windows.pipe Inter-Process Communication &#8212; PythonForWindows 1.0.3 documentation</title>
<link rel="stylesheet" type="text/css" href="_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="_static/css/mbasic.css?v=957880af" />
<script src="_static/documentation_options.js?v=292eb321"></script>
<script src="_static/documentation_options.js?v=baaebd52"></script>
<script src="_static/doctools.js?v=9a2dae69"></script>
<script src="_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -34,7 +34,7 @@
<li class="right" >
<a href="security.html" title="5. windows.security Security Descriptor &amp; related"
accesskey="P">previous</a> |</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.1 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.3 documentation</a> &#187;</li>
<li class="nav-item nav-item-this"><a href=""><span class="section-number">6. </span><code class="docutils literal notranslate"><span class="pre">windows.pipe</span></code> Inter-Process Communication</a></li>
</ul>
</div>
@@ -247,7 +247,7 @@
<li class="right" >
<a href="security.html" title="5. windows.security Security Descriptor &amp; related"
>previous</a> |</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.1 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.3 documentation</a> &#187;</li>
<li class="nav-item nav-item-this"><a href=""><span class="section-number">6. </span><code class="docutils literal notranslate"><span class="pre">windows.pipe</span></code> Inter-Process Communication</a></li>
</ul>
</div>
+16 -6
View File
@@ -5,12 +5,12 @@
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="viewport" content="width=device-width, initial-scale=1" />
<title>2.1. Processes and Threads &#8212; PythonForWindows 1.0.1 documentation</title>
<title>2.1. Processes and Threads &#8212; PythonForWindows 1.0.3 documentation</title>
<link rel="stylesheet" type="text/css" href="_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="_static/css/mbasic.css?v=957880af" />
<script src="_static/documentation_options.js?v=292eb321"></script>
<script src="_static/documentation_options.js?v=baaebd52"></script>
<script src="_static/doctools.js?v=9a2dae69"></script>
<script src="_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -34,7 +34,7 @@
<li class="right" >
<a href="winobject.html" title="2. The windows objects"
accesskey="P">previous</a> |</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.1 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.3 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="winobject.html" accesskey="U"><span class="section-number">2. </span>The <code class="xref py py-mod docutils literal notranslate"><span class="pre">windows</span></code> objects</a> &#187;</li>
<li class="nav-item nav-item-this"><a href=""><span class="section-number">2.1. </span>Processes and Threads</a></li>
</ul>
@@ -577,15 +577,20 @@
<dl class="py method">
<dt class="sig sig-object py" id="windows.winobject.process.WinProcess.execute_python">
<span class="sig-name descname"><span class="pre">execute_python</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">pycode</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/windows/winobject/process.html#WinProcess.execute_python"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#windows.winobject.process.WinProcess.execute_python" title="Link to this definition"></a></dt>
<dd><p>Execute Python code into the remote process.</p>
<dd><p>Execute Python code in the remote process.</p>
<p>This function waits for the remote process to end and
raises an exception if the remote thread raised one</p>
<div class="admonition note">
<p class="admonition-title">Note</p>
<p>This method is incompatible with Microsoft Store builds of python, as the interpreter DLLs do not grant execute to Users.
See workaround: <a class="reference external" href="https://github.com/hakril/PythonForWindows/tree/master/samples/process/msstore_interpreter_remote_python.py">https://github.com/hakril/PythonForWindows/tree/master/samples/process/msstore_interpreter_remote_python.py</a></p>
</div>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="windows.winobject.process.WinProcess.execute_python_unsafe">
<span class="sig-name descname"><span class="pre">execute_python_unsafe</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">pycode</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/windows/winobject/process.html#WinProcess.execute_python_unsafe"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#windows.winobject.process.WinProcess.execute_python_unsafe" title="Link to this definition"></a></dt>
<dd><p>Execute Python code into the remote process.</p>
<dd><p>Execute Python code in the remote process.</p>
<dl class="field-list simple">
<dt class="field-odd">Return type<span class="colon">:</span></dt>
<dd class="field-odd"><p><dl class="field-list simple">
@@ -596,6 +601,11 @@ raises an exception if the remote thread raised one</p>
</p>
</dd>
</dl>
<div class="admonition note">
<p class="admonition-title">Note</p>
<p>This method is incompatible with Microsoft Store builds of python, as the interpreter DLLs do not grant execute to Users.
See workaround: <a class="reference external" href="https://github.com/hakril/PythonForWindows/tree/master/samples/process/msstore_interpreter_remote_python.py">https://github.com/hakril/PythonForWindows/tree/master/samples/process/msstore_interpreter_remote_python.py</a></p>
</div>
</dd></dl>
<dl class="py method">
@@ -1836,7 +1846,7 @@ You MUST keep a reference to the hook while the hook is enabled.</p>
<li class="right" >
<a href="winobject.html" title="2. The windows objects"
>previous</a> |</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.1 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.3 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="winobject.html" ><span class="section-number">2. </span>The <code class="xref py py-mod docutils literal notranslate"><span class="pre">windows</span></code> objects</a> &#187;</li>
<li class="nav-item nav-item-this"><a href=""><span class="section-number">2.1. </span>Processes and Threads</a></li>
</ul>
+4 -4
View File
@@ -4,12 +4,12 @@
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Python Module Index &#8212; PythonForWindows 1.0.1 documentation</title>
<title>Python Module Index &#8212; PythonForWindows 1.0.3 documentation</title>
<link rel="stylesheet" type="text/css" href="_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="_static/css/mbasic.css?v=957880af" />
<script src="_static/documentation_options.js?v=292eb321"></script>
<script src="_static/documentation_options.js?v=baaebd52"></script>
<script src="_static/doctools.js?v=9a2dae69"></script>
<script src="_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -28,7 +28,7 @@
<li class="right" >
<a href="#" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.1 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.3 documentation</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">Python Module Index</a></li>
</ul>
</div>
@@ -297,7 +297,7 @@
<li class="right" >
<a href="#" title="Python Module Index"
>modules</a> |</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.1 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.3 documentation</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">Python Module Index</a></li>
</ul>
</div>
+4 -4
View File
@@ -5,12 +5,12 @@
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="viewport" content="width=device-width, initial-scale=1" />
<title>2.6. Registry &#8212; PythonForWindows 1.0.1 documentation</title>
<title>2.6. Registry &#8212; PythonForWindows 1.0.3 documentation</title>
<link rel="stylesheet" type="text/css" href="_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="_static/css/mbasic.css?v=957880af" />
<script src="_static/documentation_options.js?v=292eb321"></script>
<script src="_static/documentation_options.js?v=baaebd52"></script>
<script src="_static/doctools.js?v=9a2dae69"></script>
<script src="_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -34,7 +34,7 @@
<li class="right" >
<a href="exception.html" title="2.5. Exception and Context related structures"
accesskey="P">previous</a> |</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.1 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.3 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="winobject.html" accesskey="U"><span class="section-number">2. </span>The <code class="xref py py-mod docutils literal notranslate"><span class="pre">windows</span></code> objects</a> &#187;</li>
<li class="nav-item nav-item-this"><a href=""><span class="section-number">2.6. </span>Registry</a></li>
</ul>
@@ -333,7 +333,7 @@
<li class="right" >
<a href="exception.html" title="2.5. Exception and Context related structures"
>previous</a> |</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.1 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.3 documentation</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="winobject.html" ><span class="section-number">2. </span>The <code class="xref py py-mod docutils literal notranslate"><span class="pre">windows</span></code> objects</a> &#187;</li>
<li class="nav-item nav-item-this"><a href=""><span class="section-number">2.6. </span>Registry</a></li>
</ul>
+8 -4
View File
@@ -5,12 +5,12 @@
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="viewport" content="width=device-width, initial-scale=1" />
<title>13. windows.rpc ALPC-based Windows RPC &#8212; PythonForWindows 1.0.1 documentation</title>
<title>13. windows.rpc ALPC-based Windows RPC &#8212; PythonForWindows 1.0.3 documentation</title>
<link rel="stylesheet" type="text/css" href="_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="_static/css/mbasic.css?v=957880af" />
<script src="_static/documentation_options.js?v=292eb321"></script>
<script src="_static/documentation_options.js?v=baaebd52"></script>
<script src="_static/doctools.js?v=9a2dae69"></script>
<script src="_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -34,7 +34,7 @@
<li class="right" >
<a href="alpc.html" title="12. windows.alpc Advanced Local Procedure Call"
accesskey="P">previous</a> |</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.1 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.3 documentation</a> &#187;</li>
<li class="nav-item nav-item-this"><a href=""><span class="section-number">13. </span><code class="docutils literal notranslate"><span class="pre">windows.rpc</span></code> ALPC-based Windows RPC</a></li>
</ul>
</div>
@@ -112,6 +112,10 @@ Handle <a class="reference external" href="https://learn.microsoft.com/en-us/ope
</dd>
</dl>
</div></blockquote>
<div class="admonition note">
<p class="admonition-title">Note</p>
<p>Since <cite>1.0.3</cite> if the call is an ORPC call, the <cite>ORPCTHAT</cite> &amp; <cite>LOCALTHAT</cite> present in the response are parsed and striped from the result.</p>
</div>
</dd></dl>
<dl class="py method">
@@ -603,7 +607,7 @@ an attribute <code class="docutils literal notranslate"><span class="pre">MEMBER
<li class="right" >
<a href="alpc.html" title="12. windows.alpc Advanced Local Procedure Call"
>previous</a> |</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.1 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.3 documentation</a> &#187;</li>
<li class="nav-item nav-item-this"><a href=""><span class="section-number">13. </span><code class="docutils literal notranslate"><span class="pre">windows.rpc</span></code> ALPC-based Windows RPC</a></li>
</ul>
</div>
+213 -5
View File
@@ -5,12 +5,12 @@
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="viewport" content="width=device-width, initial-scale=1" />
<title>18. Samples of code &#8212; PythonForWindows 1.0.1 documentation</title>
<title>18. Samples of code &#8212; PythonForWindows 1.0.3 documentation</title>
<link rel="stylesheet" type="text/css" href="_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="_static/classic.css?v=def86cc0" />
<link rel="stylesheet" type="text/css" href="_static/css/mbasic.css?v=957880af" />
<script src="_static/documentation_options.js?v=292eb321"></script>
<script src="_static/documentation_options.js?v=baaebd52"></script>
<script src="_static/doctools.js?v=9a2dae69"></script>
<script src="_static/sphinx_highlight.js?v=dc90522c"></script>
@@ -34,7 +34,7 @@
<li class="right" >
<a href="internals.html" title="17. Internals"
accesskey="P">previous</a> |</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.1 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.3 documentation</a> &#187;</li>
<li class="nav-item nav-item-this"><a href=""><span class="section-number">18. </span>Samples of code</a></li>
</ul>
</div>
@@ -713,6 +713,211 @@ Service started !
- process: &lt;WinProcess &quot;!cannot-retrieve-name&quot; pid 14700 at 0x4a2c4f0&gt;
</pre></div>
</div>
<section id="windows-service-in-python">
<h3><span class="section-number">18.4.1. </span>Windows Service in Python<a class="headerlink" href="#windows-service-in-python" title="Link to this heading"></a></h3>
<p>This script can register itself as a service and act on <cite>stop</cite> request.
It also can delete its own service.</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="c1"># A python script able to install itself as a service</span>
<span class="kn">import</span> <span class="nn">sys</span>
<span class="kn">import</span> <span class="nn">os.path</span>
<span class="kn">import</span> <span class="nn">argparse</span>
<span class="kn">import</span> <span class="nn">datetime</span>
<span class="kn">import</span> <span class="nn">ctypes</span>
<span class="kn">import</span> <span class="nn">windows</span>
<span class="kn">import</span> <span class="nn">windows.generated_def</span> <span class="k">as</span> <span class="nn">gdef</span>
<span class="n">SERVICE_NAME</span> <span class="o">=</span> <span class="sa">u</span><span class="s2">&quot;PFW_SERVICE_DEMO&quot;</span>
<span class="n">SERVICE_DESCRIPTION</span> <span class="o">=</span> <span class="sa">u</span><span class="s2">&quot;PythonForWindows demo service&quot;</span>
<span class="n">SERVICE_LOGFILE</span> <span class="o">=</span> <span class="n">os</span><span class="o">.</span><span class="n">path</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="n">os</span><span class="o">.</span><span class="n">path</span><span class="o">.</span><span class="n">dirname</span><span class="p">(</span><span class="vm">__file__</span><span class="p">),</span> <span class="s2">&quot;pfw_service_logs.txt&quot;</span><span class="p">)</span>
<span class="n">SERVICE_HANDLE</span> <span class="o">=</span> <span class="kc">None</span>
<span class="k">def</span> <span class="nf">install_demo_service</span><span class="p">():</span>
<span class="n">path</span> <span class="o">=</span> <span class="s2">&quot;</span><span class="si">{executable}</span><span class="s2"> </span><span class="si">{pyfile}</span><span class="s2"> --run&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">executable</span><span class="o">=</span><span class="n">sys</span><span class="o">.</span><span class="n">executable</span><span class="p">,</span> <span class="n">pyfile</span><span class="o">=</span><span class="vm">__file__</span><span class="p">)</span>
<span class="nb">print</span><span class="p">(</span><span class="s2">&quot;Registering service &lt;</span><span class="si">{0}</span><span class="s2">&gt; as : &lt;</span><span class="si">{1}</span><span class="s2">&gt;&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">SERVICE_NAME</span><span class="p">,</span> <span class="n">path</span><span class="p">))</span>
<span class="n">newservice</span> <span class="o">=</span> <span class="n">windows</span><span class="o">.</span><span class="n">system</span><span class="o">.</span><span class="n">services</span><span class="o">.</span><span class="n">create</span><span class="p">(</span>
<span class="n">name</span><span class="o">=</span><span class="n">SERVICE_NAME</span><span class="p">,</span>
<span class="n">description</span><span class="o">=</span><span class="n">SERVICE_DESCRIPTION</span><span class="p">,</span>
<span class="n">access</span><span class="o">=</span><span class="n">gdef</span><span class="o">.</span><span class="n">SERVICE_ALL_ACCESS</span><span class="p">,</span>
<span class="nb">type</span><span class="o">=</span><span class="n">gdef</span><span class="o">.</span><span class="n">SERVICE_WIN32_OWN_PROCESS</span><span class="p">,</span>
<span class="n">start</span><span class="o">=</span><span class="n">gdef</span><span class="o">.</span><span class="n">SERVICE_DEMAND_START</span><span class="p">,</span>
<span class="n">path</span><span class="o">=</span><span class="n">path</span><span class="p">,</span>
<span class="n">user</span><span class="o">=</span><span class="kc">None</span>
<span class="p">)</span>
<span class="nb">print</span><span class="p">(</span><span class="n">newservice</span><span class="p">)</span>
<span class="k">return</span>
<span class="k">def</span> <span class="nf">uninstall_demo_service</span><span class="p">():</span>
<span class="nb">print</span><span class="p">(</span><span class="s2">&quot;Deleting service&quot;</span><span class="p">)</span>
<span class="nb">print</span><span class="p">(</span><span class="n">windows</span><span class="o">.</span><span class="n">system</span><span class="o">.</span><span class="n">services</span><span class="p">[</span><span class="n">SERVICE_NAME</span><span class="p">]</span><span class="o">.</span><span class="n">delete</span><span class="p">())</span>
<span class="k">def</span> <span class="nf">log</span><span class="p">(</span><span class="n">s</span><span class="p">):</span>
<span class="k">with</span> <span class="nb">open</span><span class="p">(</span><span class="n">SERVICE_LOGFILE</span><span class="p">,</span> <span class="s2">&quot;a&quot;</span><span class="p">)</span> <span class="k">as</span> <span class="n">f</span><span class="p">:</span>
<span class="n">f</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="s2">&quot;[</span><span class="si">{time}</span><span class="s2">] </span><span class="si">{s}</span><span class="se">\n</span><span class="s2">&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">time</span><span class="o">=</span><span class="n">datetime</span><span class="o">.</span><span class="n">datetime</span><span class="o">.</span><span class="n">now</span><span class="p">(),</span> <span class="n">s</span><span class="o">=</span><span class="n">s</span><span class="p">))</span>
<span class="nd">@ctypes</span><span class="o">.</span><span class="n">WINFUNCTYPE</span><span class="p">(</span><span class="n">gdef</span><span class="o">.</span><span class="n">DWORD</span><span class="p">,</span> <span class="n">gdef</span><span class="o">.</span><span class="n">DWORD</span><span class="p">,</span> <span class="n">gdef</span><span class="o">.</span><span class="n">DWORD</span><span class="p">,</span> <span class="n">gdef</span><span class="o">.</span><span class="n">PVOID</span><span class="p">,</span> <span class="n">gdef</span><span class="o">.</span><span class="n">PVOID</span><span class="p">)</span>
<span class="k">def</span> <span class="nf">service_handlerex</span><span class="p">(</span><span class="n">dwControl</span><span class="p">,</span> <span class="n">dwEventType</span><span class="p">,</span> <span class="n">lpEventData</span><span class="p">,</span> <span class="n">lpContext</span><span class="p">):</span>
<span class="n">log</span><span class="p">(</span><span class="s2">&quot;in service_handlerex&quot;</span><span class="p">)</span>
<span class="n">log</span><span class="p">(</span><span class="s2">&quot;service_handlerex: called with </span><span class="si">{0}</span><span class="s2">&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">dwControl</span><span class="p">))</span>
<span class="k">if</span> <span class="n">dwControl</span> <span class="o">==</span> <span class="n">gdef</span><span class="o">.</span><span class="n">SERVICE_CONTROL_STOP</span><span class="p">:</span>
<span class="n">log</span><span class="p">(</span><span class="s2">&quot;Stopping the service&quot;</span><span class="p">)</span>
<span class="n">running_status</span> <span class="o">=</span> <span class="n">gdef</span><span class="o">.</span><span class="n">SERVICE_STATUS</span><span class="p">(</span>
<span class="n">dwServiceSpecificExitCode</span><span class="o">=</span><span class="mi">0</span><span class="p">,</span>
<span class="n">dwServiceType</span> <span class="o">=</span><span class="n">gdef</span><span class="o">.</span><span class="n">SERVICE_WIN32_OWN_PROCESS</span><span class="p">,</span>
<span class="n">dwCurrentState</span><span class="o">=</span><span class="n">gdef</span><span class="o">.</span><span class="n">SERVICE_STOPPED</span><span class="p">,</span>
<span class="n">dwWin32ExitCode</span><span class="o">=</span><span class="n">gdef</span><span class="o">.</span><span class="n">NO_ERROR</span><span class="p">,</span>
<span class="n">dwControlsAccepted</span><span class="o">=</span><span class="mi">0</span>
<span class="p">)</span>
<span class="k">try</span><span class="p">:</span>
<span class="n">windows</span><span class="o">.</span><span class="n">winproxy</span><span class="o">.</span><span class="n">SetServiceStatus</span><span class="p">(</span><span class="n">SERVICE_HANDLE</span><span class="p">,</span> <span class="n">running_status</span><span class="p">)</span>
<span class="k">except</span> <span class="ne">Exception</span> <span class="k">as</span> <span class="n">e</span><span class="p">:</span>
<span class="n">log</span><span class="p">(</span><span class="nb">str</span><span class="p">(</span><span class="n">e</span><span class="p">))</span>
<span class="k">return</span> <span class="mi">0</span>
<span class="nd">@ctypes</span><span class="o">.</span><span class="n">WINFUNCTYPE</span><span class="p">(</span><span class="n">gdef</span><span class="o">.</span><span class="n">PVOID</span><span class="p">,</span> <span class="n">gdef</span><span class="o">.</span><span class="n">DWORD</span><span class="p">,</span> <span class="n">ctypes</span><span class="o">.</span><span class="n">POINTER</span><span class="p">(</span><span class="n">gdef</span><span class="o">.</span><span class="n">LPWSTR</span><span class="p">))</span>
<span class="k">def</span> <span class="nf">service_main</span><span class="p">(</span><span class="n">dwNumServicesArgs</span><span class="p">,</span> <span class="n">lpServiceArgVectors</span><span class="p">):</span>
<span class="k">global</span> <span class="n">SERVICE_HANDLE</span>
<span class="n">log</span><span class="p">(</span><span class="s2">&quot;In service_main&quot;</span><span class="p">)</span>
<span class="n">log</span><span class="p">(</span><span class="s2">&quot;service_main: </span><span class="si">{0}</span><span class="s2">&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">dwNumServicesArgs</span><span class="p">))</span>
<span class="n">log</span><span class="p">(</span><span class="s2">&quot;service_main: </span><span class="si">{0}</span><span class="s2">&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">lpServiceArgVectors</span><span class="p">[</span><span class="mi">0</span><span class="p">]))</span>
<span class="k">try</span><span class="p">:</span>
<span class="n">log</span><span class="p">(</span><span class="s2">&quot;Calling RegisterServiceCtrlHandlerExW&quot;</span><span class="p">)</span>
<span class="n">SERVICE_HANDLE</span> <span class="o">=</span> <span class="n">windows</span><span class="o">.</span><span class="n">winproxy</span><span class="o">.</span><span class="n">RegisterServiceCtrlHandlerExW</span><span class="p">(</span><span class="n">SERVICE_NAME</span><span class="p">,</span> <span class="n">ctypes</span><span class="o">.</span><span class="n">cast</span><span class="p">(</span><span class="n">service_handlerex</span><span class="p">,</span> <span class="n">gdef</span><span class="o">.</span><span class="n">PVOID</span><span class="p">),</span> <span class="kc">None</span><span class="p">)</span>
<span class="n">log</span><span class="p">(</span><span class="s2">&quot;RegisterServiceCtrlHandlerExW handle: </span><span class="si">{0}</span><span class="s2">&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">SERVICE_HANDLE</span><span class="p">))</span>
<span class="n">running_status</span> <span class="o">=</span> <span class="n">gdef</span><span class="o">.</span><span class="n">SERVICE_STATUS</span><span class="p">(</span>
<span class="n">dwServiceSpecificExitCode</span><span class="o">=</span><span class="mi">0</span><span class="p">,</span>
<span class="n">dwServiceType</span> <span class="o">=</span><span class="n">gdef</span><span class="o">.</span><span class="n">SERVICE_WIN32_OWN_PROCESS</span><span class="p">,</span>
<span class="n">dwCurrentState</span><span class="o">=</span><span class="n">gdef</span><span class="o">.</span><span class="n">SERVICE_RUNNING</span><span class="p">,</span>
<span class="n">dwWin32ExitCode</span><span class="o">=</span><span class="n">gdef</span><span class="o">.</span><span class="n">NO_ERROR</span><span class="p">,</span>
<span class="n">dwControlsAccepted</span><span class="o">=</span><span class="n">gdef</span><span class="o">.</span><span class="n">SERVICE_ACCEPT_STOP</span> <span class="o">|</span> <span class="n">gdef</span><span class="o">.</span><span class="n">SERVICE_ACCEPT_PAUSE_CONTINUE</span>
<span class="p">)</span>
<span class="n">res</span> <span class="o">=</span> <span class="n">windows</span><span class="o">.</span><span class="n">winproxy</span><span class="o">.</span><span class="n">SetServiceStatus</span><span class="p">(</span><span class="n">SERVICE_HANDLE</span><span class="p">,</span> <span class="n">running_status</span><span class="p">)</span>
<span class="n">log</span><span class="p">(</span><span class="s2">&quot;Service is running : </span><span class="si">{0}</span><span class="s2">&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">res</span><span class="p">))</span>
<span class="k">except</span> <span class="ne">Exception</span> <span class="k">as</span> <span class="n">e</span><span class="p">:</span>
<span class="n">log</span><span class="p">(</span><span class="nb">str</span><span class="p">(</span><span class="n">e</span><span class="p">))</span>
<span class="k">raise</span>
<span class="k">return</span> <span class="kc">None</span>
<span class="k">def</span> <span class="nf">run_demo_service</span><span class="p">():</span>
<span class="n">log</span><span class="p">(</span><span class="s2">&quot;start of run_demo_service()&quot;</span><span class="p">)</span>
<span class="k">try</span><span class="p">:</span>
<span class="n">SERVICE_TABLE</span> <span class="o">=</span> <span class="p">(</span><span class="n">gdef</span><span class="o">.</span><span class="n">SERVICE_TABLE_ENTRYW</span> <span class="o">*</span> <span class="mi">2</span><span class="p">)(</span>
<span class="n">gdef</span><span class="o">.</span><span class="n">SERVICE_TABLE_ENTRYW</span><span class="p">(</span><span class="n">SERVICE_NAME</span><span class="p">,</span> <span class="n">ctypes</span><span class="o">.</span><span class="n">cast</span><span class="p">(</span><span class="n">service_main</span><span class="p">,</span> <span class="n">gdef</span><span class="o">.</span><span class="n">PVOID</span><span class="p">)),</span>
<span class="n">gdef</span><span class="o">.</span><span class="n">SERVICE_TABLE_ENTRYW</span><span class="p">(</span><span class="kc">None</span><span class="p">,</span> <span class="kc">None</span><span class="p">),</span>
<span class="p">)</span>
<span class="n">log</span><span class="p">(</span><span class="s2">&quot;Calling: StartServiceCtrlDispatcherW()&quot;</span><span class="p">)</span>
<span class="n">result</span> <span class="o">=</span> <span class="n">windows</span><span class="o">.</span><span class="n">winproxy</span><span class="o">.</span><span class="n">StartServiceCtrlDispatcherW</span><span class="p">(</span><span class="n">SERVICE_TABLE</span><span class="p">)</span>
<span class="n">log</span><span class="p">(</span><span class="s2">&quot;StartServiceCtrlDispatcherW returned: </span><span class="si">{0}</span><span class="s2">&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">result</span><span class="p">))</span>
<span class="n">log</span><span class="p">(</span><span class="s2">&quot;Quitting&quot;</span><span class="p">)</span>
<span class="k">except</span> <span class="ne">Exception</span> <span class="k">as</span> <span class="n">e</span><span class="p">:</span>
<span class="n">log</span><span class="p">(</span><span class="nb">str</span><span class="p">(</span><span class="n">e</span><span class="p">))</span>
<span class="k">raise</span>
<span class="n">parser</span> <span class="o">=</span> <span class="n">argparse</span><span class="o">.</span><span class="n">ArgumentParser</span><span class="p">(</span><span class="n">prog</span><span class="o">=</span><span class="vm">__file__</span><span class="p">,</span> <span class="n">formatter_class</span><span class="o">=</span><span class="n">argparse</span><span class="o">.</span><span class="n">ArgumentDefaultsHelpFormatter</span><span class="p">)</span>
<span class="n">group</span> <span class="o">=</span> <span class="n">parser</span><span class="o">.</span><span class="n">add_mutually_exclusive_group</span><span class="p">(</span><span class="n">required</span><span class="o">=</span><span class="kc">True</span><span class="p">)</span>
<span class="n">group</span><span class="o">.</span><span class="n">add_argument</span><span class="p">(</span><span class="s2">&quot;--install&quot;</span><span class="p">,</span> <span class="n">action</span><span class="o">=</span><span class="s2">&quot;store_true&quot;</span><span class="p">,</span> <span class="n">help</span><span class="o">=</span><span class="s2">&quot;Install the service in registry&quot;</span><span class="p">)</span>
<span class="n">group</span><span class="o">.</span><span class="n">add_argument</span><span class="p">(</span><span class="s2">&quot;--uninstall&quot;</span><span class="p">,</span> <span class="n">action</span><span class="o">=</span><span class="s2">&quot;store_true&quot;</span><span class="p">,</span> <span class="n">help</span><span class="o">=</span><span class="s2">&quot;UnInstall the service in registry&quot;</span><span class="p">)</span>
<span class="n">group</span><span class="o">.</span><span class="n">add_argument</span><span class="p">(</span><span class="s2">&quot;--run&quot;</span><span class="p">,</span> <span class="n">action</span><span class="o">=</span><span class="s2">&quot;store_true&quot;</span><span class="p">,</span> <span class="n">help</span><span class="o">=</span><span class="s2">&quot;Called by the services.exe to run the service&quot;</span><span class="p">)</span>
<span class="k">if</span> <span class="vm">__name__</span> <span class="o">==</span> <span class="s2">&quot;__main__&quot;</span><span class="p">:</span>
<span class="n">args</span> <span class="o">=</span> <span class="n">parser</span><span class="o">.</span><span class="n">parse_args</span><span class="p">()</span>
<span class="k">if</span> <span class="n">args</span><span class="o">.</span><span class="n">install</span><span class="p">:</span>
<span class="n">install_demo_service</span><span class="p">()</span>
<span class="k">elif</span> <span class="n">args</span><span class="o">.</span><span class="n">uninstall</span><span class="p">:</span>
<span class="n">uninstall_demo_service</span><span class="p">()</span>
<span class="k">elif</span> <span class="n">args</span><span class="o">.</span><span class="n">run</span><span class="p">:</span>
<span class="n">log</span><span class="p">(</span><span class="s2">&quot;calling run_demo_service()&quot;</span><span class="p">)</span>
<span class="n">log</span><span class="p">(</span><span class="n">sys</span><span class="o">.</span><span class="n">argv</span><span class="p">)</span>
<span class="n">run_demo_service</span><span class="p">()</span>
<span class="k">else</span><span class="p">:</span>
<span class="k">raise</span> <span class="ne">ValueError</span><span class="p">(</span><span class="s2">&quot;Unknown argument&quot;</span><span class="p">)</span>
</pre></div>
</div>
<p>Output</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="p">(</span><span class="n">cmd</span><span class="o">-</span><span class="n">admin</span><span class="p">)</span> <span class="n">sc</span><span class="o">.</span><span class="n">exe</span> <span class="n">query</span> <span class="n">PFW_SERVICE_DEMO</span>
<span class="p">[</span><span class="n">SC</span><span class="p">]</span> <span class="n">EnumQueryServicesStatus</span><span class="p">:</span><span class="n">OpenService</span> <span class="n">FAILED</span> <span class="mi">1060</span><span class="p">:</span>
<span class="n">The</span> <span class="n">specified</span> <span class="n">service</span> <span class="n">does</span> <span class="ow">not</span> <span class="n">exist</span> <span class="k">as</span> <span class="n">an</span> <span class="n">installed</span> <span class="n">service</span><span class="o">.</span>
<span class="p">(</span><span class="n">cmd</span><span class="o">-</span><span class="n">admin</span><span class="p">)</span> <span class="n">py</span> <span class="o">.</span>\<span class="n">service</span>\<span class="n">python_service</span><span class="o">.</span><span class="n">py</span> <span class="o">--</span><span class="n">install</span>
<span class="n">Registering</span> <span class="n">service</span> <span class="o">&lt;</span><span class="n">PFW_SERVICE_DEMO</span><span class="o">&gt;</span> <span class="k">as</span> <span class="p">:</span> <span class="o">&lt;</span><span class="n">C</span><span class="p">:</span>\<span class="n">Users</span>\<span class="n">cleme</span>\<span class="n">AppData</span>\<span class="n">Local</span>\<span class="n">Programs</span>\<span class="n">Python</span>\<span class="n">Python311</span>\<span class="n">python</span><span class="o">.</span><span class="n">exe</span> <span class="n">C</span><span class="p">:</span>\<span class="n">Users</span>\<span class="n">cleme</span>\<span class="n">Documents</span>\<span class="n">projets</span>\<span class="n">PythonForWindows</span>\<span class="n">samples</span>\<span class="n">service</span>\<span class="n">python_service</span><span class="o">.</span><span class="n">py</span> <span class="o">--</span><span class="n">run</span><span class="o">&gt;</span>
<span class="o">&lt;</span><span class="n">Service</span> <span class="s2">&quot;PFW_SERVICE_DEMO&quot;</span> <span class="n">SERVICE_STOPPED</span><span class="p">(</span><span class="mh">0x1</span><span class="p">)</span><span class="o">&gt;</span>
<span class="p">(</span><span class="n">cmd</span><span class="o">-</span><span class="n">admin</span><span class="p">)</span> <span class="n">sc</span><span class="o">.</span><span class="n">exe</span> <span class="n">start</span> <span class="n">PFW_SERVICE_DEMO</span>
<span class="n">SERVICE_NAME</span><span class="p">:</span> <span class="n">PFW_SERVICE_DEMO</span>
<span class="n">TYPE</span> <span class="p">:</span> <span class="mi">10</span> <span class="n">WIN32_OWN_PROCESS</span>
<span class="n">STATE</span> <span class="p">:</span> <span class="mi">2</span> <span class="n">START_PENDING</span>
<span class="p">(</span><span class="n">NOT_STOPPABLE</span><span class="p">,</span> <span class="n">NOT_PAUSABLE</span><span class="p">,</span> <span class="n">IGNORES_SHUTDOWN</span><span class="p">)</span>
<span class="n">WIN32_EXIT_CODE</span> <span class="p">:</span> <span class="mi">0</span> <span class="p">(</span><span class="mh">0x0</span><span class="p">)</span>
<span class="n">SERVICE_EXIT_CODE</span> <span class="p">:</span> <span class="mi">0</span> <span class="p">(</span><span class="mh">0x0</span><span class="p">)</span>
<span class="n">CHECKPOINT</span> <span class="p">:</span> <span class="mh">0x0</span>
<span class="n">WAIT_HINT</span> <span class="p">:</span> <span class="mh">0x7d0</span>
<span class="n">PID</span> <span class="p">:</span> <span class="mi">21132</span>
<span class="n">FLAGS</span> <span class="p">:</span>
<span class="p">(</span><span class="n">cmd</span><span class="o">-</span><span class="n">admin</span><span class="p">)</span> <span class="n">sc</span><span class="o">.</span><span class="n">exe</span> <span class="n">query</span> <span class="n">PFW_SERVICE_DEMO</span>
<span class="n">SERVICE_NAME</span><span class="p">:</span> <span class="n">PFW_SERVICE_DEMO</span>
<span class="n">TYPE</span> <span class="p">:</span> <span class="mi">10</span> <span class="n">WIN32_OWN_PROCESS</span>
<span class="n">STATE</span> <span class="p">:</span> <span class="mi">4</span> <span class="n">RUNNING</span>
<span class="p">(</span><span class="n">STOPPABLE</span><span class="p">,</span> <span class="n">PAUSABLE</span><span class="p">,</span> <span class="n">IGNORES_SHUTDOWN</span><span class="p">)</span>
<span class="n">WIN32_EXIT_CODE</span> <span class="p">:</span> <span class="mi">0</span> <span class="p">(</span><span class="mh">0x0</span><span class="p">)</span>
<span class="n">SERVICE_EXIT_CODE</span> <span class="p">:</span> <span class="mi">0</span> <span class="p">(</span><span class="mh">0x0</span><span class="p">)</span>
<span class="n">CHECKPOINT</span> <span class="p">:</span> <span class="mh">0x0</span>
<span class="n">WAIT_HINT</span> <span class="p">:</span> <span class="mh">0x0</span>
<span class="p">(</span><span class="n">cmd</span><span class="o">-</span><span class="n">admin</span><span class="p">)</span> <span class="n">cat</span> <span class="o">.</span>\<span class="n">service</span>\<span class="n">pfw_service_logs</span><span class="o">.</span><span class="n">txt</span>
<span class="p">[</span><span class="mi">2024</span><span class="o">-</span><span class="mi">12</span><span class="o">-</span><span class="mi">31</span> <span class="mi">10</span><span class="p">:</span><span class="mi">34</span><span class="p">:</span><span class="mf">36.033158</span><span class="p">]</span> <span class="n">calling</span> <span class="n">run_demo_service</span><span class="p">()</span>
<span class="p">[</span><span class="mi">2024</span><span class="o">-</span><span class="mi">12</span><span class="o">-</span><span class="mi">31</span> <span class="mi">10</span><span class="p">:</span><span class="mi">34</span><span class="p">:</span><span class="mf">36.033158</span><span class="p">]</span> <span class="p">[</span><span class="s1">&#39;C:</span><span class="se">\\</span><span class="s1">Users</span><span class="se">\\</span><span class="s1">XXX</span><span class="se">\\</span><span class="s1">PythonForWindows</span><span class="se">\\</span><span class="s1">samples</span><span class="se">\\</span><span class="s1">service</span><span class="se">\\</span><span class="s1">python_service.py&#39;</span><span class="p">,</span> <span class="s1">&#39;--run&#39;</span><span class="p">]</span>
<span class="p">[</span><span class="mi">2024</span><span class="o">-</span><span class="mi">12</span><span class="o">-</span><span class="mi">31</span> <span class="mi">10</span><span class="p">:</span><span class="mi">34</span><span class="p">:</span><span class="mf">36.033158</span><span class="p">]</span> <span class="n">start</span> <span class="n">of</span> <span class="n">run_demo_service</span><span class="p">()</span>
<span class="p">[</span><span class="mi">2024</span><span class="o">-</span><span class="mi">12</span><span class="o">-</span><span class="mi">31</span> <span class="mi">10</span><span class="p">:</span><span class="mi">34</span><span class="p">:</span><span class="mf">36.033158</span><span class="p">]</span> <span class="n">Calling</span><span class="p">:</span> <span class="n">StartServiceCtrlDispatcherW</span><span class="p">()</span>
<span class="p">[</span><span class="mi">2024</span><span class="o">-</span><span class="mi">12</span><span class="o">-</span><span class="mi">31</span> <span class="mi">10</span><span class="p">:</span><span class="mi">34</span><span class="p">:</span><span class="mf">36.033158</span><span class="p">]</span> <span class="n">In</span> <span class="n">service_main</span>
<span class="p">[</span><span class="mi">2024</span><span class="o">-</span><span class="mi">12</span><span class="o">-</span><span class="mi">31</span> <span class="mi">10</span><span class="p">:</span><span class="mi">34</span><span class="p">:</span><span class="mf">36.033158</span><span class="p">]</span> <span class="n">service_main</span><span class="p">:</span> <span class="mi">1</span>
<span class="p">[</span><span class="mi">2024</span><span class="o">-</span><span class="mi">12</span><span class="o">-</span><span class="mi">31</span> <span class="mi">10</span><span class="p">:</span><span class="mi">34</span><span class="p">:</span><span class="mf">36.033158</span><span class="p">]</span> <span class="n">service_main</span><span class="p">:</span> <span class="n">PFW_SERVICE_DEMO</span>
<span class="p">[</span><span class="mi">2024</span><span class="o">-</span><span class="mi">12</span><span class="o">-</span><span class="mi">31</span> <span class="mi">10</span><span class="p">:</span><span class="mi">34</span><span class="p">:</span><span class="mf">36.033158</span><span class="p">]</span> <span class="n">Calling</span> <span class="n">RegisterServiceCtrlHandlerExW</span>
<span class="p">[</span><span class="mi">2024</span><span class="o">-</span><span class="mi">12</span><span class="o">-</span><span class="mi">31</span> <span class="mi">10</span><span class="p">:</span><span class="mi">34</span><span class="p">:</span><span class="mf">36.033158</span><span class="p">]</span> <span class="n">RegisterServiceCtrlHandlerExW</span> <span class="n">handle</span><span class="p">:</span> <span class="mi">2591650953424</span>
<span class="p">[</span><span class="mi">2024</span><span class="o">-</span><span class="mi">12</span><span class="o">-</span><span class="mi">31</span> <span class="mi">10</span><span class="p">:</span><span class="mi">34</span><span class="p">:</span><span class="mf">36.038274</span><span class="p">]</span> <span class="n">Service</span> <span class="ow">is</span> <span class="n">running</span> <span class="p">:</span> <span class="mi">1</span>
<span class="p">(</span><span class="n">cmd</span><span class="o">-</span><span class="n">admin</span><span class="p">)</span> <span class="n">sc</span><span class="o">.</span><span class="n">exe</span> <span class="n">stop</span> <span class="n">PFW_SERVICE_DEMO</span>
<span class="n">SERVICE_NAME</span><span class="p">:</span> <span class="n">PFW_SERVICE_DEMO</span>
<span class="n">TYPE</span> <span class="p">:</span> <span class="mi">10</span> <span class="n">WIN32_OWN_PROCESS</span>
<span class="n">STATE</span> <span class="p">:</span> <span class="mi">1</span> <span class="n">STOPPED</span>
<span class="n">WIN32_EXIT_CODE</span> <span class="p">:</span> <span class="mi">0</span> <span class="p">(</span><span class="mh">0x0</span><span class="p">)</span>
<span class="n">SERVICE_EXIT_CODE</span> <span class="p">:</span> <span class="mi">0</span> <span class="p">(</span><span class="mh">0x0</span><span class="p">)</span>
<span class="n">CHECKPOINT</span> <span class="p">:</span> <span class="mh">0x0</span>
<span class="n">WAIT_HINT</span> <span class="p">:</span> <span class="mh">0x0</span>
<span class="p">(</span><span class="n">cmd</span><span class="o">-</span><span class="n">admin</span><span class="p">)</span> <span class="n">cat</span> <span class="o">.</span>\<span class="n">service</span>\<span class="n">pfw_service_logs</span><span class="o">.</span><span class="n">txt</span>
<span class="p">[</span><span class="o">...</span><span class="p">]</span>
<span class="p">[</span><span class="mi">2024</span><span class="o">-</span><span class="mi">12</span><span class="o">-</span><span class="mi">31</span> <span class="mi">10</span><span class="p">:</span><span class="mi">34</span><span class="p">:</span><span class="mf">36.038274</span><span class="p">]</span> <span class="n">Service</span> <span class="ow">is</span> <span class="n">running</span> <span class="p">:</span> <span class="mi">1</span>
<span class="p">[</span><span class="mi">2024</span><span class="o">-</span><span class="mi">12</span><span class="o">-</span><span class="mi">31</span> <span class="mi">10</span><span class="p">:</span><span class="mi">34</span><span class="p">:</span><span class="mf">53.422375</span><span class="p">]</span> <span class="ow">in</span> <span class="n">service_handlerex</span>
<span class="p">[</span><span class="mi">2024</span><span class="o">-</span><span class="mi">12</span><span class="o">-</span><span class="mi">31</span> <span class="mi">10</span><span class="p">:</span><span class="mi">34</span><span class="p">:</span><span class="mf">53.422375</span><span class="p">]</span> <span class="n">service_handlerex</span><span class="p">:</span> <span class="n">called</span> <span class="k">with</span> <span class="mi">1</span>
<span class="p">[</span><span class="mi">2024</span><span class="o">-</span><span class="mi">12</span><span class="o">-</span><span class="mi">31</span> <span class="mi">10</span><span class="p">:</span><span class="mi">34</span><span class="p">:</span><span class="mf">53.432530</span><span class="p">]</span> <span class="n">Stopping</span> <span class="n">the</span> <span class="n">service</span>
<span class="p">[</span><span class="mi">2024</span><span class="o">-</span><span class="mi">12</span><span class="o">-</span><span class="mi">31</span> <span class="mi">10</span><span class="p">:</span><span class="mi">34</span><span class="p">:</span><span class="mf">53.433035</span><span class="p">]</span> <span class="n">StartServiceCtrlDispatcherW</span> <span class="n">returned</span><span class="p">:</span> <span class="mi">1</span>
<span class="p">[</span><span class="mi">2024</span><span class="o">-</span><span class="mi">12</span><span class="o">-</span><span class="mi">31</span> <span class="mi">10</span><span class="p">:</span><span class="mi">34</span><span class="p">:</span><span class="mf">53.433035</span><span class="p">]</span> <span class="n">Quitting</span>
<span class="p">(</span><span class="n">cmd</span><span class="o">-</span><span class="n">admin</span><span class="p">)</span> <span class="n">py</span> <span class="o">.</span>\<span class="n">service</span>\<span class="n">python_service</span><span class="o">.</span><span class="n">py</span> <span class="o">--</span><span class="n">uninstall</span>
<span class="n">Deleting</span> <span class="n">service</span>
<span class="mi">1</span>
<span class="p">(</span><span class="n">cmd</span><span class="o">-</span><span class="n">admin</span><span class="p">)</span> <span class="n">sc</span><span class="o">.</span><span class="n">exe</span> <span class="n">query</span> <span class="n">PFW_SERVICE_DEMO</span>
<span class="p">[</span><span class="n">SC</span><span class="p">]</span> <span class="n">EnumQueryServicesStatus</span><span class="p">:</span><span class="n">OpenService</span> <span class="n">FAILED</span> <span class="mi">1060</span><span class="p">:</span>
<span class="n">The</span> <span class="n">specified</span> <span class="n">service</span> <span class="n">does</span> <span class="ow">not</span> <span class="n">exist</span> <span class="k">as</span> <span class="n">an</span> <span class="n">installed</span> <span class="n">service</span><span class="o">.</span>
</pre></div>
</div>
</section>
</section>
<section id="network-socket-exploration">
<span id="sample-network-exploration"></span><h2><span class="section-number">18.5. </span><code class="xref py py-class docutils literal notranslate"><span class="pre">Network</span></code> - socket exploration<a class="headerlink" href="#network-socket-exploration" title="Link to this heading"></a></h2>
@@ -4356,7 +4561,10 @@ BYE
</li>
<li><a class="reference internal" href="#token">18.2. Token</a></li>
<li><a class="reference internal" href="#windows-system">18.3. <code class="docutils literal notranslate"><span class="pre">windows.system</span></code></a></li>
<li><a class="reference internal" href="#services">18.4. Services</a></li>
<li><a class="reference internal" href="#services">18.4. Services</a><ul>
<li><a class="reference internal" href="#windows-service-in-python">18.4.1. Windows Service in Python</a></li>
</ul>
</li>
<li><a class="reference internal" href="#network-socket-exploration">18.5. <code class="xref py py-class docutils literal notranslate"><span class="pre">Network</span></code> - socket exploration</a></li>
<li><a class="reference internal" href="#registry">18.6. <code class="xref py py-class docutils literal notranslate"><span class="pre">Registry</span></code></a></li>
<li><a class="reference internal" href="#scheduled-tasks">18.7. Scheduled tasks</a></li>
@@ -4489,7 +4697,7 @@ BYE
<li class="right" >
<a href="internals.html" title="17. Internals"
>previous</a> |</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.1 documentation</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="index.html">PythonForWindows 1.0.3 documentation</a> &#187;</li>
<li class="nav-item nav-item-this"><a href=""><span class="section-number">18. </span>Samples of code</a></li>
</ul>
</div>

Some files were not shown because too many files have changed in this diff Show More