mirror of
https://github.com/hakril/PythonForWindows
synced 2026-06-08 14:31:45 +00:00
Compare commits
505 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| f920ff5644 | |||
| d6ad3343e8 | |||
| 7142a8ddb8 | |||
| cf09ed86a9 | |||
| 1509f7bd56 | |||
| c7c8830ce5 | |||
| c46f086b88 | |||
| d3e8d73ac7 | |||
| 8fa8cf9be1 | |||
| fdda80fad6 | |||
| 650c672625 | |||
| 6c00426815 | |||
| d0e8443576 | |||
| 4b71ebb174 | |||
| 35e7a8da4a | |||
| c46d76a846 | |||
| bef410a1c3 | |||
| 426d28ded9 | |||
| 5f5ad2531b | |||
| 9aaf2c6f6c | |||
| 8d5bb5c032 | |||
| e4ca049004 | |||
| 5da940a7cb | |||
| d8b1ec6536 | |||
| dd9a809a58 | |||
| 596ab22f1f | |||
| 7446517863 | |||
| 1481e9cd46 | |||
| 37d5e9089e | |||
| 87eace22a0 | |||
| 1573271634 | |||
| df8a63e918 | |||
| 85a40d84f6 | |||
| b0d6003ded | |||
| a5b5c06bcd | |||
| 520fa864b8 | |||
| 6c588cf723 | |||
| 8eb3384fcf | |||
| b4c0223377 | |||
| 11665c4608 | |||
| 45b781b96c | |||
| 83af73a872 | |||
| be935b0f68 | |||
| 8a14cc5b3a | |||
| 1ad456049a | |||
| 16e10af8d8 | |||
| ebded59c43 | |||
| a418035e1e | |||
| e3c6deeee7 | |||
| d4952e21ba | |||
| fc0c81eb70 | |||
| bd52b1a5a3 | |||
| 064b22f99e | |||
| 909669321b | |||
| 405616290f | |||
| a93c9b7f11 | |||
| 06b96e65d0 | |||
| b51a6e1808 | |||
| 26b42a0587 | |||
| 13f2993cf1 | |||
| 4113d8ad3f | |||
| 75f1121182 | |||
| 5c25e333e6 | |||
| 54b518ca5f | |||
| d094fb8209 | |||
| 017867d79d | |||
| e58d80c3c5 | |||
| d7ff43a829 | |||
| 013c35bf40 | |||
| 6a54bca39a | |||
| 2a1217e7b8 | |||
| 6ade13d6bb | |||
| b1d2d5719b | |||
| 5352013a8f | |||
| bce15d0d3c | |||
| 1889899535 | |||
| 1bc7818552 | |||
| 7c96da8c75 | |||
| 458a0d0558 | |||
| 493fe75be8 | |||
| a7b6ddedd6 | |||
| e7679ecfcf | |||
| 4e5325c8ea | |||
| 9b5be5ffd5 | |||
| 720385d15a | |||
| 2cef60377f | |||
| ce13bf08e3 | |||
| 8151292042 | |||
| 646e55c740 | |||
| 00a2f1a7d6 | |||
| 2c9a159a81 | |||
| ea6b7b932d | |||
| 314cd2b862 | |||
| 3a3e6bc931 | |||
| 234844cf12 | |||
| 1297996725 | |||
| 1a9b680fba | |||
| e37f87c35c | |||
| 6eb31e9205 | |||
| b22c5d6055 | |||
| 458774f1ac | |||
| fd00e97d80 | |||
| 533cddae97 | |||
| 57076b84dd | |||
| 1c498aa0e9 | |||
| 7abda41a9d | |||
| 3489a560fb | |||
| 6fd32762da | |||
| aab4fdc02d | |||
| ff4161602c | |||
| 8932682ba2 | |||
| b9d54b3212 | |||
| 60e3d4a2b2 | |||
| 88b93dd64e | |||
| 8beb9fa092 | |||
| f668288dfc | |||
| 43fd2b3ca4 | |||
| f89a24ae48 | |||
| d7cf3e0f8b | |||
| 54be297828 | |||
| 5da27a78d2 | |||
| f7542e686c | |||
| 029f7cba35 | |||
| 36c1eb647f | |||
| 4bbdb538de | |||
| 6ccccf7e90 | |||
| d05801dd46 | |||
| e8930af3ad | |||
| c6898a429c | |||
| 13c28422d4 | |||
| 3818bb2e3d | |||
| 2b64a6d316 | |||
| 5d7e074039 | |||
| 929959d2ac | |||
| 92b3cfcb2b | |||
| 082b13112d | |||
| 52859d19c4 | |||
| 6d621e0716 | |||
| f80c473de0 | |||
| 98abd731e4 | |||
| d0a5dc3c61 | |||
| 2644b53563 | |||
| ba704d6525 | |||
| 42546483dd | |||
| 16242d3436 | |||
| f99dc61bb2 | |||
| ddc9f16e9c | |||
| ab4a4561a3 | |||
| db8d782e3a | |||
| 6715b08ed7 | |||
| 217da0d6b1 | |||
| 7c0c130eec | |||
| 774c35d943 | |||
| b1c147dfaa | |||
| d63731f2d3 | |||
| 99c28ac035 | |||
| d6a6e6496a | |||
| c66b20f0f3 | |||
| 947093cf5b | |||
| 0c9c7d3f49 | |||
| 25534c87ca | |||
| 06a986b57e | |||
| 0a0b96a9ca | |||
| 766f1f5e0a | |||
| 57bcbca837 | |||
| 68ea3c3a02 | |||
| 9bd9ddbd7a | |||
| d79f7c609a | |||
| 22672613a9 | |||
| 1cb8ad02c9 | |||
| 3428acc580 | |||
| ee37178bcf | |||
| f2a287d818 | |||
| e69302449c | |||
| 1f86a8a1c5 | |||
| 2737a64fd7 | |||
| 9163e981fc | |||
| 17d4644973 | |||
| 315ad8ed9e | |||
| da0f403507 | |||
| 31f7d1c593 | |||
| 0e9edcf440 | |||
| 0b0b88a270 | |||
| a45ad2b48c | |||
| d535440a44 | |||
| 4b034fc0fe | |||
| c040ec368e | |||
| 9a67dca363 | |||
| 9041326d82 | |||
| ee2b0e11e5 | |||
| 4985f7bba5 | |||
| 99d39604df | |||
| 196d4dcac4 | |||
| 9c1c125931 | |||
| dce802e0f3 | |||
| 8d517f29cf | |||
| 2ff11e7e5f | |||
| e0852a2866 | |||
| 68a37443fd | |||
| 72962be653 | |||
| b25fc491df | |||
| 3de820046d | |||
| 92863f7944 | |||
| db14bc0294 | |||
| 979f7ec77a | |||
| 91c468eba0 | |||
| 0cd51a088e | |||
| 13d0b6b3b7 | |||
| cbadada375 | |||
| f90991022a | |||
| cbf456ac4f | |||
| 53554f45ab | |||
| 006dce7054 | |||
| 7475c8893e | |||
| ddb22444d2 | |||
| 1ab7d3cad6 | |||
| 50b0493364 | |||
| e3fd66b3d6 | |||
| 703c7f2ec2 | |||
| b8dd03a1ef | |||
| 6f00e753dd | |||
| 9c1c24bfda | |||
| d7d936d695 | |||
| 95c3f81619 | |||
| 8472fd12a7 | |||
| 59b3531d15 | |||
| bc13f7a497 | |||
| b1f0d74a3a | |||
| 92742a4e97 | |||
| 9770165487 | |||
| bcb6327f60 | |||
| 40f9420078 | |||
| 36b4bf38fc | |||
| 8f828a6018 | |||
| b003d9ee32 | |||
| 13dc869af6 | |||
| 4b5b924224 | |||
| 2c518a77f9 | |||
| d61067fe5e | |||
| bb4271d97b | |||
| d756cb1027 | |||
| 5ae315b317 | |||
| 6f55a4736e | |||
| cab8be5311 | |||
| d1e13fda8a | |||
| 4bcec38cc1 | |||
| 3ad9bad56e | |||
| a8414c975d | |||
| 87e1c998a6 | |||
| 736a72255b | |||
| 247140123c | |||
| 75dfe847ec | |||
| a580d825ae | |||
| 1b5097050b | |||
| 210bc648ec | |||
| 412c725fba | |||
| 6586018059 | |||
| 7a7e6935d1 | |||
| a580153da9 | |||
| 72a7f52ae2 | |||
| 4120c6e7e3 | |||
| ae5bf70b49 | |||
| 44ac6356e1 | |||
| 9ce6fcef9c | |||
| 0a2ed77302 | |||
| 33766c2ffd | |||
| 5217506705 | |||
| 99fbec8ec4 | |||
| e313510fe5 | |||
| 9eb4405cce | |||
| 7883e5f189 | |||
| 93540ddbe5 | |||
| 6bf8f77617 | |||
| ee409e4c72 | |||
| f957c640c7 | |||
| 328735bd3a | |||
| feafb52c2a | |||
| 275d054ba7 | |||
| 36db869572 | |||
| 74f5d43159 | |||
| dade97ff16 | |||
| 2db6037658 | |||
| b68369936a | |||
| 85a41fbca0 | |||
| dab2a57d75 | |||
| d3d6410276 | |||
| 9a0868da15 | |||
| 117ea557f7 | |||
| f92204a16f | |||
| d8b2770046 | |||
| e3bcde7d63 | |||
| 494317ee99 | |||
| 46daca9539 | |||
| 82d0c5cc5c | |||
| 0eb78f21bd | |||
| 0f501ab46d | |||
| f2ac6ea455 | |||
| 2828f496bd | |||
| f295a081b1 | |||
| 681fba942f | |||
| f4f9798d39 | |||
| 09fa7c49ec | |||
| c1aad71dd3 | |||
| 5d9e9a240f | |||
| 267ed1e85d | |||
| d7d2dacf33 | |||
| 3d7266ad50 | |||
| 63dd0130f1 | |||
| b8788058e5 | |||
| fdef64c57f | |||
| e156b05e0f | |||
| a7d547f994 | |||
| 5fa4ca6aae | |||
| ad59298015 | |||
| 59e2cefee0 | |||
| d23a9813e9 | |||
| 447069df32 | |||
| 77d90bc4fd | |||
| 82e3e0f3d0 | |||
| 350a11515f | |||
| 61e027a678 | |||
| f9df80ca20 | |||
| df44d38356 | |||
| 1ad2ecba0d | |||
| c4a40626b2 | |||
| fa0baf0f14 | |||
| 77dad71b7e | |||
| 735b18b369 | |||
| a814012574 | |||
| c2be36757f | |||
| 134bd844d6 | |||
| f45a997179 | |||
| 4d988d2668 | |||
| b8ceea8f22 | |||
| af7e64638c | |||
| 1de666c652 | |||
| e7789312fd | |||
| d4fd2ffdbc | |||
| 8b90c96c1a | |||
| 42fac92940 | |||
| acb66cfa78 | |||
| 522c92cb45 | |||
| 378ed31778 | |||
| 5a07f6a444 | |||
| fb9ff96a11 | |||
| 6552312275 | |||
| 5fdcbee121 | |||
| dfdad6edf0 | |||
| d68ff123b3 | |||
| 1f70bdd49a | |||
| 6fe784030f | |||
| 408fe8aaa4 | |||
| 1d128f43ab | |||
| c68dc4e29a | |||
| cd87544fc7 | |||
| 9549942e6f | |||
| 4f2e43ae6b | |||
| d05c067f65 | |||
| 015517cd71 | |||
| 4e67a5ac95 | |||
| 5052d99199 | |||
| 83ca54d182 | |||
| eab219610d | |||
| 83b02310e4 | |||
| 542eb33aa6 | |||
| 39d683ffeb | |||
| 3149961634 | |||
| 758f418965 | |||
| ca6ce73dcc | |||
| 86d02ee17d | |||
| 04cbbf3888 | |||
| caa8ef5f32 | |||
| 2cd9c287aa | |||
| 8d33e0143f | |||
| 7a368a1a23 | |||
| 8e257f9678 | |||
| 34254dfde2 | |||
| 0f49dff128 | |||
| 9bf2e61431 | |||
| 01a59a92c4 | |||
| e2ff50e6a2 | |||
| 47f3e64c84 | |||
| d8ac02e6a2 | |||
| 0fa8026c1b | |||
| e4c0f8645e | |||
| 2e48f9008a | |||
| aec35a46d5 | |||
| e70c97cbfc | |||
| 5b210b50cb | |||
| 2e7bfba3b9 | |||
| 027b7c1c64 | |||
| 3151155670 | |||
| 38aef8e497 | |||
| c666882105 | |||
| ffec0aa57e | |||
| eb131d2621 | |||
| 042e77acf1 | |||
| 654280c8a5 | |||
| 176066d917 | |||
| b59522e504 | |||
| 996487cc1f | |||
| 0ec8ae2fa6 | |||
| 78c205d248 | |||
| 6a7626eb2d | |||
| 1077541ec4 | |||
| f491c510eb | |||
| 5aed4305d6 | |||
| 97a1bb22e1 | |||
| ec0e97c075 | |||
| 7652f597f3 | |||
| 5aa181c4cf | |||
| 445c68537c | |||
| 0ee191c981 | |||
| e74089cda3 | |||
| ef580c675f | |||
| 6a5364ea1e | |||
| ed0099fd57 | |||
| bbf031e784 | |||
| 466d94c03c | |||
| 578b4d9193 | |||
| 9485ceef05 | |||
| f63f7f308a | |||
| c691d8eb84 | |||
| 91e6ef824c | |||
| 54f202731d | |||
| fefe9f397f | |||
| 546818f91b | |||
| fb23ad2838 | |||
| 7921e74647 | |||
| 5c3b0cda88 | |||
| 50f6b993de | |||
| d7c150b794 | |||
| 0cf6057b98 | |||
| 02b2ba13f9 | |||
| 92df7eaee0 | |||
| 9f69b1cefa | |||
| fe22a5ad0d | |||
| 66382b89f7 | |||
| 4dc71b0449 | |||
| 4d3b3e18ad | |||
| b27d161a6a | |||
| 80c6a747da | |||
| f403856e26 | |||
| 6a74c83670 | |||
| 889de363ca | |||
| bac3dcb55b | |||
| 2f778b69f9 | |||
| 2fddd82f00 | |||
| 46197e763a | |||
| a7175be425 | |||
| f2a6489463 | |||
| 2e1043ead4 | |||
| b490130585 | |||
| d20083c57c | |||
| fb2b63b66d | |||
| b971fa5faf | |||
| c5d8faaa4a | |||
| 5ae6fb2634 | |||
| c589a41902 | |||
| 7638080ee4 | |||
| 0ed859b95e | |||
| 6f55d2e48f | |||
| 5b55d4d693 | |||
| fbfe4344d4 | |||
| 215afaa418 | |||
| 91ef7da2e1 | |||
| 8a14fe9174 | |||
| 4f92323abf | |||
| 44d9d0dd35 | |||
| 6dd314659d | |||
| adb7d3b63a | |||
| b5371ddf33 | |||
| 4495eca6d0 | |||
| df28515b97 | |||
| 6374f91fef | |||
| 6125a1fb15 | |||
| bfeb2e6dec | |||
| 536a60c040 | |||
| 05ee89de81 | |||
| 80799fe411 | |||
| 265ef59011 | |||
| 30b05d25f1 | |||
| 6bd45e8503 | |||
| 1e42553112 | |||
| 168783af9d | |||
| b9fe4d19e5 | |||
| 6fcba46739 | |||
| 960838ae3c | |||
| 8a32e00f68 | |||
| 670bb713a2 | |||
| 032de6a848 | |||
| 7827a43d9a | |||
| b0fa864271 | |||
| 7c816acdda | |||
| 7f4ff75854 | |||
| 0697891026 | |||
| 15f399df6d | |||
| b628ca336b | |||
| b160935747 | |||
| 554a6b0572 | |||
| f9104141e5 | |||
| 5794a92168 | |||
| 578392ffde | |||
| 44e5a09564 | |||
| 4e8a765bd6 |
@@ -0,0 +1,128 @@
|
||||
name: Pytest
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- 'master'
|
||||
pull_request:
|
||||
# Allows you to run this workflow manually from the Actions tab
|
||||
workflow_dispatch:
|
||||
|
||||
|
||||
jobs:
|
||||
generate_ctypes:
|
||||
runs-on: windows-latest
|
||||
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-2022, windows-latest]
|
||||
python-version: [2.7, 3.6, 3.11]
|
||||
python-architecture: [x86, x64]
|
||||
include:
|
||||
# Translate architecture to bitness for py.exe commandline
|
||||
- python-bitness-to-test: 32
|
||||
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
|
||||
# Pfw testing need both 32b & 64b of tested python version for cross-bitness python injection tests
|
||||
|
||||
## Install the 32bits version of python3 asked
|
||||
- name: Set up Python3 ${{ matrix.python-version }} x86
|
||||
if: ${{ matrix.python-version != '2.7' }}
|
||||
uses: actions/setup-python@v5
|
||||
with:
|
||||
python-version: ${{ matrix.python-version}}
|
||||
architecture: x86
|
||||
update-environment: false
|
||||
## Install the 64bits version of python3 asked
|
||||
- name: Set up Python3 ${{ matrix.python-version }} x64
|
||||
if: ${{ matrix.python-version != '2.7' }}
|
||||
uses: actions/setup-python@v5
|
||||
with:
|
||||
python-version: ${{ matrix.python-version}}
|
||||
architecture: x64
|
||||
update-environment: false
|
||||
|
||||
# Manually install python2.7 (both version at once)
|
||||
- name: Set up Python2.7 ${{ matrix.python-version }} x86 & x64
|
||||
shell: bash
|
||||
if: ${{ matrix.python-version == '2.7' }}
|
||||
run: |
|
||||
choco install python2 --version=2.7.18 -y --no-progress --params '"/InstallDir:C:\tools\python27"'
|
||||
choco install python2 --version=2.7.18 -y --no-progress -x86 --params '"/InstallDir:C:\tools\python2732"' --force
|
||||
|
||||
- name: Listing python versions availables
|
||||
run: py -0
|
||||
|
||||
# Install PythonForWindows for both bitness
|
||||
- name: Installing PythonForWindows for both bitness
|
||||
run: |
|
||||
py -${{ matrix.python-version}}-32 setup.py install
|
||||
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 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 -v tests/
|
||||
|
||||
- name: Publish PyTest Results
|
||||
uses: EnricoMi/publish-unit-test-result-action/windows@v2
|
||||
if: always()
|
||||
with:
|
||||
files: junit/test-results.xml
|
||||
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
|
||||
|
||||
# tests_arm64:
|
||||
# needs: generate_ctypes
|
||||
# timeout-minutes: 15
|
||||
# runs-on: windows-ARM64
|
||||
# continue-on-error: true
|
||||
#
|
||||
# strategy:
|
||||
# fail-fast: false
|
||||
# matrix:
|
||||
# python-version: [3.11]
|
||||
# python-architecture: [x86, x64, arm64]
|
||||
# include:
|
||||
# # Translate architecture to bitness for py.exe commandline
|
||||
# - python-bitness-to-test: 32
|
||||
# python-architecture: x86
|
||||
# - python-bitness-to-test: 64
|
||||
# python-architecture: x64
|
||||
# - python-bitness-to-test: arm64
|
||||
# python-architecture: arm64
|
||||
#
|
||||
# steps:
|
||||
# - uses: actions/checkout@v4
|
||||
#
|
||||
# - name: Listing python versions availables
|
||||
# run: py -0
|
||||
#
|
||||
# - name: Testing PFW execute
|
||||
# run: py -${{ matrix.python-version}}-${{ matrix.python-bitness-to-test}} -c "import windows; print(windows)"
|
||||
#
|
||||
# - name: Arm64 pytests
|
||||
# run: py -${{ matrix.python-version}}-${{ matrix.python-bitness-to-test}} -m pytest tests -k "not test_debugger" -v -s -r fEsx
|
||||
+7
-1
@@ -2,7 +2,13 @@
|
||||
doctrees
|
||||
*.inv
|
||||
*.pickle
|
||||
*.ignore
|
||||
*.code-workspace
|
||||
|
||||
.vscode/
|
||||
.cache/
|
||||
dist/
|
||||
dist/
|
||||
build/
|
||||
docs/BuildDocEnv/
|
||||
playground/
|
||||
*egg-info/
|
||||
@@ -1,3 +1,13 @@
|
||||
1.0.0:
|
||||
|
||||
Unicode everywhere:
|
||||
Whenever possible, PythonForWindows use W() (wide) APIs and returns unicode string.
|
||||
This means `str` for python3 & `unicode` for python2.7
|
||||
|
||||
windows.system.build_number now returns a int : the actual build number
|
||||
windows.system.build_number became windows.system.versionstr
|
||||
|
||||
|
||||
Between 0.4 & 0.5:
|
||||
== New features ==
|
||||
- windows.security
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
Copyright (c) 2016, Rouault Clement
|
||||
Copyright (c) 2016-2024, Rouault Clement
|
||||
All rights reserved.
|
||||
|
||||
Redistribution and use in source and binary forms, with or without modification,
|
||||
|
||||
@@ -1,31 +1,53 @@
|
||||
# PythonForWindows
|
||||
|
||||
PythonForWindows is a base of code aimed to make interaction with `Windows` (on X86/X64) easier (for both 32 and 64 bits Python).
|
||||
[](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.
|
||||
It also tries to make the barrier between python and native execution thinner in both ways.
|
||||
There is no external dependencies but it relies heavily on the `ctypes` module.
|
||||
|
||||
|
||||
Some of this code is clean (IMHO) and some parts are just a wreck that works for now.
|
||||
Let's say that the codebase evolves with my needs and my curiosity.
|
||||
Let's say that the codebase evolves with my needs, my researches and my curiosity.
|
||||
|
||||
Complete online documentation is available [here][ONLINE_DOC]
|
||||
You can find some examples of code in the [samples directory][SAMPLE_DIR] or [online][ONLINE_SAMPLE].
|
||||
|
||||
Parts of PythonForWindows are used in the [LKD project][LKD_GITHUB].
|
||||
PythonForWindows is principally known for:
|
||||
|
||||
If you have any issue, question, suggestion do not hesitate to contact me.
|
||||
- its ALPC-RPC Client (see [samples](https://hakril.github.io/PythonForWindows/build/html/sample.html#windows-rpc))
|
||||
- its generated [ctypes definitions](https://github.com/hakril/PythonForWindows/tree/master/windows/generated_def).
|
||||
|
||||
|
||||
|
||||
If you have any issue, question or suggestion do not hesitate to create an issue or reach me out.
|
||||
I am always glad to have feedbacks from people using this project.
|
||||
|
||||
## Installation
|
||||
|
||||
You can install PythonForWindows using the ``setup.py`` script:
|
||||
|
||||
PythonForWindows is available on [Pypi](https://pypi.org/project/PythonForWindows/) an this can be installed with
|
||||
|
||||
``
|
||||
python -m pip install PythonForWindows
|
||||
``
|
||||
|
||||
You can also install PythonForWindows by cloning it and using the ``setup.py`` script:
|
||||
|
||||
``
|
||||
python setup.py install
|
||||
``
|
||||
|
||||
Note that PythonForWindows only support Python2 at the moment.
|
||||
## 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/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.
|
||||
|
||||
### Python2
|
||||
|
||||
PythonForWindows continues to support python2.7 as its the only way to have it running on `Windows XP` & `Windows Server 2003` which are sadly still seen in production.
|
||||
Encoding errors at print time might be awkward for unicode string on python2, see the [PythonForWindows encoding guide](https://hakril.github.io/PythonForWindows/build/html/encoding.html) in the documentation.
|
||||
|
||||
|
||||
## Overview
|
||||
|
||||
@@ -515,6 +537,49 @@ The local debugger handles
|
||||
* Standard breakpoint ``int3``
|
||||
* Hardware Execution breakpoint ``DrX``
|
||||
|
||||
### Symbols
|
||||
|
||||
Classes around the Symbols APIs of `dbghelp.dll` are also implemented and can be used independently of the Debugger.
|
||||
The path of `dbghelp.dll` can also be given via the `PFW_DBGHELP_PATH` environment variable.
|
||||
|
||||
|
||||
```python
|
||||
# Python3
|
||||
|
||||
>>> from windows.debug import symbols
|
||||
>>> # symbols.set_dbghelp_path(MY_DBGHELP_PATH)
|
||||
>>> symbols.engine.options = 0 # Disable defered load
|
||||
>>> sh = symbols.VirtualSymbolHandler()
|
||||
>>> ntmod = sh.load_file(r"c:\windows\system32\ntdll.dll", addr=0x420000)
|
||||
>>> ntmod
|
||||
<SymbolModule name="ntdll" type=SymPdb pdb="ntdll.pdb" addr=0x420000>
|
||||
>>> ntmod.name
|
||||
'ntdll'
|
||||
>>> ntmod.path
|
||||
'c:\\windows\\system32\\ntdll.dll'
|
||||
>>> ntmod.pdb
|
||||
'c:\\Symbols\\ntdll.pdb\\8D5D5ED5D5B8AA609A82600C14E3004D1\\ntdll.pdb'
|
||||
>>> sym = sh["ntdll!LdrLoadDll"]
|
||||
>>> sym
|
||||
<SymbolInfoW name="LdrLoadDll" start=0x44a160 tag=SymTagFunction>
|
||||
>>> sym.fullname
|
||||
'ntdll!LdrLoadDll'
|
||||
>>> hex(sym.addr)
|
||||
'0x44a160'
|
||||
>>> sh.search("ntdll!*CreateFile")
|
||||
[<SymbolInfoW name="EtwpCreateFile" start=0x47d9ec tag=SymTagFunction>, <SymbolInfoW name="EtwpCreateFile" start=0x47d9ec tag=SymTagPublicSymbol>, <SymbolInfoW name="NtCreateFile" start=0x4c03e0 tag=SymTagPublicSymbol>, <SymbolInfoW name="ZwCreateFile" start=0x4c03e0 tag=SymTagPublicSymbol>, <SymbolInfoW name="__imp_NtCreateFile" start=0x55cb70 tag=SymTagPublicSymbol>]
|
||||
# Some types exploration
|
||||
>>> peb = sh.get_type("ntdll!_PEB")
|
||||
>>> peb
|
||||
<SymbolType name="_PEB" tag=_SymTagEnum.SymTagUDT(0xb)>
|
||||
>>> peb.size
|
||||
2000
|
||||
>>> peb.children[:3]
|
||||
[<SymbolType name="InheritedAddressSpace" tag=_SymTagEnum.SymTagData(0x7)>, <SymbolType name="ReadImageFileExecOptions" tag=_SymTagEnum.SymTagData(0x7)>, <SymbolType name="BeingDebugged" tag=_SymTagEnum.SymTagData(0x7)>]
|
||||
>>> peb.children[2].offset
|
||||
2
|
||||
```
|
||||
|
||||
### Other stuff (see doc / samples)
|
||||
|
||||
- Network
|
||||
@@ -527,8 +592,8 @@ The local debugger handles
|
||||
|
||||
[LKD_GITHUB]: https://github.com/sogeti-esec-lab/LKD/
|
||||
[SAMPLE_DIR]: https://github.com/hakril/PythonForWindows/tree/master/samples
|
||||
[ONLINE_DOC]: http://hakril.github.io/PythonForWindows/
|
||||
[ONLINE_SAMPLE]: http://hakril.github.io/PythonForWindows/build/html/sample.html
|
||||
[ONLINE_SAMPLE_ALPC]: http://hakril.github.io/PythonForWindows/build/html/sample.html#windows-alpc
|
||||
[ONLINE_SAMPLE_RPC]: http://hakril.github.io/PythonForWindows/build/html/sample.html#windows-rpc
|
||||
[ONLINE_IATHOOK]: http://hakril.github.io/PythonForWindows/build/html/iat_hook.html
|
||||
[ONLINE_DOC]: https://hakril.github.io/PythonForWindows/
|
||||
[ONLINE_SAMPLE]: https://hakril.github.io/PythonForWindows/build/html/sample.html
|
||||
[ONLINE_SAMPLE_ALPC]: https://hakril.github.io/PythonForWindows/build/html/sample.html#windows-alpc
|
||||
[ONLINE_SAMPLE_RPC]: https://hakril.github.io/PythonForWindows/build/html/sample.html#windows-rpc
|
||||
[ONLINE_IATHOOK]: https://hakril.github.io/PythonForWindows/build/html/iat_hook.html
|
||||
@@ -9,10 +9,13 @@ from simpleparser import *
|
||||
class WinComParser(Parser):
|
||||
PARAM_INFO = ["__RPC__deref_out", "__RPC__in", "__RPC__deref_out_opt", "__RPC__out", "__RPC__in_opt",
|
||||
"__RPC__deref_opt_inout_opt", "__in", "__out", "__out_opt", "__in_opt", "__inout",
|
||||
"__reserved", "__RPC__in_opt_string", "__RPC__inout_opt", "__RPC__in_string", "__deref_out_opt", "__RPC__inout"]
|
||||
"__reserved", "__RPC__in_opt_string", "__RPC__inout_opt", "__RPC__in_string", "__deref_out_opt", "__RPC__inout",
|
||||
"__RPC__deref_out_opt_string", "_COM_Outptr_", "_In_", "_In_opt_", "_Out_", "__deref_out"]
|
||||
PARAM_INFO_WITH_VALUE = ["__RPC__in_ecount", "__RPC__out_ecount_part", "__RPC__in_ecount_full",
|
||||
"__RPC__in_range", "__RPC__out_ecount_full", "__out_ecount_opt", "__out_ecount", "__in_ecount_opt",
|
||||
"__in_ecount", "__out_bcount_opt", "__out_bcount", "__in_bcount", "__in_bcount_opt", "__RPC__out_ecount_full_string"]
|
||||
"__in_ecount", "__out_bcount_opt", "__out_bcount", "__in_bcount", "__in_bcount_opt", "__RPC__out_ecount_full_string",
|
||||
"__RPC__deref_out_ecount_full_opt", "__out_ecount_part", "__deref_out_range", "__out_bcount_part",
|
||||
"_Outptr_result_buffer_"]
|
||||
|
||||
def __init__(self, data):
|
||||
# data = self.initial_processing(data)
|
||||
@@ -34,9 +37,13 @@ class WinComParser(Parser):
|
||||
if ign.value in self.PARAM_INFO_WITH_VALUE:
|
||||
# pass __RPC__in_ecount(cNames)
|
||||
self.assert_token_type(OpenParenthesisToken)
|
||||
while type(self.peek()) != CloseParenthesisToken:
|
||||
self.next_token()
|
||||
self.next_token()
|
||||
depth = 1
|
||||
while depth:
|
||||
ntok = self.next_token()
|
||||
if type(ntok) == CloseParenthesisToken:
|
||||
depth -= 1
|
||||
elif type(ntok) == OpenParenthesisToken:
|
||||
depth +=1
|
||||
if self.peek() == KeywordToken("const"):
|
||||
self.next_token()
|
||||
type_name = self.assert_token_type(NameToken)
|
||||
|
||||
@@ -9,6 +9,8 @@ class WinDef(object):
|
||||
self.code = code
|
||||
|
||||
def generate_ctypes(self):
|
||||
if self.code[-1] == "L" and self.code[0].isdigit():
|
||||
self.code = self.code[:-1]
|
||||
return """{0} = make_flag("{0}", {1})""".format(self.name, self.code)
|
||||
|
||||
class WinDefParser(Parser):
|
||||
|
||||
@@ -0,0 +1,39 @@
|
||||
typedef struct IBackgroundCopyFile2Vtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
__RPC__in IBackgroundCopyFile2 * This,
|
||||
/* [in] */ __RPC__in REFIID riid,
|
||||
/* [annotation][iid_is][out] */
|
||||
__RPC__deref_out void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
__RPC__in IBackgroundCopyFile2 * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
__RPC__in IBackgroundCopyFile2 * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetRemoteName )(
|
||||
__RPC__in IBackgroundCopyFile2 * This,
|
||||
/* [out] */ __RPC__deref_out_opt LPWSTR *pVal);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetLocalName )(
|
||||
__RPC__in IBackgroundCopyFile2 * This,
|
||||
/* [out] */ __RPC__deref_out_opt LPWSTR *pVal);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetProgress )(
|
||||
__RPC__in IBackgroundCopyFile2 * This,
|
||||
/* [out] */ __RPC__out BG_FILE_PROGRESS *pVal);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetFileRanges )(
|
||||
__RPC__in IBackgroundCopyFile2 * This,
|
||||
/* [unique][out][in] */ __RPC__inout_opt DWORD *RangeCount,
|
||||
/* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*RangeCount) BG_FILE_RANGE **Ranges);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SetRemoteName )(
|
||||
__RPC__in IBackgroundCopyFile2 * This,
|
||||
__RPC__in LPCWSTR Val);
|
||||
|
||||
END_INTERFACE
|
||||
} IBackgroundCopyFile2Vtbl;
|
||||
@@ -0,0 +1,55 @@
|
||||
typedef struct IBackgroundCopyFile3Vtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
__RPC__in IBackgroundCopyFile3 * This,
|
||||
/* [in] */ __RPC__in REFIID riid,
|
||||
/* [annotation][iid_is][out] */
|
||||
__RPC__deref_out void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
__RPC__in IBackgroundCopyFile3 * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
__RPC__in IBackgroundCopyFile3 * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetRemoteName )(
|
||||
__RPC__in IBackgroundCopyFile3 * This,
|
||||
/* [out] */ __RPC__deref_out_opt LPWSTR *pVal);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetLocalName )(
|
||||
__RPC__in IBackgroundCopyFile3 * This,
|
||||
/* [out] */ __RPC__deref_out_opt LPWSTR *pVal);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetProgress )(
|
||||
__RPC__in IBackgroundCopyFile3 * This,
|
||||
/* [out] */ __RPC__out BG_FILE_PROGRESS *pVal);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetFileRanges )(
|
||||
__RPC__in IBackgroundCopyFile3 * This,
|
||||
/* [unique][out][in] */ __RPC__inout_opt DWORD *RangeCount,
|
||||
/* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*RangeCount) BG_FILE_RANGE **Ranges);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SetRemoteName )(
|
||||
__RPC__in IBackgroundCopyFile3 * This,
|
||||
__RPC__in LPCWSTR Val);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetTemporaryName )(
|
||||
__RPC__in IBackgroundCopyFile3 * This,
|
||||
/* [out] */ __RPC__deref_out_opt LPWSTR *pFilename);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SetValidationState )(
|
||||
__RPC__in IBackgroundCopyFile3 * This,
|
||||
/* [in] */ BOOL state);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetValidationState )(
|
||||
__RPC__in IBackgroundCopyFile3 * This,
|
||||
/* [out] */ __RPC__out BOOL *pState);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *IsDownloadedFromPeer )(
|
||||
__RPC__in IBackgroundCopyFile3 * This,
|
||||
/* [out] */ __RPC__out BOOL *pVal);
|
||||
|
||||
END_INTERFACE
|
||||
} IBackgroundCopyFile3Vtbl;
|
||||
@@ -0,0 +1,183 @@
|
||||
typedef struct IBackgroundCopyJob2Vtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
__RPC__in IBackgroundCopyJob2 * This,
|
||||
/* [in] */ __RPC__in REFIID riid,
|
||||
/* [annotation][iid_is][out] */
|
||||
__RPC__deref_out void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
__RPC__in IBackgroundCopyJob2 * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
__RPC__in IBackgroundCopyJob2 * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *AddFileSet )(
|
||||
__RPC__in IBackgroundCopyJob2 * This,
|
||||
/* [in] */ ULONG cFileCount,
|
||||
/* [size_is][in] */ __RPC__in_ecount_full(cFileCount) BG_FILE_INFO *pFileSet);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *AddFile )(
|
||||
__RPC__in IBackgroundCopyJob2 * This,
|
||||
/* [in] */ __RPC__in LPCWSTR RemoteUrl,
|
||||
/* [in] */ __RPC__in LPCWSTR LocalName);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *EnumFiles )(
|
||||
__RPC__in IBackgroundCopyJob2 * This,
|
||||
/* [out] */ __RPC__deref_out_opt IEnumBackgroundCopyFiles **pEnum);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Suspend )(
|
||||
__RPC__in IBackgroundCopyJob2 * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Resume )(
|
||||
__RPC__in IBackgroundCopyJob2 * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Cancel )(
|
||||
__RPC__in IBackgroundCopyJob2 * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Complete )(
|
||||
__RPC__in IBackgroundCopyJob2 * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetId )(
|
||||
__RPC__in IBackgroundCopyJob2 * This,
|
||||
/* [out] */ __RPC__out GUID *pVal);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetType )(
|
||||
__RPC__in IBackgroundCopyJob2 * This,
|
||||
/* [out] */ __RPC__out BG_JOB_TYPE *pVal);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetProgress )(
|
||||
__RPC__in IBackgroundCopyJob2 * This,
|
||||
/* [out] */ __RPC__out BG_JOB_PROGRESS *pVal);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetTimes )(
|
||||
__RPC__in IBackgroundCopyJob2 * This,
|
||||
/* [out] */ __RPC__out BG_JOB_TIMES *pVal);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetState )(
|
||||
__RPC__in IBackgroundCopyJob2 * This,
|
||||
/* [out] */ __RPC__out BG_JOB_STATE *pVal);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetError )(
|
||||
__RPC__in IBackgroundCopyJob2 * This,
|
||||
/* [out] */ __RPC__deref_out_opt IBackgroundCopyError **ppError);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetOwner )(
|
||||
__RPC__in IBackgroundCopyJob2 * This,
|
||||
/* [out] */ __RPC__deref_out_opt LPWSTR *pVal);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SetDisplayName )(
|
||||
__RPC__in IBackgroundCopyJob2 * This,
|
||||
/* [in] */ __RPC__in LPCWSTR Val);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetDisplayName )(
|
||||
__RPC__in IBackgroundCopyJob2 * This,
|
||||
/* [out] */ __RPC__deref_out_opt LPWSTR *pVal);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SetDescription )(
|
||||
__RPC__in IBackgroundCopyJob2 * This,
|
||||
/* [in] */ __RPC__in LPCWSTR Val);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetDescription )(
|
||||
__RPC__in IBackgroundCopyJob2 * This,
|
||||
/* [out] */ __RPC__deref_out_opt LPWSTR *pVal);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SetPriority )(
|
||||
__RPC__in IBackgroundCopyJob2 * This,
|
||||
/* [in] */ BG_JOB_PRIORITY Val);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetPriority )(
|
||||
__RPC__in IBackgroundCopyJob2 * This,
|
||||
/* [out] */ __RPC__out BG_JOB_PRIORITY *pVal);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SetNotifyFlags )(
|
||||
__RPC__in IBackgroundCopyJob2 * This,
|
||||
/* [in] */ ULONG Val);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetNotifyFlags )(
|
||||
__RPC__in IBackgroundCopyJob2 * This,
|
||||
/* [out] */ __RPC__out ULONG *pVal);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SetNotifyInterface )(
|
||||
__RPC__in IBackgroundCopyJob2 * This,
|
||||
/* [in] */ __RPC__in_opt IUnknown *Val);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetNotifyInterface )(
|
||||
__RPC__in IBackgroundCopyJob2 * This,
|
||||
/* [out] */ __RPC__deref_out_opt IUnknown **pVal);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SetMinimumRetryDelay )(
|
||||
__RPC__in IBackgroundCopyJob2 * This,
|
||||
/* [in] */ ULONG Seconds);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetMinimumRetryDelay )(
|
||||
__RPC__in IBackgroundCopyJob2 * This,
|
||||
/* [out] */ __RPC__out ULONG *Seconds);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SetNoProgressTimeout )(
|
||||
__RPC__in IBackgroundCopyJob2 * This,
|
||||
/* [in] */ ULONG Seconds);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetNoProgressTimeout )(
|
||||
__RPC__in IBackgroundCopyJob2 * This,
|
||||
/* [out] */ __RPC__out ULONG *Seconds);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetErrorCount )(
|
||||
__RPC__in IBackgroundCopyJob2 * This,
|
||||
/* [out] */ __RPC__out ULONG *Errors);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SetProxySettings )(
|
||||
__RPC__in IBackgroundCopyJob2 * This,
|
||||
/* [in] */ BG_JOB_PROXY_USAGE ProxyUsage,
|
||||
/* [unique][string][in] */ __RPC__in_opt_string const WCHAR *ProxyList,
|
||||
/* [unique][string][in] */ __RPC__in_opt_string const WCHAR *ProxyBypassList);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetProxySettings )(
|
||||
__RPC__in IBackgroundCopyJob2 * This,
|
||||
/* [out] */ __RPC__out BG_JOB_PROXY_USAGE *pProxyUsage,
|
||||
/* [out] */ __RPC__deref_out_opt LPWSTR *pProxyList,
|
||||
/* [out] */ __RPC__deref_out_opt LPWSTR *pProxyBypassList);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *TakeOwnership )(
|
||||
__RPC__in IBackgroundCopyJob2 * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SetNotifyCmdLine )(
|
||||
__RPC__in IBackgroundCopyJob2 * This,
|
||||
/* [unique][in] */ __RPC__in_opt LPCWSTR Program,
|
||||
/* [unique][in] */ __RPC__in_opt LPCWSTR Parameters);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetNotifyCmdLine )(
|
||||
__RPC__in IBackgroundCopyJob2 * This,
|
||||
/* [out] */ __RPC__deref_out_opt LPWSTR *pProgram,
|
||||
/* [out] */ __RPC__deref_out_opt LPWSTR *pParameters);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetReplyProgress )(
|
||||
__RPC__in IBackgroundCopyJob2 * This,
|
||||
/* [out][in] */ __RPC__inout BG_JOB_REPLY_PROGRESS *pProgress);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetReplyData )(
|
||||
__RPC__in IBackgroundCopyJob2 * This,
|
||||
/* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(( unsigned long )*pLength) BYTE **ppBuffer,
|
||||
/* [unique][out][in] */ __RPC__inout_opt UINT64 *pLength);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SetReplyFileName )(
|
||||
__RPC__in IBackgroundCopyJob2 * This,
|
||||
/* [unique][in] */ __RPC__in_opt LPCWSTR ReplyFileName);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetReplyFileName )(
|
||||
__RPC__in IBackgroundCopyJob2 * This,
|
||||
/* [out] */ __RPC__deref_out_opt LPWSTR *pReplyFileName);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SetCredentials )(
|
||||
__RPC__in IBackgroundCopyJob2 * This,
|
||||
__RPC__in BG_AUTH_CREDENTIALS *credentials);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *RemoveCredentials )(
|
||||
__RPC__in IBackgroundCopyJob2 * This,
|
||||
BG_AUTH_TARGET Target,
|
||||
BG_AUTH_SCHEME Scheme);
|
||||
|
||||
END_INTERFACE
|
||||
} IBackgroundCopyJob2Vtbl;
|
||||
@@ -0,0 +1,203 @@
|
||||
typedef struct IBackgroundCopyJob3Vtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
__RPC__in IBackgroundCopyJob3 * This,
|
||||
/* [in] */ __RPC__in REFIID riid,
|
||||
/* [annotation][iid_is][out] */
|
||||
__RPC__deref_out void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
__RPC__in IBackgroundCopyJob3 * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
__RPC__in IBackgroundCopyJob3 * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *AddFileSet )(
|
||||
__RPC__in IBackgroundCopyJob3 * This,
|
||||
/* [in] */ ULONG cFileCount,
|
||||
/* [size_is][in] */ __RPC__in_ecount_full(cFileCount) BG_FILE_INFO *pFileSet);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *AddFile )(
|
||||
__RPC__in IBackgroundCopyJob3 * This,
|
||||
/* [in] */ __RPC__in LPCWSTR RemoteUrl,
|
||||
/* [in] */ __RPC__in LPCWSTR LocalName);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *EnumFiles )(
|
||||
__RPC__in IBackgroundCopyJob3 * This,
|
||||
/* [out] */ __RPC__deref_out_opt IEnumBackgroundCopyFiles **pEnum);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Suspend )(
|
||||
__RPC__in IBackgroundCopyJob3 * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Resume )(
|
||||
__RPC__in IBackgroundCopyJob3 * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Cancel )(
|
||||
__RPC__in IBackgroundCopyJob3 * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Complete )(
|
||||
__RPC__in IBackgroundCopyJob3 * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetId )(
|
||||
__RPC__in IBackgroundCopyJob3 * This,
|
||||
/* [out] */ __RPC__out GUID *pVal);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetType )(
|
||||
__RPC__in IBackgroundCopyJob3 * This,
|
||||
/* [out] */ __RPC__out BG_JOB_TYPE *pVal);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetProgress )(
|
||||
__RPC__in IBackgroundCopyJob3 * This,
|
||||
/* [out] */ __RPC__out BG_JOB_PROGRESS *pVal);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetTimes )(
|
||||
__RPC__in IBackgroundCopyJob3 * This,
|
||||
/* [out] */ __RPC__out BG_JOB_TIMES *pVal);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetState )(
|
||||
__RPC__in IBackgroundCopyJob3 * This,
|
||||
/* [out] */ __RPC__out BG_JOB_STATE *pVal);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetError )(
|
||||
__RPC__in IBackgroundCopyJob3 * This,
|
||||
/* [out] */ __RPC__deref_out_opt IBackgroundCopyError **ppError);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetOwner )(
|
||||
__RPC__in IBackgroundCopyJob3 * This,
|
||||
/* [out] */ __RPC__deref_out_opt LPWSTR *pVal);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SetDisplayName )(
|
||||
__RPC__in IBackgroundCopyJob3 * This,
|
||||
/* [in] */ __RPC__in LPCWSTR Val);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetDisplayName )(
|
||||
__RPC__in IBackgroundCopyJob3 * This,
|
||||
/* [out] */ __RPC__deref_out_opt LPWSTR *pVal);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SetDescription )(
|
||||
__RPC__in IBackgroundCopyJob3 * This,
|
||||
/* [in] */ __RPC__in LPCWSTR Val);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetDescription )(
|
||||
__RPC__in IBackgroundCopyJob3 * This,
|
||||
/* [out] */ __RPC__deref_out_opt LPWSTR *pVal);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SetPriority )(
|
||||
__RPC__in IBackgroundCopyJob3 * This,
|
||||
/* [in] */ BG_JOB_PRIORITY Val);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetPriority )(
|
||||
__RPC__in IBackgroundCopyJob3 * This,
|
||||
/* [out] */ __RPC__out BG_JOB_PRIORITY *pVal);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SetNotifyFlags )(
|
||||
__RPC__in IBackgroundCopyJob3 * This,
|
||||
/* [in] */ ULONG Val);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetNotifyFlags )(
|
||||
__RPC__in IBackgroundCopyJob3 * This,
|
||||
/* [out] */ __RPC__out ULONG *pVal);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SetNotifyInterface )(
|
||||
__RPC__in IBackgroundCopyJob3 * This,
|
||||
/* [in] */ __RPC__in_opt IUnknown *Val);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetNotifyInterface )(
|
||||
__RPC__in IBackgroundCopyJob3 * This,
|
||||
/* [out] */ __RPC__deref_out_opt IUnknown **pVal);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SetMinimumRetryDelay )(
|
||||
__RPC__in IBackgroundCopyJob3 * This,
|
||||
/* [in] */ ULONG Seconds);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetMinimumRetryDelay )(
|
||||
__RPC__in IBackgroundCopyJob3 * This,
|
||||
/* [out] */ __RPC__out ULONG *Seconds);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SetNoProgressTimeout )(
|
||||
__RPC__in IBackgroundCopyJob3 * This,
|
||||
/* [in] */ ULONG Seconds);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetNoProgressTimeout )(
|
||||
__RPC__in IBackgroundCopyJob3 * This,
|
||||
/* [out] */ __RPC__out ULONG *Seconds);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetErrorCount )(
|
||||
__RPC__in IBackgroundCopyJob3 * This,
|
||||
/* [out] */ __RPC__out ULONG *Errors);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SetProxySettings )(
|
||||
__RPC__in IBackgroundCopyJob3 * This,
|
||||
/* [in] */ BG_JOB_PROXY_USAGE ProxyUsage,
|
||||
/* [unique][string][in] */ __RPC__in_opt_string const WCHAR *ProxyList,
|
||||
/* [unique][string][in] */ __RPC__in_opt_string const WCHAR *ProxyBypassList);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetProxySettings )(
|
||||
__RPC__in IBackgroundCopyJob3 * This,
|
||||
/* [out] */ __RPC__out BG_JOB_PROXY_USAGE *pProxyUsage,
|
||||
/* [out] */ __RPC__deref_out_opt LPWSTR *pProxyList,
|
||||
/* [out] */ __RPC__deref_out_opt LPWSTR *pProxyBypassList);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *TakeOwnership )(
|
||||
__RPC__in IBackgroundCopyJob3 * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SetNotifyCmdLine )(
|
||||
__RPC__in IBackgroundCopyJob3 * This,
|
||||
/* [unique][in] */ __RPC__in_opt LPCWSTR Program,
|
||||
/* [unique][in] */ __RPC__in_opt LPCWSTR Parameters);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetNotifyCmdLine )(
|
||||
__RPC__in IBackgroundCopyJob3 * This,
|
||||
/* [out] */ __RPC__deref_out_opt LPWSTR *pProgram,
|
||||
/* [out] */ __RPC__deref_out_opt LPWSTR *pParameters);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetReplyProgress )(
|
||||
__RPC__in IBackgroundCopyJob3 * This,
|
||||
/* [out][in] */ __RPC__inout BG_JOB_REPLY_PROGRESS *pProgress);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetReplyData )(
|
||||
__RPC__in IBackgroundCopyJob3 * This,
|
||||
/* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(( unsigned long )*pLength) byte **ppBuffer,
|
||||
/* [unique][out][in] */ __RPC__inout_opt UINT64 *pLength);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SetReplyFileName )(
|
||||
__RPC__in IBackgroundCopyJob3 * This,
|
||||
/* [unique][in] */ __RPC__in_opt LPCWSTR ReplyFileName);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetReplyFileName )(
|
||||
__RPC__in IBackgroundCopyJob3 * This,
|
||||
/* [out] */ __RPC__deref_out_opt LPWSTR *pReplyFileName);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SetCredentials )(
|
||||
__RPC__in IBackgroundCopyJob3 * This,
|
||||
__RPC__in BG_AUTH_CREDENTIALS *credentials);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *RemoveCredentials )(
|
||||
__RPC__in IBackgroundCopyJob3 * This,
|
||||
BG_AUTH_TARGET Target,
|
||||
BG_AUTH_SCHEME Scheme);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *ReplaceRemotePrefix )(
|
||||
__RPC__in IBackgroundCopyJob3 * This,
|
||||
/* [in] */ __RPC__in LPCWSTR OldPrefix,
|
||||
/* [in] */ __RPC__in LPCWSTR NewPrefix);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *AddFileWithRanges )(
|
||||
__RPC__in IBackgroundCopyJob3 * This,
|
||||
/* [in] */ __RPC__in LPCWSTR RemoteUrl,
|
||||
/* [in] */ __RPC__in LPCWSTR LocalName,
|
||||
/* [in] */ DWORD RangeCount,
|
||||
/* [size_is][in] */ __RPC__in_ecount_full(RangeCount) BG_FILE_RANGE *Ranges);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SetFileACLFlags )(
|
||||
__RPC__in IBackgroundCopyJob3 * This,
|
||||
/* [in] */ DWORD Flags);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetFileACLFlags )(
|
||||
__RPC__in IBackgroundCopyJob3 * This,
|
||||
/* [ref][out] */ __RPC__out DWORD *Flags);
|
||||
|
||||
END_INTERFACE
|
||||
} IBackgroundCopyJob3Vtbl;
|
||||
@@ -0,0 +1,59 @@
|
||||
typedef struct IBindCtxVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
__RPC__in IBindCtx * This,
|
||||
/* [in] */ __RPC__in REFIID riid,
|
||||
/* [annotation][iid_is][out] */
|
||||
__RPC__deref_out void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
__RPC__in IBindCtx * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
__RPC__in IBindCtx * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *RegisterObjectBound )(
|
||||
__RPC__in IBindCtx * This,
|
||||
/* [unique][in] */ __RPC__in_opt IUnknown *punk);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *RevokeObjectBound )(
|
||||
__RPC__in IBindCtx * This,
|
||||
/* [unique][in] */ __RPC__in_opt IUnknown *punk);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *ReleaseBoundObjects )(
|
||||
__RPC__in IBindCtx * This);
|
||||
|
||||
/* [local] */ HRESULT ( STDMETHODCALLTYPE *SetBindOptions )(
|
||||
IBindCtx * This,
|
||||
/* [in] */ BIND_OPTS *pbindopts);
|
||||
|
||||
/* [local] */ HRESULT ( STDMETHODCALLTYPE *GetBindOptions )(
|
||||
IBindCtx * This,
|
||||
/* [out][in] */ BIND_OPTS *pbindopts);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetRunningObjectTable )(
|
||||
__RPC__in IBindCtx * This,
|
||||
/* [out] */ __RPC__deref_out_opt IRunningObjectTable **pprot);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *RegisterObjectParam )(
|
||||
__RPC__in IBindCtx * This,
|
||||
/* [in] */ __RPC__in LPOLESTR pszKey,
|
||||
/* [unique][in] */ __RPC__in_opt IUnknown *punk);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetObjectParam )(
|
||||
__RPC__in IBindCtx * This,
|
||||
/* [in] */ __RPC__in LPOLESTR pszKey,
|
||||
/* [out] */ __RPC__deref_out_opt IUnknown **ppunk);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *EnumObjectParam )(
|
||||
__RPC__in IBindCtx * This,
|
||||
/* [out] */ __RPC__deref_out_opt IEnumString **ppenum);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *RevokeObjectParam )(
|
||||
__RPC__in IBindCtx * This,
|
||||
/* [in] */ __RPC__in LPOLESTR pszKey);
|
||||
|
||||
END_INTERFACE
|
||||
} IBindCtxVtbl;
|
||||
@@ -0,0 +1,38 @@
|
||||
typedef struct IEnumExplorerCommandVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
__RPC__in IEnumExplorerCommand * This,
|
||||
/* [in] */ __RPC__in REFIID riid,
|
||||
/* [annotation][iid_is][out] */
|
||||
__RPC__deref_out void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
__RPC__in IEnumExplorerCommand * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
__RPC__in IEnumExplorerCommand * This);
|
||||
|
||||
/* [local] */ HRESULT ( STDMETHODCALLTYPE *Next )(
|
||||
IEnumExplorerCommand * This,
|
||||
/* [annotation][in] */
|
||||
__in ULONG celt,
|
||||
/* [annotation][length_is][size_is][out] */
|
||||
__out_ecount_part(celt, *pceltFetched) IExplorerCommand **pUICommand,
|
||||
/* [annotation][out] */
|
||||
__out_opt __deref_out_range(0, celt) ULONG *pceltFetched);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Skip )(
|
||||
__RPC__in IEnumExplorerCommand * This,
|
||||
/* [in] */ ULONG celt);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Reset )(
|
||||
__RPC__in IEnumExplorerCommand * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Clone )(
|
||||
__RPC__in IEnumExplorerCommand * This,
|
||||
/* [out] */ __RPC__deref_out_opt IEnumExplorerCommand **ppenum);
|
||||
|
||||
END_INTERFACE
|
||||
} IEnumExplorerCommandVtbl;
|
||||
@@ -0,0 +1,37 @@
|
||||
typedef struct IEnumMonikerVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
__RPC__in IEnumMoniker * This,
|
||||
/* [in] */ __RPC__in REFIID riid,
|
||||
/* [annotation][iid_is][out] */
|
||||
__RPC__deref_out void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
__RPC__in IEnumMoniker * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
__RPC__in IEnumMoniker * This);
|
||||
|
||||
/* [local] */ HRESULT ( STDMETHODCALLTYPE *Next )(
|
||||
IEnumMoniker * This,
|
||||
/* [in] */ ULONG celt,
|
||||
/* [annotation] */
|
||||
__out_ecount_part(celt,*pceltFetched) IMoniker **rgelt,
|
||||
/* [annotation] */
|
||||
__out_opt ULONG *pceltFetched);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Skip )(
|
||||
__RPC__in IEnumMoniker * This,
|
||||
/* [in] */ ULONG celt);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Reset )(
|
||||
__RPC__in IEnumMoniker * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Clone )(
|
||||
__RPC__in IEnumMoniker * This,
|
||||
/* [out] */ __RPC__deref_out_opt IEnumMoniker **ppenum);
|
||||
|
||||
END_INTERFACE
|
||||
} IEnumMonikerVtbl;
|
||||
@@ -0,0 +1,38 @@
|
||||
typedef struct IEnumShellItemsVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
__RPC__in IEnumShellItems * This,
|
||||
/* [in] */ __RPC__in REFIID riid,
|
||||
/* [annotation][iid_is][out] */
|
||||
__RPC__deref_out void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
__RPC__in IEnumShellItems * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
__RPC__in IEnumShellItems * This);
|
||||
|
||||
/* [local] */ HRESULT ( STDMETHODCALLTYPE *Next )(
|
||||
IEnumShellItems * This,
|
||||
/* [annotation][in] */
|
||||
__in ULONG celt,
|
||||
/* [annotation][length_is][size_is][out] */
|
||||
__out_ecount_part(celt, *pceltFetched) IShellItem **rgelt,
|
||||
/* [annotation][out] */
|
||||
__out_opt __deref_out_range(0, celt) ULONG *pceltFetched);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Skip )(
|
||||
__RPC__in IEnumShellItems * This,
|
||||
/* [in] */ ULONG celt);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Reset )(
|
||||
__RPC__in IEnumShellItems * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Clone )(
|
||||
__RPC__in IEnumShellItems * This,
|
||||
/* [out] */ __RPC__deref_out_opt IEnumShellItems **ppenum);
|
||||
|
||||
END_INTERFACE
|
||||
} IEnumShellItemsVtbl;
|
||||
@@ -0,0 +1,37 @@
|
||||
typedef struct IEnumStringVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
__RPC__in IEnumString * This,
|
||||
/* [in] */ __RPC__in REFIID riid,
|
||||
/* [annotation][iid_is][out] */
|
||||
__RPC__deref_out void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
__RPC__in IEnumString * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
__RPC__in IEnumString * This);
|
||||
|
||||
/* [local] */ HRESULT ( STDMETHODCALLTYPE *Next )(
|
||||
IEnumString * This,
|
||||
/* [in] */ ULONG celt,
|
||||
/* [annotation] */
|
||||
__RPC__out_ecount_part(celt,*pceltFetched) LPOLESTR *rgelt,
|
||||
/* [annotation] */
|
||||
__out_opt ULONG *pceltFetched);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Skip )(
|
||||
__RPC__in IEnumString * This,
|
||||
/* [in] */ ULONG celt);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Reset )(
|
||||
__RPC__in IEnumString * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Clone )(
|
||||
__RPC__in IEnumString * This,
|
||||
/* [out] */ __RPC__deref_out_opt IEnumString **ppenum);
|
||||
|
||||
END_INTERFACE
|
||||
} IEnumStringVtbl;
|
||||
@@ -0,0 +1,56 @@
|
||||
typedef struct IExplorerCommandVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
__RPC__in IExplorerCommand * This,
|
||||
/* [in] */ __RPC__in REFIID riid,
|
||||
/* [annotation][iid_is][out] */
|
||||
__RPC__deref_out void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
__RPC__in IExplorerCommand * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
__RPC__in IExplorerCommand * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetTitle )(
|
||||
__RPC__in IExplorerCommand * This,
|
||||
/* [unique][in] */ __RPC__in_opt IShellItemArray *psiItemArray,
|
||||
/* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszName);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetIcon )(
|
||||
__RPC__in IExplorerCommand * This,
|
||||
/* [unique][in] */ __RPC__in_opt IShellItemArray *psiItemArray,
|
||||
/* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszIcon);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetToolTip )(
|
||||
__RPC__in IExplorerCommand * This,
|
||||
/* [unique][in] */ __RPC__in_opt IShellItemArray *psiItemArray,
|
||||
/* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszInfotip);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetCanonicalName )(
|
||||
__RPC__in IExplorerCommand * This,
|
||||
/* [out] */ __RPC__out GUID *pguidCommandName);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetState )(
|
||||
__RPC__in IExplorerCommand * This,
|
||||
/* [in] */ __RPC__in_opt IShellItemArray *psiItemArray,
|
||||
/* [in] */ BOOL fOkToBeSlow,
|
||||
/* [out] */ __RPC__out EXPCMDSTATE *pCmdState);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Invoke )(
|
||||
__RPC__in IExplorerCommand * This,
|
||||
/* [in] */ __RPC__in_opt IShellItemArray *psiItemArray,
|
||||
/* [unique][in] */ __RPC__in_opt IBindCtx *pbc);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetFlags )(
|
||||
__RPC__in IExplorerCommand * This,
|
||||
/* [out] */ __RPC__out EXPCMDFLAGS *pFlags);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *EnumSubCommands )(
|
||||
__RPC__in IExplorerCommand * This,
|
||||
/* [out] */ __RPC__deref_out_opt IEnumExplorerCommand **ppEnum);
|
||||
|
||||
END_INTERFACE
|
||||
} IExplorerCommandVtbl;
|
||||
@@ -0,0 +1,52 @@
|
||||
typedef struct IRunningObjectTableVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
__RPC__in IRunningObjectTable * This,
|
||||
/* [in] */ __RPC__in REFIID riid,
|
||||
/* [annotation][iid_is][out] */
|
||||
__RPC__deref_out void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
__RPC__in IRunningObjectTable * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
__RPC__in IRunningObjectTable * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Register )(
|
||||
__RPC__in IRunningObjectTable * This,
|
||||
/* [in] */ DWORD grfFlags,
|
||||
/* [unique][in] */ __RPC__in_opt IUnknown *punkObject,
|
||||
/* [unique][in] */ __RPC__in_opt IMoniker *pmkObjectName,
|
||||
/* [out] */ __RPC__out DWORD *pdwRegister);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Revoke )(
|
||||
__RPC__in IRunningObjectTable * This,
|
||||
/* [in] */ DWORD dwRegister);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *IsRunning )(
|
||||
__RPC__in IRunningObjectTable * This,
|
||||
/* [unique][in] */ __RPC__in_opt IMoniker *pmkObjectName);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetObject )(
|
||||
__RPC__in IRunningObjectTable * This,
|
||||
/* [unique][in] */ __RPC__in_opt IMoniker *pmkObjectName,
|
||||
/* [out] */ __RPC__deref_out_opt IUnknown **ppunkObject);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *NoteChangeTime )(
|
||||
__RPC__in IRunningObjectTable * This,
|
||||
/* [in] */ DWORD dwRegister,
|
||||
/* [in] */ __RPC__in FILETIME *pfiletime);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetTimeOfLastChange )(
|
||||
__RPC__in IRunningObjectTable * This,
|
||||
/* [unique][in] */ __RPC__in_opt IMoniker *pmkObjectName,
|
||||
/* [out] */ __RPC__out FILETIME *pfiletime);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *EnumRunning )(
|
||||
__RPC__in IRunningObjectTable * This,
|
||||
/* [out] */ __RPC__deref_out_opt IEnumMoniker **ppenumMoniker);
|
||||
|
||||
END_INTERFACE
|
||||
} IRunningObjectTableVtbl;
|
||||
@@ -0,0 +1,45 @@
|
||||
typedef struct IShellItemVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
__RPC__in IShellItem * This,
|
||||
/* [in] */ __RPC__in REFIID riid,
|
||||
/* [annotation][iid_is][out] */
|
||||
__RPC__deref_out void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
__RPC__in IShellItem * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
__RPC__in IShellItem * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *BindToHandler )(
|
||||
__RPC__in IShellItem * This,
|
||||
/* [unique][in] */ __RPC__in_opt IBindCtx *pbc,
|
||||
/* [in] */ __RPC__in REFGUID bhid,
|
||||
/* [in] */ __RPC__in REFIID riid,
|
||||
/* [iid_is][out] */ __RPC__deref_out_opt void **ppv);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetParent )(
|
||||
__RPC__in IShellItem * This,
|
||||
/* [out] */ __RPC__deref_out_opt IShellItem **ppsi);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetDisplayName )(
|
||||
__RPC__in IShellItem * This,
|
||||
/* [in] */ SIGDN sigdnName,
|
||||
/* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszName);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetAttributes )(
|
||||
__RPC__in IShellItem * This,
|
||||
/* [in] */ SFGAOF sfgaoMask,
|
||||
/* [out] */ __RPC__out SFGAOF *psfgaoAttribs);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Compare )(
|
||||
__RPC__in IShellItem * This,
|
||||
/* [in] */ __RPC__in_opt IShellItem *psi,
|
||||
/* [in] */ SICHINTF hint,
|
||||
/* [out] */ __RPC__out int *piOrder);
|
||||
|
||||
END_INTERFACE
|
||||
} IShellItemVtbl;
|
||||
@@ -0,0 +1,56 @@
|
||||
typedef struct IShellItemArrayVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
__RPC__in IShellItemArray * This,
|
||||
/* [in] */ __RPC__in REFIID riid,
|
||||
/* [annotation][iid_is][out] */
|
||||
__RPC__deref_out void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
__RPC__in IShellItemArray * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
__RPC__in IShellItemArray * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *BindToHandler )(
|
||||
__RPC__in IShellItemArray * This,
|
||||
/* [unique][in] */ __RPC__in_opt IBindCtx *pbc,
|
||||
/* [in] */ __RPC__in REFGUID bhid,
|
||||
/* [in] */ __RPC__in REFIID riid,
|
||||
/* [iid_is][out] */ __RPC__deref_out_opt void **ppvOut);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetPropertyStore )(
|
||||
__RPC__in IShellItemArray * This,
|
||||
/* [in] */ GETPROPERTYSTOREFLAGS flags,
|
||||
/* [in] */ __RPC__in REFIID riid,
|
||||
/* [iid_is][out] */ __RPC__deref_out_opt void **ppv);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetPropertyDescriptionList )(
|
||||
__RPC__in IShellItemArray * This,
|
||||
/* [in] */ __RPC__in REFPROPERTYKEY keyType,
|
||||
/* [in] */ __RPC__in REFIID riid,
|
||||
/* [iid_is][out] */ __RPC__deref_out_opt void **ppv);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetAttributes )(
|
||||
__RPC__in IShellItemArray * This,
|
||||
/* [in] */ SIATTRIBFLAGS AttribFlags,
|
||||
/* [in] */ SFGAOF sfgaoMask,
|
||||
/* [out] */ __RPC__out SFGAOF *psfgaoAttribs);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetCount )(
|
||||
__RPC__in IShellItemArray * This,
|
||||
/* [out] */ __RPC__out DWORD *pdwNumItems);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetItemAt )(
|
||||
__RPC__in IShellItemArray * This,
|
||||
/* [in] */ DWORD dwIndex,
|
||||
/* [out] */ __RPC__deref_out_opt IShellItem **ppsi);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *EnumItems )(
|
||||
__RPC__in IShellItemArray * This,
|
||||
/* [out] */ __RPC__deref_out_opt IEnumShellItems **ppenumShellItems);
|
||||
|
||||
END_INTERFACE
|
||||
} IShellItemArrayVtbl;
|
||||
@@ -0,0 +1,29 @@
|
||||
typedef struct ICallFactoryVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
ICallFactory * This,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [annotation][iid_is][out] */
|
||||
__RPC__deref_out void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
ICallFactory * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
ICallFactory * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *CreateCall )(
|
||||
ICallFactory * This,
|
||||
/* [annotation][in] */
|
||||
__in REFIID riid,
|
||||
/* [annotation][in] */
|
||||
__in_opt IUnknown *pCtrlUnk,
|
||||
/* [annotation][in] */
|
||||
__in REFIID riid2,
|
||||
/* [annotation][iid_is][out] */
|
||||
__deref_out IUnknown **ppv);
|
||||
|
||||
END_INTERFACE
|
||||
} ICallFactoryVtbl;
|
||||
@@ -0,0 +1,27 @@
|
||||
typedef struct IClassFactoryVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
IClassFactory * This,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [iid_is][out] */ void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
IClassFactory * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
IClassFactory * This);
|
||||
|
||||
/* [local] */ HRESULT ( STDMETHODCALLTYPE *CreateInstance )(
|
||||
IClassFactory * This,
|
||||
/* [unique][in] */ IUnknown *pUnkOuter,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [iid_is][out] */ void **ppvObject);
|
||||
|
||||
/* [local] */ HRESULT ( STDMETHODCALLTYPE *LockServer )(
|
||||
IClassFactory * This,
|
||||
/* [in] */ BOOL fLock);
|
||||
|
||||
END_INTERFACE
|
||||
} IClassFactoryVtbl;
|
||||
@@ -0,0 +1,63 @@
|
||||
typedef struct IClientSecurityVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
IClientSecurity * This,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [annotation][iid_is][out] */
|
||||
__RPC__deref_out void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
IClientSecurity * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
IClientSecurity * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryBlanket )(
|
||||
IClientSecurity * This,
|
||||
/* [annotation][in] */
|
||||
__in IUnknown *pProxy,
|
||||
/* [annotation][out] */
|
||||
__out DWORD *pAuthnSvc,
|
||||
/* [annotation][out] */
|
||||
__out_opt DWORD *pAuthzSvc,
|
||||
/* [annotation][out] */
|
||||
__RPC__deref_out_opt OLECHAR **pServerPrincName,
|
||||
/* [annotation][out] */
|
||||
__out_opt DWORD *pAuthnLevel,
|
||||
/* [annotation][out] */
|
||||
__out_opt DWORD *pImpLevel,
|
||||
/* [annotation][out] */
|
||||
__deref_out_opt void **pAuthInfo,
|
||||
/* [annotation][out] */
|
||||
__out_opt DWORD *pCapabilites);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SetBlanket )(
|
||||
IClientSecurity * This,
|
||||
/* [annotation][in] */
|
||||
__in IUnknown *pProxy,
|
||||
/* [annotation][in] */
|
||||
__in DWORD dwAuthnSvc,
|
||||
/* [annotation][in] */
|
||||
__in DWORD dwAuthzSvc,
|
||||
/* [annotation][in] */
|
||||
__RPC__in_opt OLECHAR *pServerPrincName,
|
||||
/* [annotation][in] */
|
||||
__in DWORD dwAuthnLevel,
|
||||
/* [annotation][in] */
|
||||
__in DWORD dwImpLevel,
|
||||
/* [annotation][in] */
|
||||
__in_opt void *pAuthInfo,
|
||||
/* [annotation][in] */
|
||||
__in DWORD dwCapabilities);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *CopyProxy )(
|
||||
IClientSecurity * This,
|
||||
/* [annotation][in] */
|
||||
__in IUnknown *pProxy,
|
||||
/* [annotation][out] */
|
||||
__deref_out IUnknown **ppCopy);
|
||||
|
||||
END_INTERFACE
|
||||
} IClientSecurityVtbl;
|
||||
@@ -0,0 +1,74 @@
|
||||
typedef struct IComCatalogVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
IComCatalog * This,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [iid_is][out] */ void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
IComCatalog * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
IComCatalog * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetClassInfo )(
|
||||
IComCatalog * This,
|
||||
/* [in] */ REFGUID guidConfiguredClsid,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [out] */ void **ppv);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetApplicationInfo )(
|
||||
IComCatalog * This,
|
||||
/* [in] */ REFGUID guidApplId,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [out] */ void **ppv);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetProcessInfo )(
|
||||
IComCatalog * This,
|
||||
/* [in] */ REFGUID guidProcess,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [out] */ void **ppv);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetServerGroupInfo )(
|
||||
IComCatalog * This,
|
||||
/* [in] */ REFGUID guidServerGroup,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [out] */ void **ppv);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetRetQueueInfo )(
|
||||
IComCatalog * This,
|
||||
/* [string][in] */ WCHAR *wszFormatName,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [out] */ void **ppv);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetApplicationInfoForExe )(
|
||||
IComCatalog * This,
|
||||
/* [string][in] */ WCHAR *pwszExeName,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [out] */ void **ppv);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetTypeLibrary )(
|
||||
IComCatalog * This,
|
||||
/* [in] */ REFGUID guidTypeLib,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [out] */ void **ppv);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetInterfaceInfo )(
|
||||
IComCatalog * This,
|
||||
/* [in] */ REFIID iidInterface,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [out] */ void **ppv);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *FlushCache )(
|
||||
IComCatalog * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetClassInfoFromProgId )(
|
||||
IComCatalog * This,
|
||||
/* [in] */ WCHAR *pwszProgID,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [out] */ void **ppv);
|
||||
|
||||
END_INTERFACE
|
||||
} IComCatalogVtbl;
|
||||
@@ -0,0 +1,22 @@
|
||||
typedef struct IInternalUnknownVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
IInternalUnknown * This,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [iid_is][out] */ void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
IInternalUnknown * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
IInternalUnknown * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInternalInterface )(
|
||||
IInternalUnknown * This,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [out] */ void **ppv);
|
||||
|
||||
END_INTERFACE
|
||||
} IInternalUnknownVtbl;
|
||||
@@ -0,0 +1,58 @@
|
||||
typedef struct IMarshalVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
IMarshal * This,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [iid_is][out] */ void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
IMarshal * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
IMarshal * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetUnmarshalClass )(
|
||||
IMarshal * This,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [unique][in] */ void *pv,
|
||||
/* [in] */ DWORD dwDestContext,
|
||||
/* [unique][in] */ void *pvDestContext,
|
||||
/* [in] */ DWORD mshlflags,
|
||||
/* [out] */ CLSID *pCid);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetMarshalSizeMax )(
|
||||
IMarshal * This,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [unique][in] */ void *pv,
|
||||
/* [in] */ DWORD dwDestContext,
|
||||
/* [unique][in] */ void *pvDestContext,
|
||||
/* [in] */ DWORD mshlflags,
|
||||
/* [out] */ DWORD *pSize);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *MarshalInterface )(
|
||||
IMarshal * This,
|
||||
/* [unique][in] */ IStream *pStm,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [unique][in] */ void *pv,
|
||||
/* [in] */ DWORD dwDestContext,
|
||||
/* [unique][in] */ void *pvDestContext,
|
||||
/* [in] */ DWORD mshlflags);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *UnmarshalInterface )(
|
||||
IMarshal * This,
|
||||
/* [unique][in] */ IStream *pStm,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [out] */ void **ppv);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *ReleaseMarshalData )(
|
||||
IMarshal * This,
|
||||
/* [unique][in] */ IStream *pStm);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *DisconnectObject )(
|
||||
IMarshal * This,
|
||||
/* [in] */ DWORD dwReserved);
|
||||
|
||||
END_INTERFACE
|
||||
} IMarshalVtbl;
|
||||
@@ -0,0 +1,122 @@
|
||||
typedef struct IMonikerVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
__RPC__in IMoniker * This,
|
||||
/* [in] */ __RPC__in REFIID riid,
|
||||
/* [annotation][iid_is][out] */
|
||||
__RPC__deref_out void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
__RPC__in IMoniker * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
__RPC__in IMoniker * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetClassID )(
|
||||
__RPC__in IMoniker * This,
|
||||
/* [out] */ __RPC__out CLSID *pClassID);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *IsDirty )(
|
||||
__RPC__in IMoniker * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Load )(
|
||||
__RPC__in IMoniker * This,
|
||||
/* [unique][in] */ __RPC__in_opt IStream *pStm);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Save )(
|
||||
__RPC__in IMoniker * This,
|
||||
/* [unique][in] */ __RPC__in_opt IStream *pStm,
|
||||
/* [in] */ BOOL fClearDirty);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetSizeMax )(
|
||||
__RPC__in IMoniker * This,
|
||||
/* [out] */ __RPC__out ULARGE_INTEGER *pcbSize);
|
||||
|
||||
/* [local] */ HRESULT ( STDMETHODCALLTYPE *BindToObject )(
|
||||
IMoniker * This,
|
||||
/* [unique][in] */ IBindCtx *pbc,
|
||||
/* [unique][in] */ IMoniker *pmkToLeft,
|
||||
/* [in] */ REFIID riidResult,
|
||||
/* [iid_is][out] */ void **ppvResult);
|
||||
|
||||
/* [local] */ HRESULT ( STDMETHODCALLTYPE *BindToStorage )(
|
||||
IMoniker * This,
|
||||
/* [unique][in] */ IBindCtx *pbc,
|
||||
/* [unique][in] */ IMoniker *pmkToLeft,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [iid_is][out] */ void **ppvObj);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Reduce )(
|
||||
__RPC__in IMoniker * This,
|
||||
/* [unique][in] */ __RPC__in_opt IBindCtx *pbc,
|
||||
/* [in] */ DWORD dwReduceHowFar,
|
||||
/* [unique][out][in] */ __RPC__deref_opt_inout_opt IMoniker **ppmkToLeft,
|
||||
/* [out] */ __RPC__deref_out_opt IMoniker **ppmkReduced);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *ComposeWith )(
|
||||
__RPC__in IMoniker * This,
|
||||
/* [unique][in] */ __RPC__in_opt IMoniker *pmkRight,
|
||||
/* [in] */ BOOL fOnlyIfNotGeneric,
|
||||
/* [out] */ __RPC__deref_out_opt IMoniker **ppmkComposite);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Enum )(
|
||||
__RPC__in IMoniker * This,
|
||||
/* [in] */ BOOL fForward,
|
||||
/* [out] */ __RPC__deref_out_opt IEnumMoniker **ppenumMoniker);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *IsEqual )(
|
||||
__RPC__in IMoniker * This,
|
||||
/* [unique][in] */ __RPC__in_opt IMoniker *pmkOtherMoniker);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Hash )(
|
||||
__RPC__in IMoniker * This,
|
||||
/* [out] */ __RPC__out DWORD *pdwHash);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *IsRunning )(
|
||||
__RPC__in IMoniker * This,
|
||||
/* [unique][in] */ __RPC__in_opt IBindCtx *pbc,
|
||||
/* [unique][in] */ __RPC__in_opt IMoniker *pmkToLeft,
|
||||
/* [unique][in] */ __RPC__in_opt IMoniker *pmkNewlyRunning);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetTimeOfLastChange )(
|
||||
__RPC__in IMoniker * This,
|
||||
/* [unique][in] */ __RPC__in_opt IBindCtx *pbc,
|
||||
/* [unique][in] */ __RPC__in_opt IMoniker *pmkToLeft,
|
||||
/* [out] */ __RPC__out FILETIME *pFileTime);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Inverse )(
|
||||
__RPC__in IMoniker * This,
|
||||
/* [out] */ __RPC__deref_out_opt IMoniker **ppmk);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *CommonPrefixWith )(
|
||||
__RPC__in IMoniker * This,
|
||||
/* [unique][in] */ __RPC__in_opt IMoniker *pmkOther,
|
||||
/* [out] */ __RPC__deref_out_opt IMoniker **ppmkPrefix);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *RelativePathTo )(
|
||||
__RPC__in IMoniker * This,
|
||||
/* [unique][in] */ __RPC__in_opt IMoniker *pmkOther,
|
||||
/* [out] */ __RPC__deref_out_opt IMoniker **ppmkRelPath);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetDisplayName )(
|
||||
__RPC__in IMoniker * This,
|
||||
/* [unique][in] */ __RPC__in_opt IBindCtx *pbc,
|
||||
/* [unique][in] */ __RPC__in_opt IMoniker *pmkToLeft,
|
||||
/* [out] */ __RPC__deref_out_opt LPOLESTR *ppszDisplayName);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *ParseDisplayName )(
|
||||
__RPC__in IMoniker * This,
|
||||
/* [unique][in] */ __RPC__in_opt IBindCtx *pbc,
|
||||
/* [unique][in] */ __RPC__in_opt IMoniker *pmkToLeft,
|
||||
/* [in] */ __RPC__in LPOLESTR pszDisplayName,
|
||||
/* [out] */ __RPC__out ULONG *pchEaten,
|
||||
/* [out] */ __RPC__deref_out_opt IMoniker **ppmkOut);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *IsSystemMoniker )(
|
||||
__RPC__in IMoniker * This,
|
||||
/* [out] */ __RPC__out DWORD *pdwMksys);
|
||||
|
||||
END_INTERFACE
|
||||
} IMonikerVtbl;
|
||||
@@ -0,0 +1,67 @@
|
||||
typedef struct IObjContextVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
IObjContext * This,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [annotation][iid_is][out] */
|
||||
void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
IObjContext * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
IObjContext * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SetProperty )(
|
||||
IObjContext * This,
|
||||
/* [annotation][in] */
|
||||
__in REFGUID rpolicyId,
|
||||
/* [annotation][in] */
|
||||
__in CPFLAGS flags,
|
||||
/* [annotation][in] */
|
||||
__in IUnknown *pUnk);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *RemoveProperty )(
|
||||
IObjContext * This,
|
||||
/* [annotation][in] */
|
||||
__in REFGUID rPolicyId);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetProperty )(
|
||||
IObjContext * This,
|
||||
/* [annotation][in] */
|
||||
__in REFGUID rGuid,
|
||||
/* [annotation][out] */
|
||||
__out CPFLAGS *pFlags,
|
||||
/* [annotation][out] */
|
||||
__deref_out IUnknown **ppUnk);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *EnumContextProps )(
|
||||
IObjContext * This,
|
||||
/* [annotation][out] */
|
||||
__deref_out IEnumContextProps **ppEnumContextProps);
|
||||
|
||||
PVOID ( STDMETHODCALLTYPE *Reserved1 )(
|
||||
IObjContext * This);
|
||||
|
||||
PVOID ( STDMETHODCALLTYPE *Reserved2 )(
|
||||
IObjContext * This);
|
||||
|
||||
PVOID ( STDMETHODCALLTYPE *Reserved3 )(
|
||||
IObjContext * This);
|
||||
|
||||
PVOID ( STDMETHODCALLTYPE *Reserved4 )(
|
||||
IObjContext * This);
|
||||
|
||||
PVOID ( STDMETHODCALLTYPE *Reserved5 )(
|
||||
IObjContext * This);
|
||||
|
||||
PVOID ( STDMETHODCALLTYPE *Reserved6 )(
|
||||
IObjContext * This);
|
||||
|
||||
PVOID ( STDMETHODCALLTYPE *Reserved7 )(
|
||||
IObjContext * This);
|
||||
|
||||
END_INTERFACE
|
||||
} IObjContextVtbl;
|
||||
@@ -0,0 +1,22 @@
|
||||
typedef struct IPersistVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
__RPC__in IPersist * This,
|
||||
/* [in] */ __RPC__in REFIID riid,
|
||||
/* [annotation][iid_is][out] */
|
||||
__RPC__deref_out void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
__RPC__in IPersist * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
__RPC__in IPersist * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetClassID )(
|
||||
__RPC__in IPersist * This,
|
||||
/* [out] */ __RPC__out CLSID *pClassID);
|
||||
|
||||
END_INTERFACE
|
||||
} IPersistVtbl;
|
||||
@@ -0,0 +1,36 @@
|
||||
typedef struct IRemUnknownVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
IRemUnknown * This,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [iid_is][out] */ void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
IRemUnknown * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
IRemUnknown * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *RemQueryInterface )(
|
||||
IRemUnknown * This,
|
||||
/* [in] */ REFIPID ripid,
|
||||
/* [in] */ ULONG cRefs,
|
||||
/* [in] */ USHORT cIids,
|
||||
/* [size_is][in] */ IID *iids,
|
||||
/* [size_is][size_is][out] */ REMQIRESULT **ppQIResults);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *RemAddRef )(
|
||||
IRemUnknown * This,
|
||||
/* [in] */ USHORT cInterfaceRefs,
|
||||
/* [size_is][in] */ REMINTERFACEREF *InterfaceRefs,
|
||||
/* [size_is][out] */ HRESULT *pResults);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *RemRelease )(
|
||||
IRemUnknown * This,
|
||||
/* [in] */ USHORT cInterfaceRefs,
|
||||
/* [size_is][in] */ REMINTERFACEREF *InterfaceRefs);
|
||||
|
||||
END_INTERFACE
|
||||
} IRemUnknownVtbl;
|
||||
@@ -0,0 +1,20 @@
|
||||
// IStdIdentity is an empty interface to check that an object is the IStdIdentity
|
||||
// and thus query other interface
|
||||
typedef struct IStdIdentityVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
IUnknown * This,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [annotation][iid_is][out] */
|
||||
__RPC__deref_out void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
IUnknown * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
IUnknown * This);
|
||||
|
||||
END_INTERFACE
|
||||
} IStdIdentityVtbl;
|
||||
@@ -0,0 +1,108 @@
|
||||
typedef struct IStorageVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
IStorage * This,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [iid_is][out] */ void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
IStorage * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
IStorage * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *CreateStream )(
|
||||
IStorage * This,
|
||||
/* [string][in] */ const OLECHAR *pwcsName,
|
||||
/* [in] */ DWORD grfMode,
|
||||
/* [in] */ DWORD reserved1,
|
||||
/* [in] */ DWORD reserved2,
|
||||
/* [out] */ IStream **ppstm);
|
||||
|
||||
/* [local] */ HRESULT ( STDMETHODCALLTYPE *OpenStream )(
|
||||
IStorage * This,
|
||||
/* [string][in] */ const OLECHAR *pwcsName,
|
||||
/* [unique][in] */ void *reserved1,
|
||||
/* [in] */ DWORD grfMode,
|
||||
/* [in] */ DWORD reserved2,
|
||||
/* [out] */ IStream **ppstm);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *CreateStorage )(
|
||||
IStorage * This,
|
||||
/* [string][in] */ const OLECHAR *pwcsName,
|
||||
/* [in] */ DWORD grfMode,
|
||||
/* [in] */ DWORD reserved1,
|
||||
/* [in] */ DWORD reserved2,
|
||||
/* [out] */ IStorage **ppstg);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *OpenStorage )(
|
||||
IStorage * This,
|
||||
/* [string][unique][in] */ const OLECHAR *pwcsName,
|
||||
/* [unique][in] */ IStorage *pstgPriority,
|
||||
/* [in] */ DWORD grfMode,
|
||||
/* [unique][in] */ SNB snbExclude,
|
||||
/* [in] */ DWORD reserved,
|
||||
/* [out] */ IStorage **ppstg);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *CopyTo )(
|
||||
IStorage * This,
|
||||
/* [in] */ DWORD ciidExclude,
|
||||
/* [size_is][unique][in] */ const IID *rgiidExclude,
|
||||
/* [unique][in] */ SNB snbExclude,
|
||||
/* [unique][in] */ IStorage *pstgDest);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *MoveElementTo )(
|
||||
IStorage * This,
|
||||
/* [string][in] */ const OLECHAR *pwcsName,
|
||||
/* [unique][in] */ IStorage *pstgDest,
|
||||
/* [string][in] */ const OLECHAR *pwcsNewName,
|
||||
/* [in] */ DWORD grfFlags);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Commit )(
|
||||
IStorage * This,
|
||||
/* [in] */ DWORD grfCommitFlags);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Revert )(
|
||||
IStorage * This);
|
||||
|
||||
/* [local] */ HRESULT ( STDMETHODCALLTYPE *EnumElements )(
|
||||
IStorage * This,
|
||||
/* [in] */ DWORD reserved1,
|
||||
/* [size_is][unique][in] */ void *reserved2,
|
||||
/* [in] */ DWORD reserved3,
|
||||
/* [out] */ IEnumSTATSTG **ppenum);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *DestroyElement )(
|
||||
IStorage * This,
|
||||
/* [string][in] */ const OLECHAR *pwcsName);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *RenameElement )(
|
||||
IStorage * This,
|
||||
/* [string][in] */ const OLECHAR *pwcsOldName,
|
||||
/* [string][in] */ const OLECHAR *pwcsNewName);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SetElementTimes )(
|
||||
IStorage * This,
|
||||
/* [string][unique][in] */ const OLECHAR *pwcsName,
|
||||
/* [unique][in] */ const FILETIME *pctime,
|
||||
/* [unique][in] */ const FILETIME *patime,
|
||||
/* [unique][in] */ const FILETIME *pmtime);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SetClass )(
|
||||
IStorage * This,
|
||||
/* [in] */ REFCLSID clsid);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SetStateBits )(
|
||||
IStorage * This,
|
||||
/* [in] */ DWORD grfStateBits,
|
||||
/* [in] */ DWORD grfMask);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Stat )(
|
||||
IStorage * This,
|
||||
/* [out] */ STATSTG *pstatstg,
|
||||
/* [in] */ DWORD grfStatFlag);
|
||||
|
||||
END_INTERFACE
|
||||
} IStorageVtbl;
|
||||
@@ -0,0 +1,82 @@
|
||||
typedef struct IStreamVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
__RPC__in IStream * This,
|
||||
/* [in] */ __RPC__in REFIID riid,
|
||||
/* [annotation][iid_is][out] */
|
||||
__RPC__deref_out void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
__RPC__in IStream * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
__RPC__in IStream * This);
|
||||
|
||||
/* [local] */ HRESULT ( STDMETHODCALLTYPE *Read )(
|
||||
IStream * This,
|
||||
/* [annotation] */
|
||||
__out_bcount_part(cb, *pcbRead) void *pv,
|
||||
/* [in] */ ULONG cb,
|
||||
/* [annotation] */
|
||||
__out_opt ULONG *pcbRead);
|
||||
|
||||
/* [local] */ HRESULT ( STDMETHODCALLTYPE *Write )(
|
||||
IStream * This,
|
||||
/* [annotation] */
|
||||
__in_bcount(cb) const void *pv,
|
||||
/* [in] */ ULONG cb,
|
||||
/* [annotation] */
|
||||
__out_opt ULONG *pcbWritten);
|
||||
|
||||
/* [local] */ HRESULT ( STDMETHODCALLTYPE *Seek )(
|
||||
IStream * This,
|
||||
/* [in] */ LARGE_INTEGER dlibMove,
|
||||
/* [in] */ DWORD dwOrigin,
|
||||
/* [annotation] */
|
||||
__out_opt ULARGE_INTEGER *plibNewPosition);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SetSize )(
|
||||
__RPC__in IStream * This,
|
||||
/* [in] */ ULARGE_INTEGER libNewSize);
|
||||
|
||||
/* [local] */ HRESULT ( STDMETHODCALLTYPE *CopyTo )(
|
||||
IStream * This,
|
||||
/* [unique][in] */ IStream *pstm,
|
||||
/* [in] */ ULARGE_INTEGER cb,
|
||||
/* [annotation] */
|
||||
__out_opt ULARGE_INTEGER *pcbRead,
|
||||
/* [annotation] */
|
||||
__out_opt ULARGE_INTEGER *pcbWritten);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Commit )(
|
||||
__RPC__in IStream * This,
|
||||
/* [in] */ DWORD grfCommitFlags);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Revert )(
|
||||
__RPC__in IStream * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *LockRegion )(
|
||||
__RPC__in IStream * This,
|
||||
/* [in] */ ULARGE_INTEGER libOffset,
|
||||
/* [in] */ ULARGE_INTEGER cb,
|
||||
/* [in] */ DWORD dwLockType);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *UnlockRegion )(
|
||||
__RPC__in IStream * This,
|
||||
/* [in] */ ULARGE_INTEGER libOffset,
|
||||
/* [in] */ ULARGE_INTEGER cb,
|
||||
/* [in] */ DWORD dwLockType);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Stat )(
|
||||
__RPC__in IStream * This,
|
||||
/* [out] */ __RPC__out STATSTG *pstatstg,
|
||||
/* [in] */ DWORD grfStatFlag);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Clone )(
|
||||
__RPC__in IStream * This,
|
||||
/* [out] */ __RPC__deref_out_opt IStream **ppstm);
|
||||
|
||||
END_INTERFACE
|
||||
} IStreamVtbl;
|
||||
@@ -0,0 +1,36 @@
|
||||
typedef struct ITypeCompVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
__RPC__in ITypeComp * This,
|
||||
/* [in] */ __RPC__in REFIID riid,
|
||||
/* [annotation][iid_is][out] */
|
||||
__RPC__deref_out PVOID *ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
__RPC__in ITypeComp * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
__RPC__in ITypeComp * This);
|
||||
|
||||
/* [local] */ HRESULT ( STDMETHODCALLTYPE *Bind )(
|
||||
ITypeComp * This,
|
||||
/* [annotation][in] */
|
||||
__RPC__in LPOLESTR szName,
|
||||
/* [in] */ ULONG lHashVal,
|
||||
/* [in] */ WORD wFlags,
|
||||
/* [out] */ ITypeInfo **ppTInfo,
|
||||
/* [out] */ DESCKIND *pDescKind,
|
||||
/* [out] */ BINDPTR *pBindPtr);
|
||||
|
||||
/* [local] */ HRESULT ( STDMETHODCALLTYPE *BindType )(
|
||||
ITypeComp * This,
|
||||
/* [annotation][in] */
|
||||
__RPC__in LPOLESTR szName,
|
||||
/* [in] */ ULONG lHashVal,
|
||||
/* [out] */ ITypeInfo **ppTInfo,
|
||||
/* [out] */ ITypeComp **ppTComp);
|
||||
|
||||
END_INTERFACE
|
||||
} ITypeCompVtbl;
|
||||
@@ -0,0 +1,125 @@
|
||||
typedef struct ITypeInfoVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
__RPC__in ITypeInfo * This,
|
||||
/* [in] */ __RPC__in REFIID riid,
|
||||
/* [annotation][iid_is][out] */
|
||||
__RPC__deref_out void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
__RPC__in ITypeInfo * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
__RPC__in ITypeInfo * This);
|
||||
|
||||
/* [local] */ HRESULT ( STDMETHODCALLTYPE *GetTypeAttr )(
|
||||
ITypeInfo * This,
|
||||
/* [out] */ TYPEATTR **ppTypeAttr);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetTypeComp )(
|
||||
__RPC__in ITypeInfo * This,
|
||||
/* [out] */ __RPC__deref_out_opt ITypeComp **ppTComp);
|
||||
|
||||
/* [local] */ HRESULT ( STDMETHODCALLTYPE *GetFuncDesc )(
|
||||
ITypeInfo * This,
|
||||
/* [in] */ UINT index,
|
||||
/* [out] */ FUNCDESC **ppFuncDesc);
|
||||
|
||||
/* [local] */ HRESULT ( STDMETHODCALLTYPE *GetVarDesc )(
|
||||
ITypeInfo * This,
|
||||
/* [in] */ UINT index,
|
||||
/* [out] */ VARDESC **ppVarDesc);
|
||||
|
||||
/* [local] */ HRESULT ( STDMETHODCALLTYPE *GetNames )(
|
||||
ITypeInfo * This,
|
||||
/* [in] */ MEMBERID memid,
|
||||
/* [length_is][size_is][out] */ BSTR *rgBstrNames,
|
||||
/* [in] */ UINT cMaxNames,
|
||||
/* [out] */ UINT *pcNames);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetRefTypeOfImplType )(
|
||||
__RPC__in ITypeInfo * This,
|
||||
/* [in] */ UINT index,
|
||||
/* [out] */ __RPC__out HREFTYPE *pRefType);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetImplTypeFlags )(
|
||||
__RPC__in ITypeInfo * This,
|
||||
/* [in] */ UINT index,
|
||||
/* [out] */ __RPC__out INT *pImplTypeFlags);
|
||||
|
||||
/* [local] */ HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )(
|
||||
ITypeInfo * This,
|
||||
/* [annotation][size_is][in] */
|
||||
__RPC__in_ecount(cNames) LPOLESTR *rgszNames,
|
||||
/* [in] */ UINT cNames,
|
||||
/* [size_is][out] */ MEMBERID *pMemId);
|
||||
|
||||
/* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )(
|
||||
ITypeInfo * This,
|
||||
/* [in] */ PVOID pvInstance,
|
||||
/* [in] */ MEMBERID memid,
|
||||
/* [in] */ WORD wFlags,
|
||||
/* [out][in] */ DISPPARAMS *pDispParams,
|
||||
/* [out] */ VARIANT *pVarResult,
|
||||
/* [out] */ EXCEPINFO *pExcepInfo,
|
||||
/* [out] */ UINT *puArgErr);
|
||||
|
||||
/* [local] */ HRESULT ( STDMETHODCALLTYPE *GetDocumentation )(
|
||||
ITypeInfo * This,
|
||||
/* [in] */ MEMBERID memid,
|
||||
/* [out] */ BSTR *pBstrName,
|
||||
/* [out] */ BSTR *pBstrDocString,
|
||||
/* [out] */ DWORD *pdwHelpContext,
|
||||
/* [out] */ BSTR *pBstrHelpFile);
|
||||
|
||||
/* [local] */ HRESULT ( STDMETHODCALLTYPE *GetDllEntry )(
|
||||
ITypeInfo * This,
|
||||
/* [in] */ MEMBERID memid,
|
||||
/* [in] */ INVOKEKIND invKind,
|
||||
/* [out] */ BSTR *pBstrDllName,
|
||||
/* [out] */ BSTR *pBstrName,
|
||||
/* [out] */ WORD *pwOrdinal);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetRefTypeInfo )(
|
||||
__RPC__in ITypeInfo * This,
|
||||
/* [in] */ HREFTYPE hRefType,
|
||||
/* [out] */ __RPC__deref_out_opt ITypeInfo **ppTInfo);
|
||||
|
||||
/* [local] */ HRESULT ( STDMETHODCALLTYPE *AddressOfMember )(
|
||||
ITypeInfo * This,
|
||||
/* [in] */ MEMBERID memid,
|
||||
/* [in] */ INVOKEKIND invKind,
|
||||
/* [out] */ PVOID *ppv);
|
||||
|
||||
/* [local] */ HRESULT ( STDMETHODCALLTYPE *CreateInstance )(
|
||||
ITypeInfo * This,
|
||||
/* [in] */ IUnknown *pUnkOuter,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [iid_is][out] */ PVOID *ppvObj);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetMops )(
|
||||
__RPC__in ITypeInfo * This,
|
||||
/* [in] */ MEMBERID memid,
|
||||
/* [out] */ __RPC__deref_out_opt BSTR *pBstrMops);
|
||||
|
||||
/* [local] */ HRESULT ( STDMETHODCALLTYPE *GetContainingTypeLib )(
|
||||
ITypeInfo * This,
|
||||
/* [out] */ ITypeLib **ppTLib,
|
||||
/* [out] */ UINT *pIndex);
|
||||
|
||||
/* [local] */ DWORD /*void*/ ( STDMETHODCALLTYPE *ReleaseTypeAttr )(
|
||||
ITypeInfo * This,
|
||||
/* [in] */ TYPEATTR *pTypeAttr);
|
||||
|
||||
/* [local] */ DWORD ( STDMETHODCALLTYPE *ReleaseFuncDesc )(
|
||||
ITypeInfo * This,
|
||||
/* [in] */ FUNCDESC *pFuncDesc);
|
||||
|
||||
/* [local] */ DWORD ( STDMETHODCALLTYPE *ReleaseVarDesc )(
|
||||
ITypeInfo * This,
|
||||
/* [in] */ VARDESC *pVarDesc);
|
||||
|
||||
END_INTERFACE
|
||||
} ITypeInfoVtbl;
|
||||
@@ -0,0 +1,72 @@
|
||||
typedef struct ITypeLibVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
__RPC__in ITypeLib * This,
|
||||
/* [in] */ __RPC__in REFIID riid,
|
||||
/* [annotation][iid_is][out] */
|
||||
__RPC__deref_out void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
__RPC__in ITypeLib * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
__RPC__in ITypeLib * This);
|
||||
|
||||
/* [local] */ UINT ( STDMETHODCALLTYPE *GetTypeInfoCount )(
|
||||
ITypeLib * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )(
|
||||
__RPC__in ITypeLib * This,
|
||||
/* [in] */ UINT index,
|
||||
/* [out] */ __RPC__deref_out_opt ITypeInfo **ppTInfo);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetTypeInfoType )(
|
||||
__RPC__in ITypeLib * This,
|
||||
/* [in] */ UINT index,
|
||||
/* [out] */ __RPC__out TYPEKIND *pTKind);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetTypeInfoOfGuid )(
|
||||
__RPC__in ITypeLib * This,
|
||||
/* [in] */ __RPC__in REFGUID guid,
|
||||
/* [out] */ __RPC__deref_out_opt ITypeInfo **ppTinfo);
|
||||
|
||||
/* [local] */ HRESULT ( STDMETHODCALLTYPE *GetLibAttr )(
|
||||
ITypeLib * This,
|
||||
/* [out] */ TLIBATTR **ppTLibAttr);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetTypeComp )(
|
||||
__RPC__in ITypeLib * This,
|
||||
/* [out] */ __RPC__deref_out_opt ITypeComp **ppTComp);
|
||||
|
||||
/* [local] */ HRESULT ( STDMETHODCALLTYPE *GetDocumentation )(
|
||||
ITypeLib * This,
|
||||
/* [in] */ INT index,
|
||||
/* [out] */ BSTR *pBstrName,
|
||||
/* [out] */ BSTR *pBstrDocString,
|
||||
/* [out] */ DWORD *pdwHelpContext,
|
||||
/* [out] */ BSTR *pBstrHelpFile);
|
||||
|
||||
/* [local] */ HRESULT ( STDMETHODCALLTYPE *IsName )(
|
||||
ITypeLib * This,
|
||||
/* [annotation][out][in] */
|
||||
__RPC__inout LPOLESTR szNameBuf,
|
||||
/* [in] */ ULONG lHashVal,
|
||||
/* [out] */ BOOL *pfName);
|
||||
|
||||
/* [local] */ HRESULT ( STDMETHODCALLTYPE *FindName )(
|
||||
ITypeLib * This,
|
||||
/* [annotation][out][in] */
|
||||
__RPC__inout LPOLESTR szNameBuf,
|
||||
/* [in] */ ULONG lHashVal,
|
||||
/* [length_is][size_is][out] */ ITypeInfo **ppTInfo,
|
||||
/* [length_is][size_is][out] */ MEMBERID *rgMemId,
|
||||
/* [out][in] */ USHORT *pcFound);
|
||||
|
||||
/* [local] */ DWORD /* void */ ( STDMETHODCALLTYPE *ReleaseTLibAttr )(
|
||||
ITypeLib * This,
|
||||
/* [in] */ TLIBATTR *pTLibAttr);
|
||||
|
||||
END_INTERFACE
|
||||
} ITypeLibVtbl;
|
||||
@@ -0,0 +1,33 @@
|
||||
typedef struct IWbemObjectTextSrcVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
IWbemObjectTextSrc * This,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [iid_is][out] */ void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
IWbemObjectTextSrc * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
IWbemObjectTextSrc * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetText )(
|
||||
IWbemObjectTextSrc * This,
|
||||
/* [in] */ long lFlags,
|
||||
/* [in] */ IWbemClassObject *pObj,
|
||||
/* [in] */ ULONG uObjTextFormat,
|
||||
/* [in] */ IWbemContext *pCtx,
|
||||
/* [out] */ BSTR *strText);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *CreateFromText )(
|
||||
IWbemObjectTextSrc * This,
|
||||
/* [in] */ long lFlags,
|
||||
/* [in] */ BSTR strText,
|
||||
/* [in] */ ULONG uObjTextFormat,
|
||||
/* [in] */ IWbemContext *pCtx,
|
||||
/* [out] */ IWbemClassObject **pNewObj);
|
||||
|
||||
END_INTERFACE
|
||||
} IWbemObjectTextSrcVtbl;
|
||||
@@ -0,0 +1,321 @@
|
||||
typedef struct IWebBrowser2Vtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
__RPC__in IWebBrowser2 * This,
|
||||
/* [in] */ __RPC__in REFIID riid,
|
||||
/* [annotation][iid_is][out] */
|
||||
void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
__RPC__in IWebBrowser2 * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
__RPC__in IWebBrowser2 * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )(
|
||||
__RPC__in IWebBrowser2 * This,
|
||||
/* [out] */ __RPC__out UINT *pctinfo);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )(
|
||||
__RPC__in IWebBrowser2 * This,
|
||||
/* [in] */ UINT iTInfo,
|
||||
/* [in] */ LCID lcid,
|
||||
/* [out] */ __RPC__deref_out_opt ITypeInfo **ppTInfo);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )(
|
||||
__RPC__in IWebBrowser2 * This,
|
||||
/* [in] */ __RPC__in REFIID riid,
|
||||
/* [size_is][in] */ __RPC__in_ecount_full(cNames) LPOLESTR *rgszNames,
|
||||
/* [range][in] */ __RPC__in_range(0,16384) UINT cNames,
|
||||
/* [in] */ LCID lcid,
|
||||
/* [size_is][out] */ __RPC__out_ecount_full(cNames) DISPID *rgDispId);
|
||||
|
||||
/* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )(
|
||||
IWebBrowser2 * This,
|
||||
/* [annotation][in] */
|
||||
DISPID dispIdMember,
|
||||
/* [annotation][in] */
|
||||
REFIID riid,
|
||||
/* [annotation][in] */
|
||||
LCID lcid,
|
||||
/* [annotation][in] */
|
||||
WORD wFlags,
|
||||
/* [annotation][out][in] */
|
||||
DISPPARAMS *pDispParams,
|
||||
/* [annotation][out] */
|
||||
VARIANT *pVarResult,
|
||||
/* [annotation][out] */
|
||||
EXCEPINFO *pExcepInfo,
|
||||
/* [annotation][out] */
|
||||
UINT *puArgErr);
|
||||
|
||||
/* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GoBack )(
|
||||
__RPC__in IWebBrowser2 * This);
|
||||
|
||||
/* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GoForward )(
|
||||
__RPC__in IWebBrowser2 * This);
|
||||
|
||||
/* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GoHome )(
|
||||
__RPC__in IWebBrowser2 * This);
|
||||
|
||||
/* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GoSearch )(
|
||||
__RPC__in IWebBrowser2 * This);
|
||||
|
||||
/* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Navigate )(
|
||||
__RPC__in IWebBrowser2 * This,
|
||||
/* [in] */ __RPC__in BSTR URL,
|
||||
/* [unique][optional][in] */ __RPC__in_opt VARIANT *Flags,
|
||||
/* [unique][optional][in] */ __RPC__in_opt VARIANT *TargetFrameName,
|
||||
/* [unique][optional][in] */ __RPC__in_opt VARIANT *PostData,
|
||||
/* [unique][optional][in] */ __RPC__in_opt VARIANT *Headers);
|
||||
|
||||
/* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Refresh )(
|
||||
__RPC__in IWebBrowser2 * This);
|
||||
|
||||
/* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Refresh2 )(
|
||||
__RPC__in IWebBrowser2 * This,
|
||||
/* [unique][optional][in] */ __RPC__in_opt VARIANT *Level);
|
||||
|
||||
/* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Stop )(
|
||||
__RPC__in IWebBrowser2 * This);
|
||||
|
||||
/* [helpcontext][helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Application )(
|
||||
__RPC__in IWebBrowser2 * This,
|
||||
/* [retval][out] */ __RPC__deref_out_opt IDispatch **ppDisp);
|
||||
|
||||
/* [helpcontext][helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Parent )(
|
||||
__RPC__in IWebBrowser2 * This,
|
||||
/* [retval][out] */ __RPC__deref_out_opt IDispatch **ppDisp);
|
||||
|
||||
/* [helpcontext][helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Container )(
|
||||
__RPC__in IWebBrowser2 * This,
|
||||
/* [retval][out] */ __RPC__deref_out_opt IDispatch **ppDisp);
|
||||
|
||||
/* [helpcontext][helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Document )(
|
||||
__RPC__in IWebBrowser2 * This,
|
||||
/* [retval][out] */ __RPC__deref_out_opt IDispatch **ppDisp);
|
||||
|
||||
/* [helpcontext][helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_TopLevelContainer )(
|
||||
__RPC__in IWebBrowser2 * This,
|
||||
/* [retval][out] */ __RPC__out VARIANT_BOOL *pBool);
|
||||
|
||||
/* [helpcontext][helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Type )(
|
||||
__RPC__in IWebBrowser2 * This,
|
||||
/* [retval][out] */ __RPC__deref_out_opt BSTR *Type);
|
||||
|
||||
/* [helpcontext][helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Left )(
|
||||
__RPC__in IWebBrowser2 * This,
|
||||
/* [retval][out] */ __RPC__out long *pl);
|
||||
|
||||
/* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Left )(
|
||||
__RPC__in IWebBrowser2 * This,
|
||||
/* [in] */ long Left);
|
||||
|
||||
/* [helpcontext][helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Top )(
|
||||
__RPC__in IWebBrowser2 * This,
|
||||
/* [retval][out] */ __RPC__out long *pl);
|
||||
|
||||
/* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Top )(
|
||||
__RPC__in IWebBrowser2 * This,
|
||||
/* [in] */ long Top);
|
||||
|
||||
/* [helpcontext][helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Width )(
|
||||
__RPC__in IWebBrowser2 * This,
|
||||
/* [retval][out] */ __RPC__out long *pl);
|
||||
|
||||
/* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Width )(
|
||||
__RPC__in IWebBrowser2 * This,
|
||||
/* [in] */ long Width);
|
||||
|
||||
/* [helpcontext][helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Height )(
|
||||
__RPC__in IWebBrowser2 * This,
|
||||
/* [retval][out] */ __RPC__out long *pl);
|
||||
|
||||
/* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Height )(
|
||||
__RPC__in IWebBrowser2 * This,
|
||||
/* [in] */ long Height);
|
||||
|
||||
/* [helpcontext][helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_LocationName )(
|
||||
__RPC__in IWebBrowser2 * This,
|
||||
/* [retval][out] */ __RPC__deref_out_opt BSTR *LocationName);
|
||||
|
||||
/* [helpcontext][helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_LocationURL )(
|
||||
__RPC__in IWebBrowser2 * This,
|
||||
/* [retval][out] */ __RPC__deref_out_opt BSTR *LocationURL);
|
||||
|
||||
/* [helpcontext][helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Busy )(
|
||||
__RPC__in IWebBrowser2 * This,
|
||||
/* [retval][out] */ __RPC__out VARIANT_BOOL *pBool);
|
||||
|
||||
/* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Quit )(
|
||||
__RPC__in IWebBrowser2 * This);
|
||||
|
||||
/* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *ClientToWindow )(
|
||||
__RPC__in IWebBrowser2 * This,
|
||||
/* [out][in] */ __RPC__inout int *pcx,
|
||||
/* [out][in] */ __RPC__inout int *pcy);
|
||||
|
||||
/* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *PutProperty )(
|
||||
__RPC__in IWebBrowser2 * This,
|
||||
/* [in] */ __RPC__in BSTR Property,
|
||||
/* [in] */ VARIANT vtValue);
|
||||
|
||||
/* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetProperty )(
|
||||
__RPC__in IWebBrowser2 * This,
|
||||
/* [in] */ __RPC__in BSTR Property,
|
||||
/* [retval][out] */ __RPC__out VARIANT *pvtValue);
|
||||
|
||||
/* [helpcontext][helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Name )(
|
||||
__RPC__in IWebBrowser2 * This,
|
||||
/* [retval][out] */ __RPC__deref_out_opt BSTR *Name);
|
||||
|
||||
/* [helpcontext][helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HWND )(
|
||||
__RPC__in IWebBrowser2 * This,
|
||||
/* [retval][out] */ __RPC__out PVOID *pHWND);
|
||||
|
||||
/* [helpcontext][helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_FullName )(
|
||||
__RPC__in IWebBrowser2 * This,
|
||||
/* [retval][out] */ __RPC__deref_out_opt BSTR *FullName);
|
||||
|
||||
/* [helpcontext][helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Path )(
|
||||
__RPC__in IWebBrowser2 * This,
|
||||
/* [retval][out] */ __RPC__deref_out_opt BSTR *Path);
|
||||
|
||||
/* [helpcontext][helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Visible )(
|
||||
__RPC__in IWebBrowser2 * This,
|
||||
/* [retval][out] */ __RPC__out VARIANT_BOOL *pBool);
|
||||
|
||||
/* [helpcontext][helpstring][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Visible )(
|
||||
__RPC__in IWebBrowser2 * This,
|
||||
/* [in] */ VARIANT_BOOL Value);
|
||||
|
||||
/* [helpcontext][helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_StatusBar )(
|
||||
__RPC__in IWebBrowser2 * This,
|
||||
/* [retval][out] */ __RPC__out VARIANT_BOOL *pBool);
|
||||
|
||||
/* [helpcontext][helpstring][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_StatusBar )(
|
||||
__RPC__in IWebBrowser2 * This,
|
||||
/* [in] */ VARIANT_BOOL Value);
|
||||
|
||||
/* [helpcontext][helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_StatusText )(
|
||||
__RPC__in IWebBrowser2 * This,
|
||||
/* [retval][out] */ __RPC__deref_out_opt BSTR *StatusText);
|
||||
|
||||
/* [helpcontext][helpstring][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_StatusText )(
|
||||
__RPC__in IWebBrowser2 * This,
|
||||
/* [in] */ __RPC__in BSTR StatusText);
|
||||
|
||||
/* [helpcontext][helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ToolBar )(
|
||||
__RPC__in IWebBrowser2 * This,
|
||||
/* [retval][out] */ __RPC__out int *Value);
|
||||
|
||||
/* [helpcontext][helpstring][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ToolBar )(
|
||||
__RPC__in IWebBrowser2 * This,
|
||||
/* [in] */ int Value);
|
||||
|
||||
/* [helpcontext][helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_MenuBar )(
|
||||
__RPC__in IWebBrowser2 * This,
|
||||
/* [retval][out] */ __RPC__out VARIANT_BOOL *Value);
|
||||
|
||||
/* [helpcontext][helpstring][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_MenuBar )(
|
||||
__RPC__in IWebBrowser2 * This,
|
||||
/* [in] */ VARIANT_BOOL Value);
|
||||
|
||||
/* [helpcontext][helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_FullScreen )(
|
||||
__RPC__in IWebBrowser2 * This,
|
||||
/* [retval][out] */ __RPC__out VARIANT_BOOL *pbFullScreen);
|
||||
|
||||
/* [helpcontext][helpstring][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_FullScreen )(
|
||||
__RPC__in IWebBrowser2 * This,
|
||||
/* [in] */ VARIANT_BOOL bFullScreen);
|
||||
|
||||
/* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Navigate2 )(
|
||||
__RPC__in IWebBrowser2 * This,
|
||||
/* [in] */ __RPC__in VARIANT *URL,
|
||||
/* [unique][optional][in] */ __RPC__in_opt VARIANT *Flags,
|
||||
/* [unique][optional][in] */ __RPC__in_opt VARIANT *TargetFrameName,
|
||||
/* [unique][optional][in] */ __RPC__in_opt VARIANT *PostData,
|
||||
/* [unique][optional][in] */ __RPC__in_opt VARIANT *Headers);
|
||||
|
||||
/* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *QueryStatusWB )(
|
||||
__RPC__in IWebBrowser2 * This,
|
||||
/* [in] */ DWORD cmdID,
|
||||
/* [retval][out] */ __RPC__out DWORD *pcmdf);
|
||||
|
||||
/* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *ExecWB )(
|
||||
__RPC__in IWebBrowser2 * This,
|
||||
/* [in] */ DWORD cmdID,
|
||||
/* [in] */ DWORD cmdexecopt,
|
||||
/* [unique][optional][in] */ __RPC__in_opt VARIANT *pvaIn,
|
||||
/* [unique][optional][out][in] */ __RPC__inout_opt VARIANT *pvaOut);
|
||||
|
||||
/* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *ShowBrowserBar )(
|
||||
__RPC__in IWebBrowser2 * This,
|
||||
/* [in] */ __RPC__in VARIANT *pvaClsid,
|
||||
/* [unique][optional][in] */ __RPC__in_opt VARIANT *pvarShow,
|
||||
/* [unique][optional][in] */ __RPC__in_opt VARIANT *pvarSize);
|
||||
|
||||
/* [bindable][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ReadyState )(
|
||||
__RPC__in IWebBrowser2 * This,
|
||||
/* [out][retval] */ __RPC__out DWORD *plReadyState);
|
||||
|
||||
/* [helpcontext][helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Offline )(
|
||||
__RPC__in IWebBrowser2 * This,
|
||||
/* [retval][out] */ __RPC__out VARIANT_BOOL *pbOffline);
|
||||
|
||||
/* [helpcontext][helpstring][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Offline )(
|
||||
__RPC__in IWebBrowser2 * This,
|
||||
/* [in] */ VARIANT_BOOL bOffline);
|
||||
|
||||
/* [helpcontext][helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Silent )(
|
||||
__RPC__in IWebBrowser2 * This,
|
||||
/* [retval][out] */ __RPC__out VARIANT_BOOL *pbSilent);
|
||||
|
||||
/* [helpcontext][helpstring][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Silent )(
|
||||
__RPC__in IWebBrowser2 * This,
|
||||
/* [in] */ VARIANT_BOOL bSilent);
|
||||
|
||||
/* [helpcontext][helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_RegisterAsBrowser )(
|
||||
__RPC__in IWebBrowser2 * This,
|
||||
/* [retval][out] */ __RPC__out VARIANT_BOOL *pbRegister);
|
||||
|
||||
/* [helpcontext][helpstring][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_RegisterAsBrowser )(
|
||||
__RPC__in IWebBrowser2 * This,
|
||||
/* [in] */ VARIANT_BOOL bRegister);
|
||||
|
||||
/* [helpcontext][helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_RegisterAsDropTarget )(
|
||||
__RPC__in IWebBrowser2 * This,
|
||||
/* [retval][out] */ __RPC__out VARIANT_BOOL *pbRegister);
|
||||
|
||||
/* [helpcontext][helpstring][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_RegisterAsDropTarget )(
|
||||
__RPC__in IWebBrowser2 * This,
|
||||
/* [in] */ VARIANT_BOOL bRegister);
|
||||
|
||||
/* [helpcontext][helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_TheaterMode )(
|
||||
__RPC__in IWebBrowser2 * This,
|
||||
/* [retval][out] */ __RPC__out VARIANT_BOOL *pbRegister);
|
||||
|
||||
/* [helpcontext][helpstring][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_TheaterMode )(
|
||||
__RPC__in IWebBrowser2 * This,
|
||||
/* [in] */ VARIANT_BOOL bRegister);
|
||||
|
||||
/* [helpcontext][helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_AddressBar )(
|
||||
__RPC__in IWebBrowser2 * This,
|
||||
/* [retval][out] */ __RPC__out VARIANT_BOOL *Value);
|
||||
|
||||
/* [helpcontext][helpstring][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_AddressBar )(
|
||||
__RPC__in IWebBrowser2 * This,
|
||||
/* [in] */ VARIANT_BOOL Value);
|
||||
|
||||
/* [helpcontext][helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Resizable )(
|
||||
__RPC__in IWebBrowser2 * This,
|
||||
/* [retval][out] */ __RPC__out VARIANT_BOOL *Value);
|
||||
|
||||
/* [helpcontext][helpstring][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Resizable )(
|
||||
__RPC__in IWebBrowser2 * This,
|
||||
/* [in] */ VARIANT_BOOL Value);
|
||||
|
||||
END_INTERFACE
|
||||
} IWebBrowser2Vtbl;
|
||||
@@ -0,0 +1,74 @@
|
||||
typedef struct IActivationPropertiesVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
IActivationProperties * This,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [iid_is][out] */ void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
IActivationProperties * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
IActivationProperties * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetUnmarshalClass )(
|
||||
IActivationProperties * This,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [unique][in] */ void *pv,
|
||||
/* [in] */ DWORD dwDestContext,
|
||||
/* [unique][in] */ void *pvDestContext,
|
||||
/* [in] */ DWORD mshlflags,
|
||||
/* [out] */ CLSID *pCid);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetMarshalSizeMax )(
|
||||
IActivationProperties * This,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [unique][in] */ void *pv,
|
||||
/* [in] */ DWORD dwDestContext,
|
||||
/* [unique][in] */ void *pvDestContext,
|
||||
/* [in] */ DWORD mshlflags,
|
||||
/* [out] */ DWORD *pSize);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *MarshalInterface )(
|
||||
IActivationProperties * This,
|
||||
/* [unique][in] */ IStream *pStm,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [unique][in] */ void *pv,
|
||||
/* [in] */ DWORD dwDestContext,
|
||||
/* [unique][in] */ void *pvDestContext,
|
||||
/* [in] */ DWORD mshlflags);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *UnmarshalInterface )(
|
||||
IActivationProperties * This,
|
||||
/* [unique][in] */ IStream *pStm,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [out] */ void **ppv);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *ReleaseMarshalData )(
|
||||
IActivationProperties * This,
|
||||
/* [unique][in] */ IStream *pStm);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *DisconnectObject )(
|
||||
IActivationProperties * This,
|
||||
/* [in] */ DWORD dwReserved);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SetDestCtx )(
|
||||
IActivationProperties * This,
|
||||
/* [in] */ DWORD dwDestCtx);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SetMarshalFlags )(
|
||||
IActivationProperties * This,
|
||||
/* [in] */ DWORD dwMarshalFlags);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SetLocalBlob )(
|
||||
IActivationProperties * This,
|
||||
/* [in] */ void *blob);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetLocalBlob )(
|
||||
IActivationProperties * This,
|
||||
/* [out] */ void **blob);
|
||||
|
||||
END_INTERFACE
|
||||
} IActivationPropertiesVtbl;
|
||||
@@ -0,0 +1,38 @@
|
||||
typedef struct IActivationPropertiesOutVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
IActivationPropertiesOut * This,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [iid_is][out] */ void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
IActivationPropertiesOut * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
IActivationPropertiesOut * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetActivationID )(
|
||||
IActivationPropertiesOut * This,
|
||||
/* [out] */ GUID *pActivationID);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetObjectInterface )(
|
||||
IActivationPropertiesOut * This,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [in] */ DWORD actvflags,
|
||||
/* [iid_is][out] */ void **ppv);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetObjectInterfaces )(
|
||||
IActivationPropertiesOut * This,
|
||||
/* [in] */ DWORD cIfs,
|
||||
/* [in] */ DWORD actvflags,
|
||||
/* [size_is][in] */ MULTI_QI *multiQi);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *RemoveRequestedIIDs )(
|
||||
IActivationPropertiesOut * This,
|
||||
/* [in] */ DWORD cIfs,
|
||||
/* [size_is][in] */ IID *rgIID);
|
||||
|
||||
END_INTERFACE
|
||||
} IActivationPropertiesOutVtbl;
|
||||
@@ -0,0 +1,64 @@
|
||||
typedef struct IActivationPropertiesInVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
IActivationPropertiesIn * This,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [iid_is][out] */ void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
IActivationPropertiesIn * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
IActivationPropertiesIn * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetActivationID )(
|
||||
IActivationPropertiesIn * This,
|
||||
/* [out] */ GUID *pActivationID);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetClassInfo )(
|
||||
IActivationPropertiesIn * This,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [iid_is][out] */ void **ppv);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetClsctx )(
|
||||
IActivationPropertiesIn * This,
|
||||
/* [out] */ DWORD *pclsctx);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetActivationFlags )(
|
||||
IActivationPropertiesIn * This,
|
||||
/* [out] */ DWORD *pactvflags);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *AddRequestedIIDs )(
|
||||
IActivationPropertiesIn * This,
|
||||
/* [in] */ DWORD cIfs,
|
||||
/* [size_is][in] */ IID *rgIID);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetRequestedIIDs )(
|
||||
IActivationPropertiesIn * This,
|
||||
/* [out] */ ULONG *pulCount,
|
||||
/* [out] */ IID **prgIID);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *DelegateGetClassObject )(
|
||||
IActivationPropertiesIn * This,
|
||||
/* [out] */ IActivationPropertiesOut **pActPropsOut);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *DelegateCreateInstance )(
|
||||
IActivationPropertiesIn * This,
|
||||
/* [in] */ IUnknown *pUnkOuter,
|
||||
/* [out] */ IActivationPropertiesOut **pActPropsOut);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *DelegateCIAndGetCF )(
|
||||
IActivationPropertiesIn * This,
|
||||
/* [in] */ IUnknown *pUnkOuter,
|
||||
/* [out] */ IActivationPropertiesOut **pActPropsOut,
|
||||
/* [out] */ IClassFactory **ppCf);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetReturnActivationProperties )(
|
||||
IActivationPropertiesIn * This,
|
||||
/* [in] */ IUnknown *pUnk,
|
||||
/* [out] */ IActivationPropertiesOut **ppActOut);
|
||||
|
||||
END_INTERFACE
|
||||
} IActivationPropertiesInVtbl;
|
||||
@@ -0,0 +1,30 @@
|
||||
typedef struct IActivationStageInfoVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
IActivationStageInfo * This,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [iid_is][out] */ void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
IActivationStageInfo * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
IActivationStageInfo * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SetStageAndIndex )(
|
||||
IActivationStageInfo * This,
|
||||
/* [in] */ ACTIVATION_STAGE stage,
|
||||
/* [in] */ int index);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetStage )(
|
||||
IActivationStageInfo * This,
|
||||
/* [out] */ ACTIVATION_STAGE *pstage);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetIndex )(
|
||||
IActivationStageInfo * This,
|
||||
/* [out] */ int *pindex);
|
||||
|
||||
END_INTERFACE
|
||||
} IActivationStageInfoVtbl;
|
||||
@@ -0,0 +1,47 @@
|
||||
typedef struct IClassClassicInfoVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
IClassClassicInfo * This,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [iid_is][out] */ void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
IClassClassicInfo * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
IClassClassicInfo * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetThreadingModel )(
|
||||
IClassClassicInfo * This,
|
||||
/* [out] */ ThreadingModel *pthreadmodel);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetModulePath )(
|
||||
IClassClassicInfo * This,
|
||||
/* [in] */ CLSCTX clsctx,
|
||||
/* [string][out] */ WCHAR **pwszDllName);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetImplementedClsid )(
|
||||
IClassClassicInfo * This,
|
||||
/* [out] */ GUID **ppguidClsid);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetProcess )(
|
||||
IClassClassicInfo * This,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [out] */ void **ppv);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetRemoteServerName )(
|
||||
IClassClassicInfo * This,
|
||||
/* [out] */ WCHAR **pwszServerName);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetLocalServerType )(
|
||||
IClassClassicInfo * This,
|
||||
/* [out] */ LocalServerType *pType);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetSurrogateCommandLine )(
|
||||
IClassClassicInfo * This,
|
||||
/* [out] */ WCHAR **pwszSurrogateCommandLine);
|
||||
|
||||
END_INTERFACE
|
||||
} IClassClassicInfoVtbl;
|
||||
@@ -0,0 +1,78 @@
|
||||
typedef struct IComClassInfoVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
IComClassInfo * This,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [iid_is][out] */ void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
IComClassInfo * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
IComClassInfo * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetConfiguredClsid )(
|
||||
IComClassInfo * This,
|
||||
/* [out] */ GUID **ppguidClsid);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetProgId )(
|
||||
IComClassInfo * This,
|
||||
/* [out] */ WCHAR **pwszProgid);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetClassName )(
|
||||
IComClassInfo * This,
|
||||
/* [out] */ WCHAR **pwszClassName);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetApplication )(
|
||||
IComClassInfo * This,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [out] */ void **ppv);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetClassContext )(
|
||||
IComClassInfo * This,
|
||||
/* [in] */ CLSCTX clsctxFilter,
|
||||
/* [out] */ CLSCTX *pclsctx);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetCustomActivatorCount )(
|
||||
IComClassInfo * This,
|
||||
/* [in] */ ACTIVATION_STAGE activationStage,
|
||||
/* [out] */ ULONG *pulCount);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetCustomActivatorClsids )(
|
||||
IComClassInfo * This,
|
||||
/* [in] */ ACTIVATION_STAGE activationStage,
|
||||
/* [out] */ GUID **prgguidClsid);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetCustomActivators )(
|
||||
IComClassInfo * This,
|
||||
/* [in] */ ACTIVATION_STAGE activationStage,
|
||||
/* [out] */ ISystemActivator ***prgpActivator);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )(
|
||||
IComClassInfo * This,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [out] */ void **ppv);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *IsComPlusConfiguredClass )(
|
||||
IComClassInfo * This,
|
||||
/* [out] */ BOOL *pfComPlusConfiguredClass);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *MustRunInClientContext )(
|
||||
IComClassInfo * This,
|
||||
/* [out] */ BOOL *pbMustRunInClientContext);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetVersionNumber )(
|
||||
IComClassInfo * This,
|
||||
/* [out] */ DWORD *pdwVersionMS,
|
||||
/* [out] */ DWORD *pdwVersionLS);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Lock )(
|
||||
IComClassInfo * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Unlock )(
|
||||
IComClassInfo * This);
|
||||
|
||||
END_INTERFACE
|
||||
} IComClassInfoVtbl;
|
||||
@@ -0,0 +1,37 @@
|
||||
typedef struct IContextVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
IContext * This,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [iid_is][out] */ void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
IContext * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
IContext * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SetProperty )(
|
||||
IContext * This,
|
||||
/* [in] */ REFGUID rpolicyId,
|
||||
/* [in] */ CPFLAGS flags,
|
||||
/* [in] */ IUnknown *pUnk);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *RemoveProperty )(
|
||||
IContext * This,
|
||||
/* [in] */ REFGUID rPolicyId);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetProperty )(
|
||||
IContext * This,
|
||||
/* [in] */ REFGUID rGuid,
|
||||
/* [out] */ CPFLAGS *pFlags,
|
||||
/* [out] */ IUnknown **ppUnk);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *EnumContextProps )(
|
||||
IContext * This,
|
||||
/* [out] */ IEnumContextProps **ppEnumContextProps);
|
||||
|
||||
END_INTERFACE
|
||||
} IContextVtbl;
|
||||
@@ -0,0 +1,38 @@
|
||||
typedef struct IEnumContextPropsVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
IEnumContextProps * This,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [iid_is][out] */ void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
IEnumContextProps * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
IEnumContextProps * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Next )(
|
||||
IEnumContextProps * This,
|
||||
/* [in] */ ULONG celt,
|
||||
/* [length_is][size_is][out] */ ContextProperty *pContextProperties,
|
||||
/* [out] */ ULONG *pceltFetched);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Skip )(
|
||||
IEnumContextProps * This,
|
||||
/* [in] */ ULONG celt);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Reset )(
|
||||
IEnumContextProps * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Clone )(
|
||||
IEnumContextProps * This,
|
||||
/* [out] */ IEnumContextProps **ppEnumContextProps);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Count )(
|
||||
IEnumContextProps * This,
|
||||
/* [out] */ ULONG *pcelt);
|
||||
|
||||
END_INTERFACE
|
||||
} IEnumContextPropsVtbl;
|
||||
@@ -0,0 +1,34 @@
|
||||
typedef struct IEnumSTATSTGVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
IEnumSTATSTG * This,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [iid_is][out] */ void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
IEnumSTATSTG * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
IEnumSTATSTG * This);
|
||||
|
||||
/* [local] */ HRESULT ( STDMETHODCALLTYPE *Next )(
|
||||
IEnumSTATSTG * This,
|
||||
/* [in] */ ULONG celt,
|
||||
/* [length_is][size_is][out] */ STATSTG *rgelt,
|
||||
/* [out] */ ULONG *pceltFetched);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Skip )(
|
||||
IEnumSTATSTG * This,
|
||||
/* [in] */ ULONG celt);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Reset )(
|
||||
IEnumSTATSTG * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Clone )(
|
||||
IEnumSTATSTG * This,
|
||||
/* [out] */ IEnumSTATSTG **ppenum);
|
||||
|
||||
END_INTERFACE
|
||||
} IEnumSTATSTGVtbl;
|
||||
@@ -0,0 +1,43 @@
|
||||
typedef struct IInitActivationPropertiesInVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
IInitActivationPropertiesIn * This,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [iid_is][out] */ void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
IInitActivationPropertiesIn * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
IInitActivationPropertiesIn * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SetClsctx )(
|
||||
IInitActivationPropertiesIn * This,
|
||||
/* [in] */ DWORD clsctx);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SetActivationFlags )(
|
||||
IInitActivationPropertiesIn * This,
|
||||
/* [in] */ DWORD actvflags);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SetClassInfo )(
|
||||
IInitActivationPropertiesIn * This,
|
||||
/* [unique][in] */ IUnknown *pUnkClassInfo);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SetContextInfo )(
|
||||
IInitActivationPropertiesIn * This,
|
||||
/* [unique][in] */ IContext *pClientContext,
|
||||
/* [in] */ IContext *pPrototypeContext);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SetConstructFromStorage )(
|
||||
IInitActivationPropertiesIn * This,
|
||||
/* [unique][in] */ IStorage *pStorage);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SetConstructFromFile )(
|
||||
IInitActivationPropertiesIn * This,
|
||||
/* [in] */ WCHAR *wszFileName,
|
||||
/* [in] */ DWORD dwMode);
|
||||
|
||||
END_INTERFACE
|
||||
} IInitActivationPropertiesInVtbl;
|
||||
@@ -0,0 +1,38 @@
|
||||
typedef struct IOpaqueDataInfoVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
IOpaqueDataInfo * This,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [iid_is][out] */ void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
IOpaqueDataInfo * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
IOpaqueDataInfo * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *AddOpaqueData )(
|
||||
IOpaqueDataInfo * This,
|
||||
/* [in] */ OpaqueData *pData);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetOpaqueData )(
|
||||
IOpaqueDataInfo * This,
|
||||
/* [in] */ REFGUID guid,
|
||||
/* [out] */ OpaqueData **pData);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *DeleteOpaqueData )(
|
||||
IOpaqueDataInfo * This,
|
||||
/* [in] */ REFGUID guid);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetOpaqueDataCount )(
|
||||
IOpaqueDataInfo * This,
|
||||
/* [out] */ ULONG *pulCount);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetAllOpaqueData )(
|
||||
IOpaqueDataInfo * This,
|
||||
/* [out] */ OpaqueData **prgData);
|
||||
|
||||
END_INTERFACE
|
||||
} IOpaqueDataInfoVtbl;
|
||||
@@ -0,0 +1,84 @@
|
||||
typedef struct IPrivActivationPropertiesInVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
IPrivActivationPropertiesIn * This,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [iid_is][out] */ void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
IPrivActivationPropertiesIn * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
IPrivActivationPropertiesIn * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetActivationID )(
|
||||
IPrivActivationPropertiesIn * This,
|
||||
/* [out] */ GUID *pActivationID);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetClassInfo )(
|
||||
IPrivActivationPropertiesIn * This,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [iid_is][out] */ void **ppv);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetClsctx )(
|
||||
IPrivActivationPropertiesIn * This,
|
||||
/* [out] */ DWORD *pclsctx);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetActivationFlags )(
|
||||
IPrivActivationPropertiesIn * This,
|
||||
/* [out] */ DWORD *pactvflags);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *AddRequestedIIDs )(
|
||||
IPrivActivationPropertiesIn * This,
|
||||
/* [in] */ DWORD cIfs,
|
||||
/* [size_is][in] */ IID *rgIID);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetRequestedIIDs )(
|
||||
IPrivActivationPropertiesIn * This,
|
||||
/* [out] */ ULONG *pulCount,
|
||||
/* [out] */ IID **prgIID);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *DelegateGetClassObject )(
|
||||
IPrivActivationPropertiesIn * This,
|
||||
/* [out] */ IActivationPropertiesOut **pActPropsOut);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *DelegateCreateInstance )(
|
||||
IPrivActivationPropertiesIn * This,
|
||||
/* [in] */ IUnknown *pUnkOuter,
|
||||
/* [out] */ IActivationPropertiesOut **pActPropsOut);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *DelegateCIAndGetCF )(
|
||||
IPrivActivationPropertiesIn * This,
|
||||
/* [in] */ IUnknown *pUnkOuter,
|
||||
/* [out] */ IActivationPropertiesOut **pActPropsOut,
|
||||
/* [out] */ IClassFactory **ppCf);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetReturnActivationProperties )(
|
||||
IPrivActivationPropertiesIn * This,
|
||||
/* [in] */ IUnknown *pUnk,
|
||||
/* [out] */ IActivationPropertiesOut **ppActOut);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *PrivGetReturnActivationProperties )(
|
||||
IPrivActivationPropertiesIn * This,
|
||||
/* [out] */ IPrivActivationPropertiesOut **ppActOut);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetCOMVersion )(
|
||||
IPrivActivationPropertiesIn * This,
|
||||
/* [out] */ COMVERSION *pVersion);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetClsid )(
|
||||
IPrivActivationPropertiesIn * This,
|
||||
/* [out] */ CLSID *pClsid);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetClientToken )(
|
||||
IPrivActivationPropertiesIn * This,
|
||||
/* [out] */ HANDLE *pHandle);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetDestCtx )(
|
||||
IPrivActivationPropertiesIn * This,
|
||||
/* [out] */ DWORD *pdwDestCtx);
|
||||
|
||||
END_INTERFACE
|
||||
} IPrivActivationPropertiesInVtbl;
|
||||
@@ -0,0 +1,58 @@
|
||||
typedef struct IPrivActivationPropertiesOutVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
IPrivActivationPropertiesOut * This,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [iid_is][out] */ void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
IPrivActivationPropertiesOut * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
IPrivActivationPropertiesOut * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetActivationID )(
|
||||
IPrivActivationPropertiesOut * This,
|
||||
/* [out] */ GUID *pActivationID);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetObjectInterface )(
|
||||
IPrivActivationPropertiesOut * This,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [in] */ DWORD actvflags,
|
||||
/* [iid_is][out] */ void **ppv);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetObjectInterfaces )(
|
||||
IPrivActivationPropertiesOut * This,
|
||||
/* [in] */ DWORD cIfs,
|
||||
/* [in] */ DWORD actvflags,
|
||||
/* [size_is][in] */ MULTI_QI *multiQi);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *RemoveRequestedIIDs )(
|
||||
IPrivActivationPropertiesOut * This,
|
||||
/* [in] */ DWORD cIfs,
|
||||
/* [size_is][in] */ IID *rgIID);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SetObjectInterfaces )(
|
||||
IPrivActivationPropertiesOut * This,
|
||||
/* [in] */ DWORD cIfs,
|
||||
/* [in] */ IID *pIID,
|
||||
/* [in] */ IUnknown *pUnk);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SetMarshalledResults )(
|
||||
IPrivActivationPropertiesOut * This,
|
||||
/* [in] */ DWORD cIfs,
|
||||
/* [in] */ IID *pIID,
|
||||
/* [in] */ HRESULT *pHr,
|
||||
/* [in] */ MInterfacePointer **pIntfData);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetMarshalledResults )(
|
||||
IPrivActivationPropertiesOut * This,
|
||||
/* [out] */ DWORD *pcIfs,
|
||||
/* [out] */ IID **pIID,
|
||||
/* [out] */ HRESULT **pHr,
|
||||
/* [out] */ MInterfacePointer ***pIntfData);
|
||||
|
||||
END_INTERFACE
|
||||
} IPrivActivationPropertiesOutVtbl;
|
||||
@@ -0,0 +1,33 @@
|
||||
typedef struct IScmReplyInfoVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
IScmReplyInfo * This,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [iid_is][out] */ void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
IScmReplyInfo * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
IScmReplyInfo * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SetResolverInfo )(
|
||||
IScmReplyInfo * This,
|
||||
/* [in] */ PRIV_RESOLVER_INFO *pResolverInfo); /* Need to be cast to PRIV_RESOLVER_INFO_LEGACY on old windows */
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetResolverInfo )(
|
||||
IScmReplyInfo * This,
|
||||
/* [out] */ PRIV_RESOLVER_INFO **ppResolverInfo); /* Need to be cast to PRIV_RESOLVER_INFO_LEGACY on old windows */
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SetRemoteReplyInfo )(
|
||||
IScmReplyInfo * This,
|
||||
/* [in] */ REMOTE_REPLY_SCM_INFO *pRemoteReply);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetRemoteReplyInfo )(
|
||||
IScmReplyInfo * This,
|
||||
/* [out] */ REMOTE_REPLY_SCM_INFO **ppRemoteReply);
|
||||
|
||||
END_INTERFACE
|
||||
} IScmReplyInfoVtbl;
|
||||
@@ -0,0 +1,33 @@
|
||||
typedef struct IScmRequestInfoVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
IScmRequestInfo * This,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [iid_is][out] */ void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
IScmRequestInfo * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
IScmRequestInfo * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SetScmInfo )(
|
||||
IScmRequestInfo * This,
|
||||
/* [in] */ PRIV_SCM_INFO *pScmInfo);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetScmInfo )(
|
||||
IScmRequestInfo * This,
|
||||
/* [out] */ PRIV_SCM_INFO **ppScmInfo);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SetRemoteRequestInfo )(
|
||||
IScmRequestInfo * This,
|
||||
/* [in] */ REMOTE_REQUEST_SCM_INFO *pRemoteReq);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetRemoteRequestInfo )(
|
||||
IScmRequestInfo * This,
|
||||
/* [out] */ REMOTE_REQUEST_SCM_INFO **ppRemoteReq);
|
||||
|
||||
END_INTERFACE
|
||||
} IScmRequestInfoVtbl;
|
||||
@@ -0,0 +1,58 @@
|
||||
typedef struct IStandardActivatorVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
IStandardActivator * This,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [iid_is][out] */ void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
IStandardActivator * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
IStandardActivator * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *StandardGetClassObject )(
|
||||
IStandardActivator * This,
|
||||
/* [in] */ REFCLSID rclsid,
|
||||
/* [in] */ DWORD dwClsCtx,
|
||||
/* [in] */ COSERVERINFO *pServerInfo,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [iid_is][out] */ void **ppv);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *StandardCreateInstance )(
|
||||
IStandardActivator * This,
|
||||
/* [in] */ REFCLSID Clsid,
|
||||
/* [in] */ IUnknown *punkOuter,
|
||||
/* [in] */ DWORD dwClsCtx,
|
||||
/* [in] */ COSERVERINFO *pServerInfo,
|
||||
/* [in] */ DWORD dwCount,
|
||||
/* [size_is][in] */ MULTI_QI *pResults);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *StandardGetInstanceFromFile )(
|
||||
IStandardActivator * This,
|
||||
/* [in] */ COSERVERINFO *pServerInfo,
|
||||
/* [in] */ CLSID *pclsidOverride,
|
||||
/* [in] */ IUnknown *punkOuter,
|
||||
/* [in] */ DWORD dwClsCtx,
|
||||
/* [in] */ DWORD grfMode,
|
||||
/* [in] */ OLECHAR *pwszName,
|
||||
/* [in] */ DWORD dwCount,
|
||||
/* [size_is][in] */ MULTI_QI *pResults);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *StandardGetInstanceFromIStorage )(
|
||||
IStandardActivator * This,
|
||||
/* [in] */ COSERVERINFO *pServerInfo,
|
||||
/* [in] */ CLSID *pclsidOverride,
|
||||
/* [in] */ IUnknown *punkOuter,
|
||||
/* [in] */ DWORD dwClsCtx,
|
||||
/* [in] */ IStorage *pstg,
|
||||
/* [in] */ DWORD dwCount,
|
||||
/* [size_is][in] */ MULTI_QI *pResults);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Reset )(
|
||||
IStandardActivator * This);
|
||||
|
||||
END_INTERFACE
|
||||
} IStandardActivatorVtbl;
|
||||
@@ -0,0 +1,28 @@
|
||||
typedef struct ISystemActivatorVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
ISystemActivator * This,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [iid_is][out] */ void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
ISystemActivator * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
ISystemActivator * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetClassObject )(
|
||||
ISystemActivator * This,
|
||||
/* [unique][in] */ IActivationPropertiesIn *pActProperties,
|
||||
/* [out] */ IActivationPropertiesOut **ppActProperties);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *CreateInstance )(
|
||||
ISystemActivator * This,
|
||||
/* [unique][in] */ IUnknown *pUnkOuter,
|
||||
/* [unique][in] */ IActivationPropertiesIn *pActProperties,
|
||||
/* [out] */ IActivationPropertiesOut **ppActProperties);
|
||||
|
||||
END_INTERFACE
|
||||
} ISystemActivatorVtbl;
|
||||
@@ -0,0 +1,57 @@
|
||||
// Manually crafted from windows 10
|
||||
typedef struct IProxyManagerVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
__RPC__in IProxyManager * This,
|
||||
/* [in] */ __RPC__in REFIID riid,
|
||||
/* [annotation][iid_is][out] */
|
||||
_COM_Outptr_ void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
__RPC__in IProxyManager * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
__RPC__in IProxyManager * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *CreateServer )(
|
||||
IProxyManager * This,
|
||||
REFCLSID * rclsid,
|
||||
DWORD * clsctx,
|
||||
PVOID *pv);
|
||||
|
||||
BOOL ( STDMETHODCALLTYPE *IsConnected )(
|
||||
IProxyManager * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *LockConnection )(
|
||||
IProxyManager * This,
|
||||
BOOL fLock,
|
||||
BOOL fLastUnlockReleases);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Disconnect )(
|
||||
IProxyManager * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetConnectionStatus )(
|
||||
IProxyManager * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *ScalarDeletingDestructor )( // CPP code ? is this the real end of the Interface ?
|
||||
IProxyManager * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SetMapping )(
|
||||
IProxyManager * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetMapping )(
|
||||
IProxyManager * This);
|
||||
|
||||
IObjContext ( STDMETHODCALLTYPE *GetServerObjectContext )(
|
||||
IProxyManager * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetWrapperForContex )(
|
||||
IProxyManager * This,
|
||||
IObjContext *pCtx,
|
||||
IID *riid,
|
||||
void **ppv);
|
||||
|
||||
END_INTERFACE
|
||||
} IProxyManagerVtbl;
|
||||
@@ -0,0 +1,28 @@
|
||||
typedef struct IProxyServerIdentityVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
IProxyServerIdentity * This,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [annotation][iid_is][out] */
|
||||
__RPC__deref_out void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
IProxyServerIdentity * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
IProxyServerIdentity * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetServerProcessId )(
|
||||
IProxyServerIdentity * This,
|
||||
UINT *processId);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetServerProcessHandle )(
|
||||
IProxyServerIdentity * This,
|
||||
DWORD dwDesiredAccess,
|
||||
INT bInheritHandle,
|
||||
PVOID *phProcess) ;
|
||||
|
||||
END_INTERFACE
|
||||
} IProxyServerIdentityVtbl;
|
||||
@@ -0,0 +1,38 @@
|
||||
typedef struct IApplicationActivationManagerVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
__RPC__in IApplicationActivationManager * This,
|
||||
/* [in] */ __RPC__in REFIID riid,
|
||||
/* [annotation][iid_is][out] */
|
||||
_COM_Outptr_ void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
__RPC__in IApplicationActivationManager * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
__RPC__in IApplicationActivationManager * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *ActivateApplication )(
|
||||
__RPC__in IApplicationActivationManager * This,
|
||||
/* [in] */ __RPC__in LPCWSTR appUserModelId,
|
||||
/* [unique][in] */ __RPC__in_opt LPCWSTR arguments,
|
||||
/* [in] */ ACTIVATEOPTIONS options,
|
||||
/* [out] */ __RPC__out DWORD *processId);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *ActivateForFile )(
|
||||
__RPC__in IApplicationActivationManager * This,
|
||||
/* [in] */ __RPC__in LPCWSTR appUserModelId,
|
||||
/* [in] */ __RPC__in_opt IShellItemArray *itemArray,
|
||||
/* [unique][in] */ __RPC__in_opt LPCWSTR verb,
|
||||
/* [out] */ __RPC__out DWORD *processId);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *ActivateForProtocol )(
|
||||
__RPC__in IApplicationActivationManager * This,
|
||||
/* [in] */ __RPC__in LPCWSTR appUserModelId,
|
||||
/* [in] */ __RPC__in_opt IShellItemArray *itemArray,
|
||||
/* [out] */ __RPC__out DWORD *processId);
|
||||
|
||||
END_INTERFACE
|
||||
} IApplicationActivationManagerVtbl;
|
||||
@@ -0,0 +1,111 @@
|
||||
typedef struct IPackageDebugSettingsVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
IPackageDebugSettings * This,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [annotation][iid_is][out] */
|
||||
_COM_Outptr_ void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
IPackageDebugSettings * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
IPackageDebugSettings * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *EnableDebugging )(
|
||||
IPackageDebugSettings * This,
|
||||
/* [annotation][in] */
|
||||
_In_ LPCWSTR packageFullName,
|
||||
/* [annotation][in] */
|
||||
_In_opt_ LPCWSTR debuggerCommandLine,
|
||||
/* [annotation][in] */
|
||||
_In_opt_ PZZWSTR environment);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *DisableDebugging )(
|
||||
IPackageDebugSettings * This,
|
||||
/* [annotation][in] */
|
||||
_In_ LPCWSTR packageFullName);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Suspend )(
|
||||
IPackageDebugSettings * This,
|
||||
/* [annotation][in] */
|
||||
_In_ LPCWSTR packageFullName);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Resume )(
|
||||
IPackageDebugSettings * This,
|
||||
/* [annotation][in] */
|
||||
_In_ LPCWSTR packageFullName);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *TerminateAllProcesses )(
|
||||
IPackageDebugSettings * This,
|
||||
/* [annotation][in] */
|
||||
_In_ LPCWSTR packageFullName);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SetTargetSessionId )(
|
||||
IPackageDebugSettings * This,
|
||||
/* [annotation][in] */
|
||||
_In_ ULONG sessionId);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *EnumerateBackgroundTasks )(
|
||||
IPackageDebugSettings * This,
|
||||
/* [annotation][in] */
|
||||
_In_ LPCWSTR packageFullName,
|
||||
/* [annotation][out] */
|
||||
_Out_ ULONG *taskCount,
|
||||
/* [annotation][size_is][size_is][out] */
|
||||
_Outptr_result_buffer_(*taskCount) LPCGUID *taskIds,
|
||||
/* [annotation][size_is][size_is][out] */
|
||||
_Outptr_result_buffer_(*taskCount) LPCWSTR **taskNames);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *ActivateBackgroundTask )(
|
||||
IPackageDebugSettings * This,
|
||||
/* [annotation][in] */
|
||||
_In_ LPCGUID taskId);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *StartServicing )(
|
||||
IPackageDebugSettings * This,
|
||||
/* [annotation][in] */
|
||||
_In_ LPCWSTR packageFullName);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *StopServicing )(
|
||||
IPackageDebugSettings * This,
|
||||
/* [annotation][in] */
|
||||
_In_ LPCWSTR packageFullName);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *StartSessionRedirection )(
|
||||
IPackageDebugSettings * This,
|
||||
/* [annotation][in] */
|
||||
_In_ LPCWSTR packageFullName,
|
||||
/* [annotation][in] */
|
||||
_In_ ULONG sessionId);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *StopSessionRedirection )(
|
||||
IPackageDebugSettings * This,
|
||||
/* [annotation][in] */
|
||||
_In_ LPCWSTR packageFullName);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetPackageExecutionState )(
|
||||
IPackageDebugSettings * This,
|
||||
/* [annotation][in] */
|
||||
_In_ LPCWSTR packageFullName,
|
||||
/* [annotation][out] */
|
||||
_Out_ PACKAGE_EXECUTION_STATE *packageExecutionState);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *RegisterForPackageStateChanges )(
|
||||
IPackageDebugSettings * This,
|
||||
/* [annotation][in] */
|
||||
_In_ LPCWSTR packageFullName,
|
||||
/* [annotation][in] */
|
||||
_In_ IPackageExecutionStateChangeNotification *pPackageExecutionStateChangeNotification,
|
||||
/* [annotation][out] */
|
||||
_Out_ DWORD *pdwCookie);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *UnregisterForPackageStateChanges )(
|
||||
IPackageDebugSettings * This,
|
||||
/* [annotation][in] */
|
||||
_In_ DWORD dwCookie);
|
||||
|
||||
END_INTERFACE
|
||||
} IPackageDebugSettingsVtbl;
|
||||
+23
@@ -0,0 +1,23 @@
|
||||
typedef struct IPackageExecutionStateChangeNotificationVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
__RPC__in IPackageExecutionStateChangeNotification * This,
|
||||
/* [in] */ __RPC__in REFIID riid,
|
||||
/* [annotation][iid_is][out] */
|
||||
_COM_Outptr_ void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
__RPC__in IPackageExecutionStateChangeNotification * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
__RPC__in IPackageExecutionStateChangeNotification * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *OnStateChanged )(
|
||||
__RPC__in IPackageExecutionStateChangeNotification * This,
|
||||
/* [string][in] */ __RPC__in_string LPCWSTR pszPackageFullName,
|
||||
/* [in] */ PACKAGE_EXECUTION_STATE pesNewState);
|
||||
|
||||
END_INTERFACE
|
||||
} IPackageExecutionStateChangeNotificationVtbl;
|
||||
@@ -0,0 +1,62 @@
|
||||
typedef struct IChannelHookVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
IChannelHook * This,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [iid_is][out] */ void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
IChannelHook * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
IChannelHook * This);
|
||||
|
||||
PVOID ( STDMETHODCALLTYPE *ClientGetSize )(
|
||||
IChannelHook * This,
|
||||
/* [in] */ REFGUID uExtent,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [out] */ ULONG *pDataSize);
|
||||
|
||||
PVOID ( STDMETHODCALLTYPE *ClientFillBuffer )(
|
||||
IChannelHook * This,
|
||||
/* [in] */ REFGUID uExtent,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [out][in] */ ULONG *pDataSize,
|
||||
/* [in] */ void *pDataBuffer);
|
||||
|
||||
PVOID ( STDMETHODCALLTYPE *ClientNotify )(
|
||||
IChannelHook * This,
|
||||
/* [in] */ REFGUID uExtent,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [in] */ ULONG cbDataSize,
|
||||
/* [in] */ void *pDataBuffer,
|
||||
/* [in] */ DWORD lDataRep,
|
||||
/* [in] */ HRESULT hrFault);
|
||||
|
||||
PVOID ( STDMETHODCALLTYPE *ServerNotify )(
|
||||
IChannelHook * This,
|
||||
/* [in] */ REFGUID uExtent,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [in] */ ULONG cbDataSize,
|
||||
/* [in] */ void *pDataBuffer,
|
||||
/* [in] */ DWORD lDataRep);
|
||||
|
||||
PVOID ( STDMETHODCALLTYPE *ServerGetSize )(
|
||||
IChannelHook * This,
|
||||
/* [in] */ REFGUID uExtent,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [in] */ HRESULT hrFault,
|
||||
/* [out] */ ULONG *pDataSize);
|
||||
|
||||
PVOID ( STDMETHODCALLTYPE *ServerFillBuffer )(
|
||||
IChannelHook * This,
|
||||
/* [in] */ REFGUID uExtent,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [out][in] */ ULONG *pDataSize,
|
||||
/* [in] */ void *pDataBuffer,
|
||||
/* [in] */ HRESULT hrFault);
|
||||
|
||||
END_INTERFACE
|
||||
} IChannelHookVtbl;
|
||||
@@ -0,0 +1,39 @@
|
||||
typedef struct IRpcChannelBufferVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
IRpcChannelBuffer * This,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [iid_is][out] */ void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
IRpcChannelBuffer * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
IRpcChannelBuffer * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetBuffer )(
|
||||
IRpcChannelBuffer * This,
|
||||
/* [in] */ RPCOLEMESSAGE *pMessage,
|
||||
/* [in] */ REFIID riid);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SendReceive )(
|
||||
IRpcChannelBuffer * This,
|
||||
/* [out][in] */ RPCOLEMESSAGE *pMessage,
|
||||
/* [out] */ ULONG *pStatus);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *FreeBuffer )(
|
||||
IRpcChannelBuffer * This,
|
||||
/* [in] */ RPCOLEMESSAGE *pMessage);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetDestCtx )(
|
||||
IRpcChannelBuffer * This,
|
||||
/* [out] */ DWORD *pdwDestContext,
|
||||
/* [out] */ void **ppvDestContext);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *IsConnected )(
|
||||
IRpcChannelBuffer * This);
|
||||
|
||||
END_INTERFACE
|
||||
} IRpcChannelBufferVtbl;
|
||||
@@ -0,0 +1,26 @@
|
||||
typedef struct IRpcHelperVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
IRpcHelper * This,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [iid_is][out] */ void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
IRpcHelper * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
IRpcHelper * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetDCOMProtocolVersion )(
|
||||
IRpcHelper * This,
|
||||
/* [out] */ DWORD *pComVersion);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetIIDFromOBJREF )(
|
||||
IRpcHelper * This,
|
||||
/* [in] */ void *pObjRef,
|
||||
/* [out] */ IID **piid);
|
||||
|
||||
END_INTERFACE
|
||||
} IRpcHelperVtbl;
|
||||
@@ -0,0 +1,29 @@
|
||||
typedef struct IRpcOptionsVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
IRpcOptions * This,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [iid_is][out] */ void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
IRpcOptions * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
IRpcOptions * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Set )(
|
||||
IRpcOptions * This,
|
||||
/* [in] */ IUnknown *pPrx,
|
||||
/* [in] */ DWORD dwProperty,
|
||||
/* [in] */ ULONG_PTR dwValue);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Query )(
|
||||
IRpcOptions * This,
|
||||
/* [in] */ IUnknown *pPrx,
|
||||
/* [in] */ DWORD dwProperty,
|
||||
/* [out] */ ULONG_PTR *pdwValue);
|
||||
|
||||
END_INTERFACE
|
||||
} IRpcOptionsVtbl;
|
||||
@@ -0,0 +1,45 @@
|
||||
typedef struct IRpcStubBufferVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
IRpcStubBuffer * This,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [iid_is][out] */ PVOID *ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
IRpcStubBuffer * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
IRpcStubBuffer * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Connect )(
|
||||
IRpcStubBuffer * This,
|
||||
/* [in] */ IUnknown *pUnkServer);
|
||||
|
||||
PVOID ( STDMETHODCALLTYPE *Disconnect )(
|
||||
IRpcStubBuffer * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Invoke )(
|
||||
IRpcStubBuffer * This,
|
||||
/* [in] */ RPCOLEMESSAGE *_prpcmsg,
|
||||
/* [in] */ IRpcChannelBuffer *_pRpcChannelBuffer);
|
||||
|
||||
// IRpcStubBuffer *
|
||||
PVOID ( STDMETHODCALLTYPE *IsIIDSupported )(
|
||||
IRpcStubBuffer * This,
|
||||
/* [in] */ REFIID riid);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *CountRefs )(
|
||||
IRpcStubBuffer * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *DebugServerQueryInterface )(
|
||||
IRpcStubBuffer * This,
|
||||
PVOID *ppv);
|
||||
|
||||
PVOID ( STDMETHODCALLTYPE *DebugServerRelease )(
|
||||
IRpcStubBuffer * This,
|
||||
PVOID pv);
|
||||
|
||||
END_INTERFACE
|
||||
} IRpcStubBufferVtbl;
|
||||
@@ -19,8 +19,8 @@ class COMInterface(ctypes.c_void_p):
|
||||
|
||||
# So COMInterface completely bypass the HRESULT
|
||||
# return value check on restype by setting the restype to COMHRESULT
|
||||
# But we add the 'errcheck' callbakc capacity for all COMInterface and subclasses
|
||||
# So the default implem of the callbakc must have the same behavior as
|
||||
# But we add the 'errcheck' callback capacity for all COMInterface and subclasses
|
||||
# So the default implem of the callback must have the same behavior as
|
||||
# standard HRESULT restype.
|
||||
# This is why default errcheck callback call ctypes._check_HRESULT
|
||||
def _default_errcheck(self, result, func, args):
|
||||
@@ -42,12 +42,33 @@ class COMInterface(ctypes.c_void_p):
|
||||
description = "<NULL>" if not self.value else ""
|
||||
return "<{0}{1} at {2:#x}>".format(type(self).__name__, description, id(self))
|
||||
|
||||
# Simplified API for QueryInterface for interface embeding there IID
|
||||
def query(self, interfacetype):
|
||||
interface = interfacetype()
|
||||
self.QueryInterface(interface.IID, interface)
|
||||
return interface
|
||||
|
||||
# Simplified API for QueryInterface for interface embeding their IID
|
||||
# Or for string/Obj
|
||||
def query(self, interface, target=None):
|
||||
if isinstance(interface, str): # We have a GUID
|
||||
interface_iid = IID.from_string(interface)
|
||||
if target is None:
|
||||
target = IUnknown()
|
||||
elif issubclass(interface, COMInterface): # We have a PFW COM interface
|
||||
interface_iid = interface.IID
|
||||
if target is None:
|
||||
target = interface() # Use an instance of the ComInterface as target of the QueryInterface
|
||||
else:
|
||||
# We have something else (A gdef.GUID probably)
|
||||
interface_iid = interface
|
||||
if target is None:
|
||||
target = IUnknown()
|
||||
self.QueryInterface(interface_iid, target)
|
||||
return target
|
||||
|
||||
def marshal(self, target_iid=None, destination=MSHCTX_NOSHAREDMEM, flags=MSHLFLAGS_NORMAL):
|
||||
if target_iid is None:
|
||||
target_iid = self.IID
|
||||
mystream = windows.com.MemoryIStream.create()
|
||||
windows.winproxy.CoMarshalInterface(mystream, target_iid, self, destination, 0, flags)
|
||||
mystream.seek(0)
|
||||
buffer = mystream.read(0xffffffff) # Todo: release stuff
|
||||
return buffer
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,7 @@
|
||||
#define BG_JOB_ENUM_ALL_USERS 0x0001
|
||||
|
||||
#define BG_NOTIFY_JOB_TRANSFERRED 0x0001
|
||||
#define BG_NOTIFY_JOB_ERROR 0x0002
|
||||
#define BG_NOTIFY_DISABLE 0x0004
|
||||
#define BG_NOTIFY_JOB_MODIFICATION 0x0008
|
||||
#define BG_NOTIFY_FILE_TRANSFERRED 0x0010
|
||||
@@ -0,0 +1,145 @@
|
||||
#define MAX_DEVICE_ID_LEN 200
|
||||
#define MAX_DEVNODE_ID_LEN MAX_DEVICE_ID_LEN
|
||||
|
||||
#define MAX_GUID_STRING_LEN 39 // 38 chars + terminator null
|
||||
#define MAX_CLASS_NAME_LEN 32
|
||||
#define MAX_PROFILE_LEN 80
|
||||
|
||||
#define MAX_CONFIG_VALUE 9999
|
||||
#define MAX_INSTANCE_VALUE 9999
|
||||
|
||||
#define MAX_MEM_REGISTERS 9 // Win95 compatibility--not applicable to 32-bit ConfigMgr
|
||||
#define MAX_IO_PORTS 20 // Win95 compatibility--not applicable to 32-bit ConfigMgr
|
||||
#define MAX_IRQS 7 // Win95 compatibility--not applicable to 32-bit ConfigMgr
|
||||
#define MAX_DMA_CHANNELS 7 // Win95 compatibility--not applicable to 32-bit ConfigMgr
|
||||
|
||||
#define DWORD_MAX 0xffffffff
|
||||
#define DWORDLONG_MAX 0xffffffffffffffff
|
||||
|
||||
|
||||
|
||||
#define CM_DEVCAP_LOCKSUPPORTED (0x00000001)
|
||||
#define CM_DEVCAP_EJECTSUPPORTED (0x00000002)
|
||||
#define CM_DEVCAP_REMOVABLE (0x00000004)
|
||||
#define CM_DEVCAP_DOCKDEVICE (0x00000008)
|
||||
#define CM_DEVCAP_UNIQUEID (0x00000010)
|
||||
#define CM_DEVCAP_SILENTINSTALL (0x00000020)
|
||||
#define CM_DEVCAP_RAWDEVICEOK (0x00000040)
|
||||
#define CM_DEVCAP_SURPRISEREMOVALOK (0x00000080)
|
||||
#define CM_DEVCAP_HARDWAREDISABLED (0x00000100)
|
||||
#define CM_DEVCAP_NONDYNAMIC (0x00000200)
|
||||
|
||||
|
||||
//
|
||||
// Resource types
|
||||
//
|
||||
#define ResType_All (0x00000000) // Return all resource types
|
||||
#define ResType_None (0x00000000) // Arbitration always succeeded
|
||||
#define ResType_Mem (0x00000001) // Physical address resource
|
||||
#define ResType_IO (0x00000002) // Physical I/O address resource
|
||||
#define ResType_DMA (0x00000003) // DMA channels resource
|
||||
#define ResType_IRQ (0x00000004) // IRQ resource
|
||||
#define ResType_DoNotUse (0x00000005) // Used as spacer to sync subsequent ResTypes w/NT
|
||||
#define ResType_BusNumber (0x00000006) // bus number resource
|
||||
#define ResType_MemLarge (0x00000007) // Memory resources >= 4GB
|
||||
#define ResType_MAX (0x00000007) // Maximum known (arbitrated) ResType
|
||||
|
||||
#define ResType_Ignored_Bit (0x00008000) // Ignore this resource
|
||||
#define ResType_ClassSpecific (0x0000FFFF) // class-specific resource
|
||||
#define ResType_Reserved (0x00008000) // reserved for internal use
|
||||
#define ResType_DevicePrivate (0x00008001) // device private data
|
||||
#define ResType_PcCardConfig (0x00008002) // PC Card configuration data
|
||||
#define ResType_MfCardConfig (0x00008003) // MF Card configuration data
|
||||
#define ResType_Connection (0x00008004) // Connection (Resource Hub) resource
|
||||
|
||||
|
||||
//
|
||||
// Logical Config Flags (specified in call to CM_Get_First_Log_Conf
|
||||
//
|
||||
#define BASIC_LOG_CONF 0x00000000 // Specifies the req list.
|
||||
#define FILTERED_LOG_CONF 0x00000001 // Specifies the filtered req list.
|
||||
#define ALLOC_LOG_CONF 0x00000002 // Specifies the Alloc Element.
|
||||
#define BOOT_LOG_CONF 0x00000003 // Specifies the RM Alloc Element.
|
||||
#define FORCED_LOG_CONF 0x00000004 // Specifies the Forced Log Conf
|
||||
#define OVERRIDE_LOG_CONF 0x00000005 // Specifies the Override req list.
|
||||
#define NUM_LOG_CONF 0x00000006 // Number of Log Conf type
|
||||
#define LOG_CONF_BITS 0x00000007 // The bits of the log conf type.
|
||||
|
||||
#define PRIORITY_EQUAL_FIRST (0x00000008) // Same priority, new one first
|
||||
#define PRIORITY_EQUAL_LAST (0x00000000) // Same priority, new one last
|
||||
#define PRIORITY_BIT (0x00000008)
|
||||
|
||||
|
||||
//
|
||||
// Configuration Manager CONFIGRET return status codes
|
||||
//
|
||||
|
||||
#define CR_SUCCESS (0x00000000)
|
||||
#define CR_DEFAULT (0x00000001)
|
||||
#define CR_OUT_OF_MEMORY (0x00000002)
|
||||
#define CR_INVALID_POINTER (0x00000003)
|
||||
#define CR_INVALID_FLAG (0x00000004)
|
||||
#define CR_INVALID_DEVNODE (0x00000005)
|
||||
#define CR_INVALID_DEVINST CR_INVALID_DEVNODE
|
||||
#define CR_INVALID_RES_DES (0x00000006)
|
||||
#define CR_INVALID_LOG_CONF (0x00000007)
|
||||
#define CR_INVALID_ARBITRATOR (0x00000008)
|
||||
#define CR_INVALID_NODELIST (0x00000009)
|
||||
#define CR_DEVNODE_HAS_REQS (0x0000000A)
|
||||
#define CR_DEVINST_HAS_REQS CR_DEVNODE_HAS_REQS
|
||||
#define CR_INVALID_RESOURCEID (0x0000000B)
|
||||
#define CR_DLVXD_NOT_FOUND (0x0000000C) // WIN 95 ONLY
|
||||
#define CR_NO_SUCH_DEVNODE (0x0000000D)
|
||||
#define CR_NO_SUCH_DEVINST CR_NO_SUCH_DEVNODE
|
||||
#define CR_NO_MORE_LOG_CONF (0x0000000E)
|
||||
#define CR_NO_MORE_RES_DES (0x0000000F)
|
||||
#define CR_ALREADY_SUCH_DEVNODE (0x00000010)
|
||||
#define CR_ALREADY_SUCH_DEVINST CR_ALREADY_SUCH_DEVNODE
|
||||
#define CR_INVALID_RANGE_LIST (0x00000011)
|
||||
#define CR_INVALID_RANGE (0x00000012)
|
||||
#define CR_FAILURE (0x00000013)
|
||||
#define CR_NO_SUCH_LOGICAL_DEV (0x00000014)
|
||||
#define CR_CREATE_BLOCKED (0x00000015)
|
||||
#define CR_NOT_SYSTEM_VM (0x00000016) // WIN 95 ONLY
|
||||
#define CR_REMOVE_VETOED (0x00000017)
|
||||
#define CR_APM_VETOED (0x00000018)
|
||||
#define CR_INVALID_LOAD_TYPE (0x00000019)
|
||||
#define CR_BUFFER_SMALL (0x0000001A)
|
||||
#define CR_NO_ARBITRATOR (0x0000001B)
|
||||
#define CR_NO_REGISTRY_HANDLE (0x0000001C)
|
||||
#define CR_REGISTRY_ERROR (0x0000001D)
|
||||
#define CR_INVALID_DEVICE_ID (0x0000001E)
|
||||
#define CR_INVALID_DATA (0x0000001F)
|
||||
#define CR_INVALID_API (0x00000020)
|
||||
#define CR_DEVLOADER_NOT_READY (0x00000021)
|
||||
#define CR_NEED_RESTART (0x00000022)
|
||||
#define CR_NO_MORE_HW_PROFILES (0x00000023)
|
||||
#define CR_DEVICE_NOT_THERE (0x00000024)
|
||||
#define CR_NO_SUCH_VALUE (0x00000025)
|
||||
#define CR_WRONG_TYPE (0x00000026)
|
||||
#define CR_INVALID_PRIORITY (0x00000027)
|
||||
#define CR_NOT_DISABLEABLE (0x00000028)
|
||||
#define CR_FREE_RESOURCES (0x00000029)
|
||||
#define CR_QUERY_VETOED (0x0000002A)
|
||||
#define CR_CANT_SHARE_IRQ (0x0000002B)
|
||||
#define CR_NO_DEPENDENT (0x0000002C)
|
||||
#define CR_SAME_RESOURCES (0x0000002D)
|
||||
#define CR_NO_SUCH_REGISTRY_KEY (0x0000002E)
|
||||
#define CR_INVALID_MACHINENAME (0x0000002F) // NT ONLY
|
||||
#define CR_REMOTE_COMM_FAILURE (0x00000030) // NT ONLY
|
||||
#define CR_MACHINE_UNAVAILABLE (0x00000031) // NT ONLY
|
||||
#define CR_NO_CM_SERVICES (0x00000032) // NT ONLY
|
||||
#define CR_ACCESS_DENIED (0x00000033) // NT ONLY
|
||||
#define CR_CALL_NOT_IMPLEMENTED (0x00000034)
|
||||
#define CR_INVALID_PROPERTY (0x00000035)
|
||||
#define CR_DEVICE_INTERFACE_ACTIVE (0x00000036)
|
||||
#define CR_NO_SUCH_DEVICE_INTERFACE (0x00000037)
|
||||
#define CR_INVALID_REFERENCE_STRING (0x00000038)
|
||||
#define CR_INVALID_CONFLICT_LIST (0x00000039)
|
||||
#define CR_INVALID_INDEX (0x0000003A)
|
||||
#define CR_INVALID_STRUCTURE_SIZE (0x0000003B)
|
||||
#define NUM_CR_RESULTS (0x0000003C)
|
||||
|
||||
|
||||
#define PCD_MAX_MEMORY 2
|
||||
#define PCD_MAX_IO 2
|
||||
@@ -0,0 +1,33 @@
|
||||
#define ORPCF_NULL ( 0 )
|
||||
#define ORPCF_LOCAL ( 1 )
|
||||
#define ORPCF_RESERVED1 ( 2 )
|
||||
#define ORPCF_RESERVED2 ( 4 )
|
||||
#define ORPCF_RESERVED3 ( 8 )
|
||||
#define ORPCF_RESERVED4 ( 16 )
|
||||
|
||||
#define ORPCF_INPUT_SYNC ORPCF_RESERVED1
|
||||
#define ORPCF_ASYNC ORPCF_RESERVED2
|
||||
#define ORPCF_DYNAMIC_CLOAKING ORPCF_RESERVED3
|
||||
|
||||
#define ORPCF_REJECTED ORPCF_RESERVED1
|
||||
#define ORPCF_RETRY_LATER ORPCF_RESERVED2
|
||||
|
||||
#define OBJREF_SIGNATURE ( 0x574f454d )
|
||||
#define OBJREF_STANDARD ( 0x1 )
|
||||
#define OBJREF_HANDLER ( 0x2 )
|
||||
#define OBJREF_CUSTOM ( 0x4 )
|
||||
#define OBJREF_EXTENDED ( 0x8 )
|
||||
#define SORF_OXRES1 ( 0x1 )
|
||||
#define SORF_OXRES2 ( 0x20 )
|
||||
#define SORF_OXRES3 ( 0x40 )
|
||||
#define SORF_OXRES4 ( 0x80 )
|
||||
#define SORF_OXRES5 ( 0x100 )
|
||||
#define SORF_OXRES6 ( 0x200 )
|
||||
#define SORF_OXRES7 ( 0x400 )
|
||||
#define SORF_OXRES8 ( 0x800 )
|
||||
#define SORF_NULL ( 0 )
|
||||
#define SORF_NOPING ( 0x1000 )
|
||||
|
||||
#define UNIQUE_FLAG_PADDING 2
|
||||
#define MAINHDRSIG 0x414E554B
|
||||
#define ENTRYHDRSIG 0x494E414E
|
||||
@@ -0,0 +1,153 @@
|
||||
#define ALG_CLASS_ANY (0)
|
||||
#define ALG_CLASS_SIGNATURE (1 << 13)
|
||||
#define ALG_CLASS_MSG_ENCRYPT (2 << 13)
|
||||
#define ALG_CLASS_DATA_ENCRYPT (3 << 13)
|
||||
#define ALG_CLASS_HASH (4 << 13)
|
||||
#define ALG_CLASS_KEY_EXCHANGE (5 << 13)
|
||||
#define ALG_CLASS_ALL (7 << 13)
|
||||
/* Algorithm types */
|
||||
#define ALG_TYPE_ANY (0)
|
||||
#define ALG_TYPE_DSS (1 << 9)
|
||||
#define ALG_TYPE_RSA (2 << 9)
|
||||
#define ALG_TYPE_BLOCK (3 << 9)
|
||||
#define ALG_TYPE_STREAM (4 << 9)
|
||||
#define ALG_TYPE_DH (5 << 9)
|
||||
#define ALG_TYPE_SECURECHANNEL (6 << 9)
|
||||
#define ALG_TYPE_ECDH (7 << 9)
|
||||
|
||||
/* SIDs */
|
||||
#define ALG_SID_ANY (0)
|
||||
/* RSA SIDs */
|
||||
#define ALG_SID_RSA_ANY 0
|
||||
#define ALG_SID_RSA_PKCS 1
|
||||
#define ALG_SID_RSA_MSATWORK 2
|
||||
#define ALG_SID_RSA_ENTRUST 3
|
||||
#define ALG_SID_RSA_PGP 4
|
||||
/* DSS SIDs */
|
||||
#define ALG_SID_DSS_ANY 0
|
||||
#define ALG_SID_DSS_PKCS 1
|
||||
#define ALG_SID_DSS_DMS 2
|
||||
#define ALG_SID_ECDSA 3
|
||||
|
||||
/* DES SIDs */
|
||||
#define ALG_SID_DES 1
|
||||
#define ALG_SID_3DES 3
|
||||
#define ALG_SID_DESX 4
|
||||
#define ALG_SID_IDEA 5
|
||||
#define ALG_SID_CAST 6
|
||||
#define ALG_SID_SAFERSK64 7
|
||||
#define ALG_SID_SAFERSK128 8
|
||||
#define ALG_SID_3DES_112 9
|
||||
#define ALG_SID_CYLINK_MEK 12
|
||||
#define ALG_SID_RC5 13
|
||||
#define ALG_SID_AES_128 14
|
||||
#define ALG_SID_AES_192 15
|
||||
#define ALG_SID_AES_256 16
|
||||
#define ALG_SID_AES 17
|
||||
/* Fortezza */
|
||||
#define ALG_SID_SKIPJACK 10
|
||||
#define ALG_SID_TEK 11
|
||||
/* Diffie-Hellmans SIDs */
|
||||
#define ALG_SID_DH_SANDF 1
|
||||
#define ALG_SID_DH_EPHEM 2
|
||||
#define ALG_SID_AGREED_KEY_ANY 3
|
||||
#define ALG_SID_KEA 4
|
||||
#define ALG_SID_ECDH 5
|
||||
#define ALG_SID_ECDH_EPHEM 6
|
||||
/* RC2 SIDs */
|
||||
#define ALG_SID_RC4 1
|
||||
#define ALG_SID_RC2 2
|
||||
#define ALG_SID_SEAL 2
|
||||
/* Hash SIDs */
|
||||
#define ALG_SID_MD2 1
|
||||
#define ALG_SID_MD4 2
|
||||
#define ALG_SID_MD5 3
|
||||
#define ALG_SID_SHA 4
|
||||
#define ALG_SID_SHA1 ALG_SID_SHA
|
||||
#define ALG_SID_MAC 5
|
||||
#define ALG_SID_RIPEMD 6
|
||||
#define ALG_SID_RIPEMD160 7
|
||||
#define ALG_SID_SSL3SHAMD5 8
|
||||
#define ALG_SID_HMAC 9
|
||||
#define ALG_SID_TLS1PRF 10
|
||||
#define ALG_SID_HASH_REPLACE_OWF 11
|
||||
#define ALG_SID_SHA_256 12
|
||||
#define ALG_SID_SHA_384 13
|
||||
#define ALG_SID_SHA_512 14
|
||||
/* SCHANNEL SIDs */
|
||||
#define ALG_SID_SSL3_MASTER 1
|
||||
#define ALG_SID_SCHANNEL_MASTER_HASH 2
|
||||
#define ALG_SID_SCHANNEL_MAC_KEY 3
|
||||
#define ALG_SID_PCT1_MASTER 4
|
||||
#define ALG_SID_SSL2_MASTER 5
|
||||
#define ALG_SID_TLS1_MASTER 6
|
||||
#define ALG_SID_SCHANNEL_ENC_KEY 7
|
||||
#define ALG_SID_EXAMPLE 80
|
||||
|
||||
#define ALG_SID_ECMQV 1
|
||||
|
||||
/* Algorithm Definitions */
|
||||
#define CALG_MD2 (ALG_CLASS_HASH | ALG_TYPE_ANY | ALG_SID_MD2)
|
||||
#define CALG_MD4 (ALG_CLASS_HASH | ALG_TYPE_ANY | ALG_SID_MD4)
|
||||
#define CALG_MD5 (ALG_CLASS_HASH | ALG_TYPE_ANY | ALG_SID_MD5)
|
||||
#define CALG_SHA (ALG_CLASS_HASH | ALG_TYPE_ANY | ALG_SID_SHA)
|
||||
#define CALG_SHA1 CALG_SHA
|
||||
#define CALG_MAC (ALG_CLASS_HASH | ALG_TYPE_ANY | ALG_SID_MAC)
|
||||
#define CALG_SSL3_SHAMD5 (ALG_CLASS_HASH | ALG_TYPE_ANY | ALG_SID_SSL3SHAMD5)
|
||||
#define CALG_HMAC (ALG_CLASS_HASH | ALG_TYPE_ANY | ALG_SID_HMAC)
|
||||
#define CALG_TLS1PRF (ALG_CLASS_HASH | ALG_TYPE_ANY | ALG_SID_TLS1PRF)
|
||||
#define CALG_HASH_REPLACE_OWF (ALG_CLASS_HASH | ALG_TYPE_ANY | ALG_SID_HASH_REPLACE_OWF)
|
||||
#define CALG_SHA_256 (ALG_CLASS_HASH | ALG_TYPE_ANY | ALG_SID_SHA_256)
|
||||
#define CALG_SHA_384 (ALG_CLASS_HASH | ALG_TYPE_ANY | ALG_SID_SHA_384)
|
||||
#define CALG_SHA_512 (ALG_CLASS_HASH | ALG_TYPE_ANY | ALG_SID_SHA_512)
|
||||
#define CALG_RSA_SIGN (ALG_CLASS_SIGNATURE | ALG_TYPE_RSA | ALG_SID_RSA_ANY)
|
||||
#define CALG_DSS_SIGN (ALG_CLASS_SIGNATURE | ALG_TYPE_DSS | ALG_SID_DSS_ANY)
|
||||
#define CALG_NO_SIGN (ALG_CLASS_SIGNATURE | ALG_TYPE_ANY | ALG_SID_ANY)
|
||||
#define CALG_ECDSA (ALG_CLASS_SIGNATURE | ALG_TYPE_DSS | ALG_SID_ECDSA)
|
||||
#define CALG_DH_SF (ALG_CLASS_KEY_EXCHANGE | ALG_TYPE_DH | ALG_SID_DH_SANDF)
|
||||
#define CALG_DH_EPHEM (ALG_CLASS_KEY_EXCHANGE | ALG_TYPE_DH | ALG_SID_DH_EPHEM)
|
||||
#define CALG_AGREEDKEY_ANY (ALG_CLASS_KEY_EXCHANGE | ALG_TYPE_DH | ALG_SID_AGREED_KEY_ANY)
|
||||
#define CALG_KEA_KEYX (ALG_CLASS_KEY_EXCHANGE | ALG_TYPE_DH | ALG_SID_KEA)
|
||||
#define CALG_HUGHES_MD5 (ALG_CLASS_KEY_EXCHANGE | ALG_TYPE_ANY | ALG_SID_MD5)
|
||||
#define CALG_ECDH (ALG_CLASS_KEY_EXCHANGE | ALG_TYPE_DH | ALG_SID_ECDH)
|
||||
#define CALG_ECDH_EPHEM (ALG_CLASS_KEY_EXCHANGE | ALG_TYPE_ECDH | ALG_SID_ECDH_EPHEM)
|
||||
#define CALG_RSA_KEYX (ALG_CLASS_KEY_EXCHANGE | ALG_TYPE_RSA | ALG_SID_RSA_ANY)
|
||||
#define CALG_ECMQV (ALG_CLASS_KEY_EXCHANGE | ALG_TYPE_ANY | ALG_SID_ECMQV)
|
||||
#define CALG_DES (ALG_CLASS_DATA_ENCRYPT | ALG_TYPE_BLOCK | ALG_SID_DES)
|
||||
#define CALG_RC2 (ALG_CLASS_DATA_ENCRYPT | ALG_TYPE_BLOCK | ALG_SID_RC2)
|
||||
#define CALG_3DES (ALG_CLASS_DATA_ENCRYPT | ALG_TYPE_BLOCK | ALG_SID_3DES)
|
||||
#define CALG_3DES_112 (ALG_CLASS_DATA_ENCRYPT | ALG_TYPE_BLOCK | ALG_SID_3DES_112)
|
||||
#define CALG_DESX (ALG_CLASS_DATA_ENCRYPT | ALG_TYPE_BLOCK | ALG_SID_DESX)
|
||||
#define CALG_AES_128 (ALG_CLASS_DATA_ENCRYPT | ALG_TYPE_BLOCK | ALG_SID_AES_128)
|
||||
#define CALG_AES_192 (ALG_CLASS_DATA_ENCRYPT | ALG_TYPE_BLOCK | ALG_SID_AES_192)
|
||||
#define CALG_AES_256 (ALG_CLASS_DATA_ENCRYPT | ALG_TYPE_BLOCK | ALG_SID_AES_256)
|
||||
#define CALG_AES (ALG_CLASS_DATA_ENCRYPT | ALG_TYPE_BLOCK | ALG_SID_AES)
|
||||
#define CALG_RC4 (ALG_CLASS_DATA_ENCRYPT | ALG_TYPE_STREAM | ALG_SID_RC4)
|
||||
#define CALG_SEAL (ALG_CLASS_DATA_ENCRYPT | ALG_TYPE_STREAM | ALG_SID_SEAL)
|
||||
#define CALG_RC5 (ALG_CLASS_DATA_ENCRYPT | ALG_TYPE_STREAM | ALG_SID_RC5)
|
||||
#define CALG_SKIPJACK (ALG_CLASS_DATA_ENCRYPT | ALG_TYPE_BLOCK | ALG_SID_SKIPJACK)
|
||||
#define CALG_TEK (ALG_CLASS_DATA_ENCRYPT | ALG_TYPE_BLOCK | ALG_SID_TEK)
|
||||
#define CALG_CYLINK_MEK (ALG_CLASS_DATA_ENCRYPT | ALG_TYPE_BLOCK | ALG_SID_CYLINK_MEK)
|
||||
#define CALG_SSL3_MASTER (ALG_CLASS_MSG_ENCRYPT | ALG_TYPE_SECURECHANNEL | ALG_SID_SSL3_MASTER)
|
||||
#define CALG_SCHANNEL_MASTER_HASH (ALG_CLASS_MSG_ENCRYPT | ALG_TYPE_SECURECHANNEL | ALG_SID_SCHANNEL_MASTER_HASH)
|
||||
#define CALG_SCHANNEL_MAC_KEY (ALG_CLASS_MSG_ENCRYPT | ALG_TYPE_SECURECHANNEL | ALG_SID_SCHANNEL_MAC_KEY)
|
||||
#define CALG_SCHANNEL_ENC_KEY (ALG_CLASS_MSG_ENCRYPT | ALG_TYPE_SECURECHANNEL | ALG_SID_SCHANNEL_ENC_KEY)
|
||||
#define CALG_PCT1_MASTER (ALG_CLASS_MSG_ENCRYPT | ALG_TYPE_SECURECHANNEL | ALG_SID_PCT1_MASTER)
|
||||
#define CALG_SSL2_MASTER (ALG_CLASS_MSG_ENCRYPT | ALG_TYPE_SECURECHANNEL | ALG_SID_SSL2_MASTER)
|
||||
#define CALG_TLS1_MASTER (ALG_CLASS_MSG_ENCRYPT | ALG_TYPE_SECURECHANNEL | ALG_SID_TLS1_MASTER)
|
||||
|
||||
|
||||
/* Protocol Flags */
|
||||
#define CRYPT_FLAG_PCT1 0x0001
|
||||
#define CRYPT_FLAG_SSL2 0x0002
|
||||
#define CRYPT_FLAG_SSL3 0x0004
|
||||
#define CRYPT_FLAG_TLS1 0x0008
|
||||
#define CRYPT_FLAG_IPSEC 0x0010
|
||||
#define CRYPT_FLAG_SIGNING 0x0020
|
||||
|
||||
#define HP_ALGID 0x0001 // Hash algorithm
|
||||
#define HP_HASHVAL 0x0002 // Hash value
|
||||
#define HP_HASHSIZE 0x0004 // Hash value size
|
||||
#define HP_HMAC_INFO 0x0005 // information for creating an HMAC
|
||||
#define HP_TLS1PRF_LABEL 0x0006 // label for TLS1 PRF
|
||||
#define HP_TLS1PRF_SEED 0x0007 // seed for TLS1 PRF
|
||||
@@ -0,0 +1,58 @@
|
||||
#define FILE_DEVICE_8042_PORT 0x00000027
|
||||
#define FILE_DEVICE_ACPI 0x00000032
|
||||
#define FILE_DEVICE_BATTERY 0x00000029
|
||||
#define FILE_DEVICE_BEEP 0x00000001
|
||||
#define FILE_DEVICE_BUS_EXTENDER 0x0000002a
|
||||
#define FILE_DEVICE_CD_ROM 0x00000002
|
||||
#define FILE_DEVICE_CD_ROM_FILE_SYSTEM 0x00000003
|
||||
#define FILE_DEVICE_CHANGER 0x00000030
|
||||
#define FILE_DEVICE_CONTROLLER 0x00000004
|
||||
#define FILE_DEVICE_DATALINK 0x00000005
|
||||
#define FILE_DEVICE_DFS 0x00000006
|
||||
#define FILE_DEVICE_DFS_FILE_SYSTEM 0x00000035
|
||||
#define FILE_DEVICE_DFS_VOLUME 0x00000036
|
||||
#define FILE_DEVICE_DISK 0x00000007
|
||||
#define FILE_DEVICE_DISK_FILE_SYSTEM 0x00000008
|
||||
#define FILE_DEVICE_DVD 0x00000033
|
||||
#define FILE_DEVICE_FILE_SYSTEM 0x00000009
|
||||
#define FILE_DEVICE_FIPS 0x0000003a
|
||||
#define FILE_DEVICE_FULLSCREEN_VIDEO 0x00000034
|
||||
#define FILE_DEVICE_INPORT_PORT 0x0000000a
|
||||
#define FILE_DEVICE_KEYBOARD 0x0000000b
|
||||
#define FILE_DEVICE_KS 0x0000002f
|
||||
#define FILE_DEVICE_KSEC 0x00000039
|
||||
#define FILE_DEVICE_MAILSLOT 0x0000000c
|
||||
#define FILE_DEVICE_MASS_STORAGE 0x0000002d
|
||||
#define FILE_DEVICE_MIDI_IN 0x0000000d
|
||||
#define FILE_DEVICE_MIDI_OUT 0x0000000e
|
||||
#define FILE_DEVICE_MODEM 0x0000002b
|
||||
#define FILE_DEVICE_MOUSE 0x0000000f
|
||||
#define FILE_DEVICE_MULTI_UNC_PROVIDER 0x00000010
|
||||
#define FILE_DEVICE_NAMED_PIPE 0x00000011
|
||||
#define FILE_DEVICE_NETWORK 0x00000012
|
||||
#define FILE_DEVICE_NETWORK_BROWSER 0x00000013
|
||||
#define FILE_DEVICE_NETWORK_FILE_SYSTEM 0x00000014
|
||||
#define FILE_DEVICE_NETWORK_REDIRECTOR 0x00000028
|
||||
#define FILE_DEVICE_NULL 0x00000015
|
||||
#define FILE_DEVICE_PARALLEL_PORT 0x00000016
|
||||
#define FILE_DEVICE_PHYSICAL_NETCARD 0x00000017
|
||||
#define FILE_DEVICE_PRINTER 0x00000018
|
||||
#define FILE_DEVICE_SCANNER 0x00000019
|
||||
#define FILE_DEVICE_SCREEN 0x0000001c
|
||||
#define FILE_DEVICE_SERENUM 0x00000037
|
||||
#define FILE_DEVICE_SERIAL_MOUSE_PORT 0x0000001a
|
||||
#define FILE_DEVICE_SERIAL_PORT 0x0000001b
|
||||
#define FILE_DEVICE_SMARTCARD 0x00000031
|
||||
#define FILE_DEVICE_SMB 0x0000002e
|
||||
#define FILE_DEVICE_SOUND 0x0000001d
|
||||
#define FILE_DEVICE_STREAMS 0x0000001e
|
||||
#define FILE_DEVICE_TAPE 0x0000001f
|
||||
#define FILE_DEVICE_TAPE_FILE_SYSTEM 0x00000020
|
||||
#define FILE_DEVICE_TERMSRV 0x00000038
|
||||
#define FILE_DEVICE_TRANSPORT 0x00000021
|
||||
#define FILE_DEVICE_UNKNOWN 0x00000022
|
||||
#define FILE_DEVICE_VDM 0x0000002c
|
||||
#define FILE_DEVICE_VIDEO 0x00000023
|
||||
#define FILE_DEVICE_VIRTUAL_DISK 0x00000024
|
||||
#define FILE_DEVICE_WAVE_IN 0x00000025
|
||||
#define FILE_DEVICE_WAVE_OUT 0x00000026
|
||||
@@ -0,0 +1,4 @@
|
||||
#define VIRTUAL_STORAGE_TYPE_DEVICE_UNKNOWN 0
|
||||
#define VIRTUAL_STORAGE_TYPE_DEVICE_ISO 1
|
||||
#define VIRTUAL_STORAGE_TYPE_DEVICE_VHD 2
|
||||
#define VIRTUAL_STORAGE_TYPE_DEVICE_VHDX 3
|
||||
@@ -0,0 +1,94 @@
|
||||
//
|
||||
// CryptProtect PromptStruct dwPromtFlags
|
||||
//
|
||||
//
|
||||
// prompt on unprotect
|
||||
#define CRYPTPROTECT_PROMPT_ON_UNPROTECT 0x1 // 1<<0
|
||||
//
|
||||
// prompt on protect
|
||||
#define CRYPTPROTECT_PROMPT_ON_PROTECT 0x2 // 1<<1
|
||||
#define CRYPTPROTECT_PROMPT_RESERVED 0x04 // reserved, do not use.
|
||||
|
||||
//
|
||||
// default to strong variant UI protection (user supplied password currently).
|
||||
#define CRYPTPROTECT_PROMPT_STRONG 0x08 // 1<<3
|
||||
|
||||
//
|
||||
// require strong variant UI protection (user supplied password currently).
|
||||
#define CRYPTPROTECT_PROMPT_REQUIRE_STRONG 0x10 // 1<<4
|
||||
|
||||
//
|
||||
// CryptProtectData and CryptUnprotectData dwFlags
|
||||
//
|
||||
// for remote-access situations where ui is not an option
|
||||
// if UI was specified on protect or unprotect operation, the call
|
||||
// will fail and GetLastError() will indicate ERROR_PASSWORD_RESTRICTION
|
||||
#define CRYPTPROTECT_UI_FORBIDDEN 0x1
|
||||
|
||||
//
|
||||
// per machine protected data -- any user on machine where CryptProtectData
|
||||
// took place may CryptUnprotectData
|
||||
#define CRYPTPROTECT_LOCAL_MACHINE 0x4
|
||||
|
||||
//
|
||||
// force credential synchronize during CryptProtectData()
|
||||
// Synchronize is only operation that occurs during this operation
|
||||
#define CRYPTPROTECT_CRED_SYNC 0x8
|
||||
|
||||
//
|
||||
// Generate an Audit on protect and unprotect operations
|
||||
//
|
||||
#define CRYPTPROTECT_AUDIT 0x10
|
||||
|
||||
//
|
||||
// Protect data with a non-recoverable key
|
||||
//
|
||||
#define CRYPTPROTECT_NO_RECOVERY 0x20
|
||||
|
||||
|
||||
//
|
||||
// Verify the protection of a protected blob
|
||||
//
|
||||
#define CRYPTPROTECT_VERIFY_PROTECTION 0x40
|
||||
|
||||
//
|
||||
// Regenerate the local machine protection
|
||||
//
|
||||
#define CRYPTPROTECT_CRED_REGENERATE 0x80
|
||||
|
||||
// flags reserved for system use
|
||||
#define CRYPTPROTECT_FIRST_RESERVED_FLAGVAL 0x0FFFFFFF
|
||||
#define CRYPTPROTECT_LAST_RESERVED_FLAGVAL 0xFFFFFFFF
|
||||
|
||||
|
||||
//
|
||||
// The buffer length passed into CryptProtectMemory and CryptUnprotectMemory
|
||||
// must be a multiple of this length (or zero).
|
||||
//
|
||||
|
||||
#define CRYPTPROTECTMEMORY_BLOCK_SIZE 16
|
||||
|
||||
|
||||
//
|
||||
// CryptProtectMemory/CryptUnprotectMemory dwFlags
|
||||
//
|
||||
|
||||
//
|
||||
// Encrypt/Decrypt within current process context.
|
||||
//
|
||||
|
||||
#define CRYPTPROTECTMEMORY_SAME_PROCESS 0x00
|
||||
|
||||
//
|
||||
// Encrypt/Decrypt across process boundaries.
|
||||
// eg: encrypted buffer passed across LPC to another process which calls CryptUnprotectMemory.
|
||||
//
|
||||
|
||||
#define CRYPTPROTECTMEMORY_CROSS_PROCESS 0x01
|
||||
|
||||
//
|
||||
// Encrypt/Decrypt across callers with same LogonId.
|
||||
// eg: encrypted buffer passed across LPC to another process which calls CryptUnprotectMemory whilst impersonating.
|
||||
//
|
||||
|
||||
#define CRYPTPROTECTMEMORY_SAME_LOGON 0x02
|
||||
@@ -0,0 +1,23 @@
|
||||
#define APPLICATION_ERROR_MASK 0x20000000
|
||||
#define ERROR_SEVERITY_SUCCESS 0x00000000
|
||||
#define ERROR_SEVERITY_INFORMATIONAL 0x40000000
|
||||
#define ERROR_SEVERITY_WARNING 0x80000000
|
||||
#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
|
||||
@@ -0,0 +1,145 @@
|
||||
//
|
||||
// Enable flags for Kernel Events on Win7 and above
|
||||
//
|
||||
#define EVENT_TRACE_FLAG_DISPATCHER 0x00000800 // scheduler (ReadyThread)
|
||||
#define EVENT_TRACE_FLAG_VIRTUAL_ALLOC 0x00004000 // VM operations
|
||||
|
||||
//
|
||||
// Enable flags for Kernel Events on Win8 and above
|
||||
//
|
||||
#define EVENT_TRACE_FLAG_VAMAP 0x00008000 // map/unmap (excluding images)
|
||||
#define EVENT_TRACE_FLAG_NO_SYSCONFIG 0x10000000 // Do not do sys config rundown
|
||||
|
||||
//
|
||||
// Pre-defined Enable flags for everybody else
|
||||
//
|
||||
#define EVENT_TRACE_FLAG_EXTENSION 0x80000000 // Indicates more flags
|
||||
#define EVENT_TRACE_FLAG_FORWARD_WMI 0x40000000 // Can forward to WMI
|
||||
#define EVENT_TRACE_FLAG_ENABLE_RESERVE 0x20000000 // Reserved
|
||||
|
||||
//
|
||||
// Logger Mode flags
|
||||
//
|
||||
#define EVENT_TRACE_FILE_MODE_NONE 0x00000000 // Logfile is off
|
||||
#define EVENT_TRACE_FILE_MODE_SEQUENTIAL 0x00000001 // Log sequentially
|
||||
#define EVENT_TRACE_FILE_MODE_CIRCULAR 0x00000002 // Log in circular manner
|
||||
#define EVENT_TRACE_FILE_MODE_APPEND 0x00000004 // Append sequential log
|
||||
|
||||
#define EVENT_TRACE_REAL_TIME_MODE 0x00000100 // Real time mode on
|
||||
#define EVENT_TRACE_DELAY_OPEN_FILE_MODE 0x00000200 // Delay opening file
|
||||
#define EVENT_TRACE_BUFFERING_MODE 0x00000400 // Buffering mode only
|
||||
#define EVENT_TRACE_PRIVATE_LOGGER_MODE 0x00000800 // Process Private Logger
|
||||
#define EVENT_TRACE_ADD_HEADER_MODE 0x00001000 // Add a logfile header
|
||||
|
||||
#define EVENT_TRACE_USE_GLOBAL_SEQUENCE 0x00004000 // Use global sequence no.
|
||||
#define EVENT_TRACE_USE_LOCAL_SEQUENCE 0x00008000 // Use local sequence no.
|
||||
|
||||
#define EVENT_TRACE_RELOG_MODE 0x00010000 // Relogger
|
||||
|
||||
#define EVENT_TRACE_USE_PAGED_MEMORY 0x01000000 // Use pageable buffers
|
||||
|
||||
//
|
||||
// Logger Mode flags on XP and above
|
||||
//
|
||||
|
||||
#define EVENT_TRACE_FILE_MODE_NEWFILE 0x00000008 // Auto-switch log file
|
||||
#define EVENT_TRACE_FILE_MODE_PREALLOCATE 0x00000020 // Pre-allocate mode
|
||||
|
||||
//
|
||||
// Logger Mode flags on Vista and above
|
||||
//
|
||||
|
||||
#define EVENT_TRACE_NONSTOPPABLE_MODE 0x00000040 // Session cannot be stopped (Autologger only)
|
||||
#define EVENT_TRACE_SECURE_MODE 0x00000080 // Secure session
|
||||
#define EVENT_TRACE_USE_KBYTES_FOR_SIZE 0x00002000 // Use KBytes as file size unit
|
||||
#define EVENT_TRACE_PRIVATE_IN_PROC 0x00020000 // In process private logger
|
||||
|
||||
#define EVENT_TRACE_MODE_RESERVED 0x00100000 // Reserved bit, used to signal Heap/Critsec tracing
|
||||
|
||||
//
|
||||
// Logger Mode flags on Win7 and above
|
||||
//
|
||||
|
||||
#define EVENT_TRACE_NO_PER_PROCESSOR_BUFFERING 0x10000000 // Use this for low frequency sessions.
|
||||
|
||||
//
|
||||
// Logger Mode flags on Win8 and above
|
||||
//
|
||||
|
||||
#define EVENT_TRACE_SYSTEM_LOGGER_MODE 0x02000000 // Receive events from SystemTraceProvider
|
||||
#define EVENT_TRACE_ADDTO_TRIAGE_DUMP 0x80000000 // Add ETW buffers to triage dumps
|
||||
#define EVENT_TRACE_STOP_ON_HYBRID_SHUTDOWN 0x00400000 // Stop on hybrid shutdown
|
||||
#define EVENT_TRACE_PERSIST_ON_HYBRID_SHUTDOWN 0x00800000 // Persist on hybrid shutdown
|
||||
|
||||
//
|
||||
// Logger Mode flags on Blue and above
|
||||
//
|
||||
|
||||
#define EVENT_TRACE_INDEPENDENT_SESSION_MODE 0x08000000 // Independent logger session
|
||||
|
||||
//
|
||||
// ControlTrace Codes
|
||||
//
|
||||
|
||||
#define EVENT_TRACE_CONTROL_QUERY 0
|
||||
#define EVENT_TRACE_CONTROL_STOP 1
|
||||
#define EVENT_TRACE_CONTROL_UPDATE 2
|
||||
|
||||
//
|
||||
// Flush ControlTrace Codes for XP and above
|
||||
//
|
||||
|
||||
#define EVENT_TRACE_CONTROL_FLUSH 3 // Flushes all the buffers
|
||||
|
||||
|
||||
//
|
||||
// Consumer API
|
||||
//
|
||||
|
||||
#define PROCESS_TRACE_MODE_REAL_TIME 0x00000100
|
||||
#define PROCESS_TRACE_MODE_RAW_TIMESTAMP 0x00001000
|
||||
#define PROCESS_TRACE_MODE_EVENT_RECORD 0x10000000
|
||||
|
||||
|
||||
|
||||
#define EVENT_HEADER_PROPERTY_XML 0x0001
|
||||
#define EVENT_HEADER_PROPERTY_FORWARDED_XML 0x0002
|
||||
#define EVENT_HEADER_PROPERTY_LEGACY_EVENTLOG 0x0004
|
||||
|
||||
#define EVENT_HEADER_FLAG_EXTENDED_INFO 0x0001
|
||||
#define EVENT_HEADER_FLAG_PRIVATE_SESSION 0x0002
|
||||
#define EVENT_HEADER_FLAG_STRING_ONLY 0x0004
|
||||
#define EVENT_HEADER_FLAG_TRACE_MESSAGE 0x0008
|
||||
#define EVENT_HEADER_FLAG_NO_CPUTIME 0x0010
|
||||
#define EVENT_HEADER_FLAG_32_BIT_HEADER 0x0020
|
||||
#define EVENT_HEADER_FLAG_64_BIT_HEADER 0x0040
|
||||
#define EVENT_HEADER_FLAG_CLASSIC_HEADER 0x0100
|
||||
#define EVENT_HEADER_FLAG_PROCESSOR_INDEX 0x0200
|
||||
|
||||
|
||||
|
||||
// Event types for system configuration records
|
||||
//
|
||||
#define EVENT_TRACE_TYPE_CONFIG_CPU 0x0A // CPU Configuration
|
||||
#define EVENT_TRACE_TYPE_CONFIG_PHYSICALDISK 0x0B // Physical Disk Configuration
|
||||
#define EVENT_TRACE_TYPE_CONFIG_LOGICALDISK 0x0C // Logical Disk Configuration
|
||||
#define EVENT_TRACE_TYPE_CONFIG_NIC 0x0D // NIC Configuration
|
||||
#define EVENT_TRACE_TYPE_CONFIG_VIDEO 0x0E // Video Adapter Configuration
|
||||
#define EVENT_TRACE_TYPE_CONFIG_SERVICES 0x0F // Active Services
|
||||
#define EVENT_TRACE_TYPE_CONFIG_POWER 0x10 // ACPI Configuration
|
||||
#define EVENT_TRACE_TYPE_CONFIG_NETINFO 0x11 // Networking Configuration
|
||||
|
||||
//
|
||||
// Enable flags for SystemControlGuid only
|
||||
//
|
||||
#define EVENT_TRACE_FLAG_PROCESS 0x00000001 // process start & end
|
||||
#define EVENT_TRACE_FLAG_THREAD 0x00000002 // thread start & end
|
||||
#define EVENT_TRACE_FLAG_IMAGE_LOAD 0x00000004 // image load
|
||||
#define EVENT_TRACE_FLAG_DISK_IO 0x00000100 // physical disk IO
|
||||
#define EVENT_TRACE_FLAG_DISK_FILE_IO 0x00000200 // requires disk IO
|
||||
#define EVENT_TRACE_FLAG_MEMORY_PAGE_FAULTS 0x00001000 // all page faults
|
||||
#define EVENT_TRACE_FLAG_MEMORY_HARD_FAULTS 0x00002000 // hard faults only
|
||||
#define EVENT_TRACE_FLAG_NETWORK_TCPIP 0x00010000 // tcpip send & receive
|
||||
#define EVENT_TRACE_FLAG_REGISTRY 0x00020000 // registry calls
|
||||
#define EVENT_TRACE_FLAG_DBGPRINT 0x00040000 // DbgPrint(ex) Calls
|
||||
#define EVENT_TRACE_FLAG_VOLMGR 0x00200000 // volume manager traces
|
||||
@@ -0,0 +1,72 @@
|
||||
#define FILE_NOTIFY_CHANGE_FILE_NAME 0x00000001 // winnt
|
||||
#define FILE_NOTIFY_CHANGE_DIR_NAME 0x00000002 // winnt
|
||||
#define FILE_NOTIFY_CHANGE_NAME 0x00000003
|
||||
#define FILE_NOTIFY_CHANGE_ATTRIBUTES 0x00000004 // winnt
|
||||
#define FILE_NOTIFY_CHANGE_SIZE 0x00000008 // winnt
|
||||
#define FILE_NOTIFY_CHANGE_LAST_WRITE 0x00000010 // winnt
|
||||
#define FILE_NOTIFY_CHANGE_LAST_ACCESS 0x00000020 // winnt
|
||||
#define FILE_NOTIFY_CHANGE_CREATION 0x00000040 // winnt
|
||||
#define FILE_NOTIFY_CHANGE_EA 0x00000080
|
||||
#define FILE_NOTIFY_CHANGE_SECURITY 0x00000100 // winnt
|
||||
#define FILE_NOTIFY_CHANGE_STREAM_NAME 0x00000200
|
||||
#define FILE_NOTIFY_CHANGE_STREAM_SIZE 0x00000400
|
||||
#define FILE_NOTIFY_CHANGE_STREAM_WRITE 0x00000800
|
||||
#define FILE_NOTIFY_VALID_MASK 0x00000fff
|
||||
|
||||
|
||||
|
||||
#define FILE_ACTION_ADDED 0x00000001 // winnt
|
||||
#define FILE_ACTION_REMOVED 0x00000002 // winnt
|
||||
#define FILE_ACTION_MODIFIED 0x00000003 // winnt
|
||||
#define FILE_ACTION_RENAMED_OLD_NAME 0x00000004 // winnt
|
||||
#define FILE_ACTION_RENAMED_NEW_NAME 0x00000005 // winnt
|
||||
#define FILE_ACTION_ADDED_STREAM 0x00000006
|
||||
#define FILE_ACTION_REMOVED_STREAM 0x00000007
|
||||
#define FILE_ACTION_MODIFIED_STREAM 0x00000008
|
||||
#define FILE_ACTION_REMOVED_BY_DELETE 0x00000009
|
||||
#define FILE_ACTION_ID_NOT_TUNNELLED 0x0000000A
|
||||
#define FILE_ACTION_TUNNELLED_ID_COLLISION 0x0000000B
|
||||
|
||||
|
||||
#define FILE_CASE_SENSITIVE_SEARCH 0x00000001
|
||||
#define FILE_CASE_PRESERVED_NAMES 0x00000002
|
||||
#define FILE_UNICODE_ON_DISK 0x00000004
|
||||
#define FILE_PERSISTENT_ACLS 0x00000008
|
||||
#define FILE_FILE_COMPRESSION 0x00000010
|
||||
#define FILE_VOLUME_QUOTAS 0x00000020
|
||||
#define FILE_SUPPORTS_SPARSE_FILES 0x00000040
|
||||
#define FILE_SUPPORTS_REPARSE_POINTS 0x00000080
|
||||
#define FILE_SUPPORTS_REMOTE_STORAGE 0x00000100
|
||||
#define FILE_VOLUME_IS_COMPRESSED 0x00008000
|
||||
#define FILE_SUPPORTS_OBJECT_IDS 0x00010000
|
||||
#define FILE_SUPPORTS_ENCRYPTION 0x00020000
|
||||
#define FILE_NAMED_STREAMS 0x00040000
|
||||
#define FILE_READ_ONLY_VOLUME 0x00080000
|
||||
#define FILE_SEQUENTIAL_WRITE_ONCE 0x00100000
|
||||
#define FILE_SUPPORTS_TRANSACTIONS 0x00200000
|
||||
#define FILE_SUPPORTS_HARD_LINKS 0x00400000
|
||||
#define FILE_SUPPORTS_EXTENDED_ATTRIBUTES 0x00800000
|
||||
#define FILE_SUPPORTS_OPEN_BY_FILE_ID 0x01000000
|
||||
#define FILE_SUPPORTS_USN_JOURNAL 0x02000000
|
||||
|
||||
|
||||
#define FILE_SHARE_READ 0x00000001
|
||||
#define FILE_SHARE_WRITE 0x00000002
|
||||
#define FILE_SHARE_DELETE 0x00000004
|
||||
|
||||
|
||||
#define FILE_ATTRIBUTE_READONLY 0x00000001
|
||||
#define FILE_ATTRIBUTE_HIDDEN 0x00000002
|
||||
#define FILE_ATTRIBUTE_SYSTEM 0x00000004
|
||||
#define FILE_ATTRIBUTE_DIRECTORY 0x00000010
|
||||
#define FILE_ATTRIBUTE_ARCHIVE 0x00000020
|
||||
#define FILE_ATTRIBUTE_DEVICE 0x00000040
|
||||
#define FILE_ATTRIBUTE_NORMAL 0x00000080
|
||||
#define FILE_ATTRIBUTE_TEMPORARY 0x00000100
|
||||
#define FILE_ATTRIBUTE_SPARSE_FILE 0x00000200
|
||||
#define FILE_ATTRIBUTE_REPARSE_POINT 0x00000400
|
||||
#define FILE_ATTRIBUTE_COMPRESSED 0x00000800
|
||||
#define FILE_ATTRIBUTE_OFFLINE 0x00001000
|
||||
#define FILE_ATTRIBUTE_NOT_CONTENT_INDEXED 0x00002000
|
||||
#define FILE_ATTRIBUTE_ENCRYPTED 0x00004000
|
||||
#define FILE_ATTRIBUTE_VIRTUAL 0x00010000
|
||||
@@ -0,0 +1,39 @@
|
||||
/* From ntdbg.h */
|
||||
|
||||
#define X86_KGDT_NULL 0
|
||||
#define X86_KGDT_R0_CODE 8
|
||||
#define X86_KGDT_R0_DATA 16
|
||||
#define X86_KGDT_R3_CODE 24
|
||||
#define X86_KGDT_R3_DATA 32
|
||||
#define X86_KGDT_TSS 40
|
||||
#define X86_KGDT_R0_PCR 48
|
||||
#define X86_KGDT_R3_TEB 56
|
||||
#define X86_KGDT_VDM_TILE 64
|
||||
#define X86_KGDT_LDT 72
|
||||
#define X86_KGDT_DF_TSS 80
|
||||
#define X86_KGDT_NMI_TSS 88
|
||||
|
||||
#define X86_FRAME_EDITED 0xfff8
|
||||
#define X86_MODE_MASK 1
|
||||
#define X86_EFLAGS_V86_MASK 0x00020000
|
||||
|
||||
#define AMD64_KGDT64_NULL (0 * 16) // NULL descriptor
|
||||
#define AMD64_KGDT64_R0_CODE (1 * 16) // kernel mode 64-bit code
|
||||
#define AMD64_KGDT64_R0_DATA (1 * 16) + 8 // kernel mode 64-bit data (stack)
|
||||
#define AMD64_KGDT64_R3_CMCODE (2 * 16) // user mode 32-bit code
|
||||
#define AMD64_KGDT64_R3_DATA (2 * 16) + 8 // user mode 32-bit data
|
||||
#define AMD64_KGDT64_R3_CODE (3 * 16) // user mode 64-bit code
|
||||
#define AMD64_KGDT64_SYS_TSS (4 * 16) // kernel mode system task state
|
||||
#define AMD64_KGDT64_R3_CMTEB (5 * 16) // user mode 32-bit TEB
|
||||
#define AMD64_KGDT64_LAST (6 * 16)
|
||||
|
||||
/* From i386.h & amd64.h */
|
||||
|
||||
#define MODE_BIT 0
|
||||
#define MODE_MASK 1 // ntosp
|
||||
#define RPL_MASK 3
|
||||
|
||||
/* Custom usefull define for CS userland values 0x23 * 0x33 */
|
||||
|
||||
#define CS_USER_32B (AMD64_KGDT64_R3_CMCODE | RPL_MASK)
|
||||
#define CS_USER_64B (AMD64_KGDT64_R3_CODE | RPL_MASK)
|
||||
@@ -0,0 +1,359 @@
|
||||
|
||||
/* CTL_CODE is directly defined in the .py template to simpify parsing of define */
|
||||
|
||||
// #define CTL_CODE( DeviceType, Function, Method, Access ) (((DeviceType) << 16) | ((Access) << 14) | ((Function) << 2) | (Method))
|
||||
|
||||
#define METHOD_BUFFERED 0
|
||||
#define METHOD_IN_DIRECT 1
|
||||
#define METHOD_OUT_DIRECT 2
|
||||
#define METHOD_NEITHER 3
|
||||
|
||||
#define METHOD_DIRECT_TO_HARDWARE METHOD_IN_DIRECT
|
||||
#define METHOD_DIRECT_FROM_HARDWARE METHOD_OUT_DIRECT
|
||||
|
||||
#define FILE_ANY_ACCESS 0
|
||||
#define FILE_SPECIAL_ACCESS (FILE_ANY_ACCESS)
|
||||
#define FILE_READ_ACCESS ( 0x0001 ) // file & pipe
|
||||
#define FILE_WRITE_ACCESS ( 0x0002 ) // file & pipe
|
||||
|
||||
|
||||
#define FILE_DISPOSITION_DO_NOT_DELETE 0x00000000
|
||||
#define FILE_DISPOSITION_DELETE 0x00000001
|
||||
#define FILE_DISPOSITION_POSIX_SEMANTICS 0x00000002
|
||||
#define FILE_DISPOSITION_FORCE_IMAGE_SECTION_CHECK 0x00000004
|
||||
#define FILE_DISPOSITION_ON_CLOSE 0x00000008
|
||||
#define FILE_DISPOSITION_IGNORE_READONLY_ATTRIBUTE 0x00000010
|
||||
|
||||
/* From: ntifs.h */
|
||||
//
|
||||
// The following is a list of the native file system fsctls followed by
|
||||
// additional network file system fsctls. Some values have been
|
||||
// decommissioned.
|
||||
//
|
||||
|
||||
|
||||
#define FSCTL_REQUEST_OPLOCK_LEVEL_1 CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 0, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_REQUEST_OPLOCK_LEVEL_2 CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 1, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_REQUEST_BATCH_OPLOCK CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 2, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_OPLOCK_BREAK_ACKNOWLEDGE CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 3, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_OPBATCH_ACK_CLOSE_PENDING CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 4, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_OPLOCK_BREAK_NOTIFY CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 5, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_LOCK_VOLUME CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 6, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_UNLOCK_VOLUME CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 7, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_DISMOUNT_VOLUME CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 8, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
// decommissioned fsctl value 9
|
||||
#define FSCTL_IS_VOLUME_MOUNTED CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 10, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_IS_PATHNAME_VALID CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 11, METHOD_BUFFERED, FILE_ANY_ACCESS) // PATHNAME_BUFFER,
|
||||
#define FSCTL_MARK_VOLUME_DIRTY CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 12, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
// decommissioned fsctl value 13
|
||||
#define FSCTL_QUERY_RETRIEVAL_POINTERS CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 14, METHOD_NEITHER, FILE_ANY_ACCESS)
|
||||
#define FSCTL_GET_COMPRESSION CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 15, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_SET_COMPRESSION CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 16, METHOD_BUFFERED, FILE_READ_DATA | FILE_WRITE_DATA)
|
||||
// decommissioned fsctl value 17
|
||||
// decommissioned fsctl value 18
|
||||
#define FSCTL_SET_BOOTLOADER_ACCESSED CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 19, METHOD_NEITHER, FILE_ANY_ACCESS)
|
||||
#define FSCTL_MARK_AS_SYSTEM_HIVE FSCTL_SET_BOOTLOADER_ACCESSED
|
||||
#define FSCTL_OPLOCK_BREAK_ACK_NO_2 CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 20, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_INVALIDATE_VOLUMES CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 21, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_QUERY_FAT_BPB CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 22, METHOD_BUFFERED, FILE_ANY_ACCESS) // FSCTL_QUERY_FAT_BPB_BUFFER
|
||||
#define FSCTL_REQUEST_FILTER_OPLOCK CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 23, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_FILESYSTEM_GET_STATISTICS CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 24, METHOD_BUFFERED, FILE_ANY_ACCESS) // FILESYSTEM_STATISTICS
|
||||
|
||||
#define FSCTL_GET_NTFS_VOLUME_DATA CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 25, METHOD_BUFFERED, FILE_ANY_ACCESS) // NTFS_VOLUME_DATA_BUFFER
|
||||
#define FSCTL_GET_NTFS_FILE_RECORD CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 26, METHOD_BUFFERED, FILE_ANY_ACCESS) // NTFS_FILE_RECORD_INPUT_BUFFER, NTFS_FILE_RECORD_OUTPUT_BUFFER
|
||||
#define FSCTL_GET_VOLUME_BITMAP CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 27, METHOD_NEITHER, FILE_ANY_ACCESS) // STARTING_LCN_INPUT_BUFFER, VOLUME_BITMAP_BUFFER
|
||||
#define FSCTL_GET_RETRIEVAL_POINTERS CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 28, METHOD_NEITHER, FILE_ANY_ACCESS) // STARTING_VCN_INPUT_BUFFER, RETRIEVAL_POINTERS_BUFFER
|
||||
#define FSCTL_MOVE_FILE CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 29, METHOD_BUFFERED, FILE_SPECIAL_ACCESS) // MOVE_FILE_DATA,
|
||||
#define FSCTL_IS_VOLUME_DIRTY CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 30, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
// decommissioned fsctl value 31
|
||||
#define FSCTL_ALLOW_EXTENDED_DASD_IO CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 32, METHOD_NEITHER, FILE_ANY_ACCESS)
|
||||
|
||||
// decommissioned fsctl value 33
|
||||
// decommissioned fsctl value 34
|
||||
#define FSCTL_FIND_FILES_BY_SID CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 35, METHOD_NEITHER, FILE_ANY_ACCESS)
|
||||
// decommissioned fsctl value 36
|
||||
// decommissioned fsctl value 37
|
||||
#define FSCTL_SET_OBJECT_ID CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 38, METHOD_BUFFERED, FILE_SPECIAL_ACCESS) // FILE_OBJECTID_BUFFER
|
||||
#define FSCTL_GET_OBJECT_ID CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 39, METHOD_BUFFERED, FILE_ANY_ACCESS) // FILE_OBJECTID_BUFFER
|
||||
#define FSCTL_DELETE_OBJECT_ID CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 40, METHOD_BUFFERED, FILE_SPECIAL_ACCESS)
|
||||
#define FSCTL_SET_REPARSE_POINT CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 41, METHOD_BUFFERED, FILE_SPECIAL_ACCESS) // REPARSE_DATA_BUFFER,
|
||||
#define FSCTL_GET_REPARSE_POINT CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 42, METHOD_BUFFERED, FILE_ANY_ACCESS) // REPARSE_DATA_BUFFER
|
||||
#define FSCTL_DELETE_REPARSE_POINT CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 43, METHOD_BUFFERED, FILE_SPECIAL_ACCESS) // REPARSE_DATA_BUFFER,
|
||||
#define FSCTL_ENUM_USN_DATA CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 44, METHOD_NEITHER, FILE_ANY_ACCESS) // MFT_ENUM_DATA,
|
||||
#define FSCTL_SECURITY_ID_CHECK CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 45, METHOD_NEITHER, FILE_READ_DATA) // BULK_SECURITY_TEST_DATA,
|
||||
#define FSCTL_READ_USN_JOURNAL CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 46, METHOD_NEITHER, FILE_ANY_ACCESS) // READ_USN_JOURNAL_DATA, USN
|
||||
#define FSCTL_SET_OBJECT_ID_EXTENDED CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 47, METHOD_BUFFERED, FILE_SPECIAL_ACCESS)
|
||||
#define FSCTL_CREATE_OR_GET_OBJECT_ID CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 48, METHOD_BUFFERED, FILE_ANY_ACCESS) // FILE_OBJECTID_BUFFER
|
||||
#define FSCTL_SET_SPARSE CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 49, METHOD_BUFFERED, FILE_SPECIAL_ACCESS)
|
||||
#define FSCTL_SET_ZERO_DATA CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 50, METHOD_BUFFERED, FILE_WRITE_DATA) // FILE_ZERO_DATA_INFORMATION,
|
||||
#define FSCTL_QUERY_ALLOCATED_RANGES CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 51, METHOD_NEITHER, FILE_READ_DATA) // FILE_ALLOCATED_RANGE_BUFFER, FILE_ALLOCATED_RANGE_BUFFER
|
||||
#define FSCTL_ENABLE_UPGRADE CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 52, METHOD_BUFFERED, FILE_WRITE_DATA)
|
||||
#define FSCTL_SET_ENCRYPTION CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 53, METHOD_NEITHER, FILE_ANY_ACCESS) // ENCRYPTION_BUFFER, DECRYPTION_STATUS_BUFFER
|
||||
#define FSCTL_ENCRYPTION_FSCTL_IO CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 54, METHOD_NEITHER, FILE_ANY_ACCESS)
|
||||
#define FSCTL_WRITE_RAW_ENCRYPTED CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 55, METHOD_NEITHER, FILE_SPECIAL_ACCESS) // ENCRYPTED_DATA_INFO, EXTENDED_ENCRYPTED_DATA_INFO
|
||||
#define FSCTL_READ_RAW_ENCRYPTED CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 56, METHOD_NEITHER, FILE_SPECIAL_ACCESS) // REQUEST_RAW_ENCRYPTED_DATA, ENCRYPTED_DATA_INFO, EXTENDED_ENCRYPTED_DATA_INFO
|
||||
#define FSCTL_CREATE_USN_JOURNAL CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 57, METHOD_NEITHER, FILE_ANY_ACCESS) // CREATE_USN_JOURNAL_DATA,
|
||||
#define FSCTL_READ_FILE_USN_DATA CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 58, METHOD_NEITHER, FILE_ANY_ACCESS) // Read the Usn Record for a file
|
||||
#define FSCTL_WRITE_USN_CLOSE_RECORD CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 59, METHOD_NEITHER, FILE_ANY_ACCESS) // Generate Close Usn Record
|
||||
#define FSCTL_EXTEND_VOLUME CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 60, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_QUERY_USN_JOURNAL CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 61, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_DELETE_USN_JOURNAL CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 62, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_MARK_HANDLE CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 63, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_SIS_COPYFILE CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 64, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_SIS_LINK_FILES CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 65, METHOD_BUFFERED, FILE_READ_DATA | FILE_WRITE_DATA)
|
||||
// decommissioned fsctl value 66
|
||||
// decommissioned fsctl value 67
|
||||
// decommissioned fsctl value 68
|
||||
#define FSCTL_RECALL_FILE CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 69, METHOD_NEITHER, FILE_ANY_ACCESS)
|
||||
// decommissioned fsctl value 70
|
||||
#define FSCTL_READ_FROM_PLEX CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 71, METHOD_OUT_DIRECT, FILE_READ_DATA)
|
||||
#define FSCTL_FILE_PREFETCH CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 72, METHOD_BUFFERED, FILE_SPECIAL_ACCESS) // FILE_PREFETCH
|
||||
|
||||
#define FSCTL_MAKE_MEDIA_COMPATIBLE CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 76, METHOD_BUFFERED, FILE_WRITE_DATA) // UDFS R/W
|
||||
#define FSCTL_SET_DEFECT_MANAGEMENT CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 77, METHOD_BUFFERED, FILE_WRITE_DATA) // UDFS R/W
|
||||
#define FSCTL_QUERY_SPARING_INFO CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 78, METHOD_BUFFERED, FILE_ANY_ACCESS) // UDFS R/W
|
||||
#define FSCTL_QUERY_ON_DISK_VOLUME_INFO CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 79, METHOD_BUFFERED, FILE_ANY_ACCESS) // C/UDFS
|
||||
#define FSCTL_SET_VOLUME_COMPRESSION_STATE CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 80, METHOD_BUFFERED, FILE_SPECIAL_ACCESS) // VOLUME_COMPRESSION_STATE
|
||||
// decommissioned fsctl value 80
|
||||
#define FSCTL_TXFS_MODIFY_RM CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 81, METHOD_BUFFERED, FILE_WRITE_DATA) // TxF
|
||||
#define FSCTL_TXFS_QUERY_RM_INFORMATION CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 82, METHOD_BUFFERED, FILE_READ_DATA) // TxF
|
||||
// decommissioned fsctl value 83
|
||||
#define FSCTL_TXFS_ROLLFORWARD_REDO CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 84, METHOD_BUFFERED, FILE_WRITE_DATA) // TxF
|
||||
#define FSCTL_TXFS_ROLLFORWARD_UNDO CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 85, METHOD_BUFFERED, FILE_WRITE_DATA) // TxF
|
||||
#define FSCTL_TXFS_START_RM CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 86, METHOD_BUFFERED, FILE_WRITE_DATA) // TxF
|
||||
#define FSCTL_TXFS_SHUTDOWN_RM CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 87, METHOD_BUFFERED, FILE_WRITE_DATA) // TxF
|
||||
#define FSCTL_TXFS_READ_BACKUP_INFORMATION CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 88, METHOD_BUFFERED, FILE_READ_DATA) // TxF
|
||||
#define FSCTL_TXFS_WRITE_BACKUP_INFORMATION CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 89, METHOD_BUFFERED, FILE_WRITE_DATA) // TxF
|
||||
#define FSCTL_TXFS_CREATE_SECONDARY_RM CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 90, METHOD_BUFFERED, FILE_WRITE_DATA) // TxF
|
||||
#define FSCTL_TXFS_GET_METADATA_INFO CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 91, METHOD_BUFFERED, FILE_READ_DATA) // TxF
|
||||
#define FSCTL_TXFS_GET_TRANSACTED_VERSION CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 92, METHOD_BUFFERED, FILE_READ_DATA) // TxF
|
||||
// decommissioned fsctl value 93
|
||||
#define FSCTL_TXFS_SAVEPOINT_INFORMATION CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 94, METHOD_BUFFERED, FILE_WRITE_DATA) // TxF
|
||||
#define FSCTL_TXFS_CREATE_MINIVERSION CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 95, METHOD_BUFFERED, FILE_WRITE_DATA) // TxF
|
||||
// decommissioned fsctl value 96
|
||||
// decommissioned fsctl value 97
|
||||
// decommissioned fsctl value 98
|
||||
#define FSCTL_TXFS_TRANSACTION_ACTIVE CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 99, METHOD_BUFFERED, FILE_READ_DATA) // TxF
|
||||
#define FSCTL_SET_ZERO_ON_DEALLOCATION CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 101, METHOD_BUFFERED, FILE_SPECIAL_ACCESS)
|
||||
#define FSCTL_SET_REPAIR CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 102, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_GET_REPAIR CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 103, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_WAIT_FOR_REPAIR CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 104, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
// decommissioned fsctl value 105
|
||||
#define FSCTL_INITIATE_REPAIR CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 106, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_CSC_INTERNAL CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 107, METHOD_NEITHER, FILE_ANY_ACCESS) // CSC internal implementation
|
||||
#define FSCTL_SHRINK_VOLUME CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 108, METHOD_BUFFERED, FILE_SPECIAL_ACCESS) // SHRINK_VOLUME_INFORMATION
|
||||
#define FSCTL_SET_SHORT_NAME_BEHAVIOR CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 109, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_DFSR_SET_GHOST_HANDLE_STATE CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 110, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
|
||||
//
|
||||
// Values 111 - 119 are reserved for FSRM.
|
||||
//
|
||||
|
||||
#define FSCTL_TXFS_LIST_TRANSACTION_LOCKED_FILES \
|
||||
CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 120, METHOD_BUFFERED, FILE_READ_DATA) // TxF
|
||||
#define FSCTL_TXFS_LIST_TRANSACTIONS CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 121, METHOD_BUFFERED, FILE_READ_DATA) // TxF
|
||||
#define FSCTL_QUERY_PAGEFILE_ENCRYPTION CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 122, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
|
||||
#define FSCTL_RESET_VOLUME_ALLOCATION_HINTS CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 123, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
|
||||
#define FSCTL_QUERY_DEPENDENT_VOLUME CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 124, METHOD_BUFFERED, FILE_ANY_ACCESS) // Dependency File System Filter
|
||||
#define FSCTL_SD_GLOBAL_CHANGE CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 125, METHOD_BUFFERED, FILE_ANY_ACCESS) // Query/Change NTFS Security Descriptors
|
||||
|
||||
#define FSCTL_TXFS_READ_BACKUP_INFORMATION2 CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 126, METHOD_BUFFERED, FILE_ANY_ACCESS) // TxF
|
||||
|
||||
#define FSCTL_LOOKUP_STREAM_FROM_CLUSTER CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 127, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_TXFS_WRITE_BACKUP_INFORMATION2 CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 128, METHOD_BUFFERED, FILE_ANY_ACCESS) // TxF
|
||||
#define FSCTL_FILE_TYPE_NOTIFICATION CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 129, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
|
||||
#define FSCTL_FILE_LEVEL_TRIM CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 130, METHOD_BUFFERED, FILE_WRITE_DATA)
|
||||
|
||||
//
|
||||
// Values 131 - 139 are reserved for FSRM.
|
||||
//
|
||||
|
||||
#define FSCTL_GET_BOOT_AREA_INFO CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 140, METHOD_BUFFERED, FILE_ANY_ACCESS) // BOOT_AREA_INFO
|
||||
#define FSCTL_GET_RETRIEVAL_POINTER_BASE CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 141, METHOD_BUFFERED, FILE_ANY_ACCESS) // RETRIEVAL_POINTER_BASE
|
||||
#define FSCTL_SET_PERSISTENT_VOLUME_STATE CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 142, METHOD_BUFFERED, FILE_ANY_ACCESS) // FILE_FS_PERSISTENT_VOLUME_INFORMATION
|
||||
#define FSCTL_QUERY_PERSISTENT_VOLUME_STATE CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 143, METHOD_BUFFERED, FILE_ANY_ACCESS) // FILE_FS_PERSISTENT_VOLUME_INFORMATION
|
||||
|
||||
#define FSCTL_REQUEST_OPLOCK CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 144, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
|
||||
#define FSCTL_CSV_TUNNEL_REQUEST CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 145, METHOD_BUFFERED, FILE_ANY_ACCESS) // CSV_TUNNEL_REQUEST
|
||||
#define FSCTL_IS_CSV_FILE CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 146, METHOD_BUFFERED, FILE_ANY_ACCESS) // IS_CSV_FILE
|
||||
|
||||
#define FSCTL_QUERY_FILE_SYSTEM_RECOGNITION CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 147, METHOD_BUFFERED, FILE_ANY_ACCESS) //
|
||||
#define FSCTL_CSV_GET_VOLUME_PATH_NAME CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 148, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_CSV_GET_VOLUME_NAME_FOR_VOLUME_MOUNT_POINT CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 149, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_CSV_GET_VOLUME_PATH_NAMES_FOR_VOLUME_NAME CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 150, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_IS_FILE_ON_CSV_VOLUME CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 151, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
|
||||
#define FSCTL_CORRUPTION_HANDLING CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 152, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_OFFLOAD_READ CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 153, METHOD_BUFFERED, FILE_READ_ACCESS)
|
||||
#define FSCTL_OFFLOAD_WRITE CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 154, METHOD_BUFFERED, FILE_WRITE_ACCESS)
|
||||
|
||||
#define FSCTL_CSV_INTERNAL CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 155, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
|
||||
#define FSCTL_SET_PURGE_FAILURE_MODE CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 156, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_QUERY_FILE_LAYOUT CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 157, METHOD_NEITHER, FILE_ANY_ACCESS)
|
||||
#define FSCTL_IS_VOLUME_OWNED_BYCSVFS CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 158, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
|
||||
#define FSCTL_GET_INTEGRITY_INFORMATION CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 159, METHOD_BUFFERED, FILE_ANY_ACCESS) // FSCTL_GET_INTEGRITY_INFORMATION_BUFFER
|
||||
#define FSCTL_SET_INTEGRITY_INFORMATION CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 160, METHOD_BUFFERED, FILE_READ_DATA | FILE_WRITE_DATA) // FSCTL_SET_INTEGRITY_INFORMATION_BUFFER
|
||||
|
||||
#define FSCTL_QUERY_FILE_REGIONS CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 161, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
|
||||
|
||||
|
||||
#define FSCTL_RKF_INTERNAL CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 171, METHOD_NEITHER, FILE_ANY_ACCESS) // Resume Key Filter
|
||||
|
||||
#define FSCTL_SCRUB_DATA CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 172, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_REPAIR_COPIES CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 173, METHOD_BUFFERED, FILE_READ_DATA | FILE_WRITE_DATA)
|
||||
#define FSCTL_DISABLE_LOCAL_BUFFERING CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 174, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_CSV_MGMT_LOCK CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 175, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_CSV_QUERY_DOWN_LEVEL_FILE_SYSTEM_CHARACTERISTICS CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 176, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_ADVANCE_FILE_ID CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 177, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_CSV_SYNC_TUNNEL_REQUEST CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 178, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_CSV_QUERY_VETO_FILE_DIRECT_IO CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 179, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_WRITE_USN_REASON CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 180, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_CSV_CONTROL CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 181, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_GET_REFS_VOLUME_DATA CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 182, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_CSV_H_BREAKING_SYNC_TUNNEL_REQUEST CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 185, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
|
||||
#define FSCTL_QUERY_STORAGE_CLASSES CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 187, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_QUERY_REGION_INFO CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 188, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_USN_TRACK_MODIFIED_RANGES CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 189, METHOD_BUFFERED, FILE_ANY_ACCESS) // USN_TRACK_MODIFIED_RANGES
|
||||
#define FSCTL_QUERY_SHARED_VIRTUAL_DISK_SUPPORT CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 192, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_SVHDX_SYNC_TUNNEL_REQUEST CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 193, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_SVHDX_SET_INITIATOR_INFORMATION CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 194, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_SET_EXTERNAL_BACKING CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 195, METHOD_BUFFERED, FILE_SPECIAL_ACCESS)
|
||||
#define FSCTL_GET_EXTERNAL_BACKING CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 196, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_DELETE_EXTERNAL_BACKING CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 197, METHOD_BUFFERED, FILE_SPECIAL_ACCESS)
|
||||
#define FSCTL_ENUM_EXTERNAL_BACKING CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 198, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_ENUM_OVERLAY CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 199, METHOD_NEITHER, FILE_ANY_ACCESS)
|
||||
#define FSCTL_ADD_OVERLAY CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 204, METHOD_BUFFERED, FILE_WRITE_DATA)
|
||||
#define FSCTL_REMOVE_OVERLAY CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 205, METHOD_BUFFERED, FILE_WRITE_DATA)
|
||||
#define FSCTL_UPDATE_OVERLAY CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 206, METHOD_BUFFERED, FILE_WRITE_DATA)
|
||||
#define FSCTL_SHUFFLE_FILE CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 208, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS) // SHUFFLE_FILE_DATA
|
||||
#define FSCTL_DUPLICATE_EXTENTS_TO_FILE CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 209, METHOD_BUFFERED, FILE_WRITE_DATA )
|
||||
#define FSCTL_SPARSE_OVERALLOCATE CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 211, METHOD_BUFFERED, FILE_SPECIAL_ACCESS)
|
||||
#define FSCTL_STORAGE_QOS_CONTROL CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 212, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_INITIATE_FILE_METADATA_OPTIMIZATION CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 215, METHOD_BUFFERED, FILE_SPECIAL_ACCESS)
|
||||
#define FSCTL_QUERY_FILE_METADATA_OPTIMIZATION CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 216, METHOD_BUFFERED, FILE_SPECIAL_ACCESS)
|
||||
|
||||
#define FSCTL_SVHDX_ASYNC_TUNNEL_REQUEST CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 217, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
|
||||
#define FSCTL_GET_WOF_VERSION CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 218, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
|
||||
#define FSCTL_HCS_SYNC_TUNNEL_REQUEST CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 219, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_HCS_ASYNC_TUNNEL_REQUEST CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 220, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_QUERY_EXTENT_READ_CACHE_INFO CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 221, METHOD_NEITHER, FILE_ANY_ACCESS) // VCN_RANGE_INPUT_BUFFER, EXTENT_READ_CACHE_INFO_BUFFER
|
||||
#define FSCTL_QUERY_REFS_VOLUME_COUNTER_INFO CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 222, METHOD_NEITHER, FILE_ANY_ACCESS) // REFS_VOLUME_COUNTER_INFO_INPUT_BUFFER, VOLUME_REFS_INFO_BUFFER
|
||||
#define FSCTL_CLEAN_VOLUME_METADATA CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 223, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_SET_INTEGRITY_INFORMATION_EX CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 224, METHOD_BUFFERED, FILE_ANY_ACCESS) // FSCTL_SET_INTEGRITY_INFORMATION_BUFFER_EX
|
||||
#define FSCTL_SUSPEND_OVERLAY CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 225, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_VIRTUAL_STORAGE_QUERY_PROPERTY CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 226, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_FILESYSTEM_GET_STATISTICS_EX CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 227, METHOD_BUFFERED, FILE_ANY_ACCESS) // FILESYSTEM_STATISTICS_EX
|
||||
#define FSCTL_QUERY_VOLUME_CONTAINER_STATE CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 228, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_SET_LAYER_ROOT CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 229, METHOD_BUFFERED, FILE_ANY_ACCESS) // CONTAINER_ROOT_INFO_INPUT CONTAINER_ROOT_INFO_OUTPUT
|
||||
|
||||
#define FSCTL_QUERY_DIRECT_ACCESS_EXTENTS CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 230, METHOD_NEITHER, FILE_ANY_ACCESS) // QUERY_DIRECT_ACCESS_EXTENTS
|
||||
#define FSCTL_NOTIFY_STORAGE_SPACE_ALLOCATION CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 231, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_SSDI_STORAGE_REQUEST CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 232, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
|
||||
#define FSCTL_QUERY_DIRECT_IMAGE_ORIGINAL_BASE CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 233, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_READ_UNPRIVILEGED_USN_JOURNAL CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 234, METHOD_NEITHER, FILE_ANY_ACCESS) // READ_USN_JOURNAL_DATA, USN
|
||||
|
||||
#define FSCTL_GHOST_FILE_EXTENTS CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 235, METHOD_BUFFERED, FILE_WRITE_ACCESS) // FSCTL_GHOST_FILE_EXTENTS_INPUT_BUFFER
|
||||
#define FSCTL_QUERY_GHOSTED_FILE_EXTENTS CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 236, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
|
||||
#define FSCTL_UNMAP_SPACE CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 237, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
|
||||
#define FSCTL_HCS_SYNC_NO_WRITE_TUNNEL_REQUEST CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 238, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_START_VIRTUALIZATION_INSTANCE CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 240, METHOD_BUFFERED, FILE_ANY_ACCESS) // VIRTUALIZATION_INSTANCE_INFO_INPUT, VIRTUALIZATION_INSTANCE_INFO_OUTPUT
|
||||
#define FSCTL_GET_FILTER_FILE_IDENTIFIER CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 241, METHOD_BUFFERED, FILE_ANY_ACCESS) // GET_FILTER_FILE_IDENTIFIER_INPUT, GET_FILTER_FILE_IDENTIFIER_OUTPUT
|
||||
|
||||
#define FSCTL_STREAMS_QUERY_PARAMETERS CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 241, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_STREAMS_ASSOCIATE_ID CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 242, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_STREAMS_QUERY_ID CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 243, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
|
||||
#define FSCTL_GET_RETRIEVAL_POINTERS_AND_REFCOUNT CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 244, METHOD_NEITHER, FILE_ANY_ACCESS) // STARTING_VCN_INPUT_BUFFER, RETRIEVAL_POINTERS_AND_REFCOUNT_BUFFER
|
||||
|
||||
#define FSCTL_QUERY_VOLUME_NUMA_INFO CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 245, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
|
||||
|
||||
#define FSCTL_REFS_DEALLOCATE_RANGES CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 246, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
|
||||
#define FSCTL_QUERY_REFS_SMR_VOLUME_INFO CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 247, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_SET_REFS_SMR_VOLUME_GC_PARAMETERS CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 248, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_SET_REFS_FILE_STRICTLY_SEQUENTIAL CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 249, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
|
||||
#define FSCTL_DUPLICATE_EXTENTS_TO_FILE_EX CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 250, METHOD_BUFFERED, FILE_WRITE_DATA)
|
||||
#define FSCTL_QUERY_BAD_RANGES CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 251, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_SET_DAX_ALLOC_ALIGNMENT_HINT CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 252, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_DELETE_CORRUPTED_REFS_CONTAINER CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 253, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_SCRUB_UNDISCOVERABLE_ID CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 254, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
|
||||
#define FSCTL_NOTIFY_DATA_CHANGE CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 255, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
|
||||
#define FSCTL_START_VIRTUALIZATION_INSTANCE_EX CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 256, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
|
||||
#define FSCTL_ENCRYPTION_KEY_CONTROL CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 257, METHOD_BUFFERED, FILE_ANY_ACCESS) // protect/unprotect under DPL
|
||||
#define FSCTL_VIRTUAL_STORAGE_SET_BEHAVIOR CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 258, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
|
||||
#define FSCTL_SET_REPARSE_POINT_EX CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 259, METHOD_BUFFERED, FILE_SPECIAL_ACCESS) // REPARSE_DATA_BUFFER_EX
|
||||
#define FSCTL_REARRANGE_FILE CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 264, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS) // REARRANGE_FILE_DATA
|
||||
#define FSCTL_VIRTUAL_STORAGE_PASSTHROUGH CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 265, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_GET_RETRIEVAL_POINTER_COUNT CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 266, METHOD_NEITHER, FILE_ANY_ACCESS) // STARTING_VCN_INPUT_BUFFER, RETRIEVAL_POINTER_COUNT
|
||||
#define FSCTL_ENABLE_PER_IO_FLAGS CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 267, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_QUERY_ASYNC_DUPLICATE_EXTENTS_STATUS CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 268, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_SMB_SHARE_FLUSH_AND_PURGE CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 271, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
|
||||
#define FSCTL_REFS_STREAM_SNAPSHOT_MANAGEMENT CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 272, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_MANAGE_BYPASS_IO CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 274, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
|
||||
#define FSCTL_REFS_DEALLOCATE_RANGES_EX CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 275, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
|
||||
#define FSCTL_SET_CACHED_RUNS_STATE CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 276, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_REFS_SET_VOLUME_COMPRESSION_INFO CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 277, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_REFS_QUERY_VOLUME_COMPRESSION_INFO CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 278, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_DUPLICATE_CLUSTER CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 279, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_CREATE_LCN_WEAK_REFERENCE CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 280, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_CLEAR_LCN_WEAK_REFERENCE CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 281, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_QUERY_LCN_WEAK_REFERENCE CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 282, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_CLEAR_ALL_LCN_WEAK_REFERENCES CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 283, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_REFS_SET_VOLUME_DEDUP_INFO CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 284, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_REFS_QUERY_VOLUME_DEDUP_INFO CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 285, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_LMR_QUERY_INFO CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 286, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_REFS_CHECKPOINT_VOLUME CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 287, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_REFS_QUERY_VOLUME_TOTAL_SHARED_LCNS CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 288, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_UPGRADE_VOLUME CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 289, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_REFS_SET_VOLUME_IO_METRICS_INFO CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 290, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_REFS_QUERY_VOLUME_IO_METRICS_INFO CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 291, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_REFS_SET_ROLLBACK_PROTECTION_INFO CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 292, METHOD_BUFFERED, FILE_ANY_ACCESS) // REFS_SET_ROLLBACK_PROTECTION_INFO_INPUT_BUFFER
|
||||
#define FSCTL_REFS_QUERY_ROLLBACK_PROTECTION_INFO CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 293, METHOD_BUFFERED, FILE_ANY_ACCESS) // REFS_QUERY_ROLLBACK_PROTECTION_INFO_OUTPUT_BUFFER
|
||||
#define FSCTL_FILE_SOV_CHECK_RANGE CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 294, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define FSCTL_CASCADES_REFS_SET_FILE_REMOTE CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 295, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
|
||||
|
||||
//
|
||||
// These are the IOCTLs supported by the mount point manager.
|
||||
//
|
||||
|
||||
#define MOUNTMGR_DEVICE_NAME u"\\Device\\MountPointManager"
|
||||
#define MOUNTMGR_DOS_DEVICE_NAME u"\\\\.\\MountPointManager"
|
||||
|
||||
#define MOUNTMGRCONTROLTYPE 0x0000006D // 'm'
|
||||
#define MOUNTDEVCONTROLTYPE 0x0000004D // 'M'
|
||||
|
||||
#define IOCTL_MOUNTMGR_CREATE_POINT CTL_CODE(MOUNTMGRCONTROLTYPE, 0, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS)
|
||||
#define IOCTL_MOUNTMGR_DELETE_POINTS CTL_CODE(MOUNTMGRCONTROLTYPE, 1, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS)
|
||||
#define IOCTL_MOUNTMGR_QUERY_POINTS CTL_CODE(MOUNTMGRCONTROLTYPE, 2, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
||||
#define IOCTL_MOUNTMGR_DELETE_POINTS_DBONLY CTL_CODE(MOUNTMGRCONTROLTYPE, 3, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS)
|
||||
#define IOCTL_MOUNTMGR_NEXT_DRIVE_LETTER CTL_CODE(MOUNTMGRCONTROLTYPE, 4, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS)
|
||||
#define IOCTL_MOUNTMGR_AUTO_DL_ASSIGNMENTS CTL_CODE(MOUNTMGRCONTROLTYPE, 5, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS)
|
||||
#define IOCTL_MOUNTMGR_VOLUME_MOUNT_POINT_CREATED CTL_CODE(MOUNTMGRCONTROLTYPE, 6, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS)
|
||||
#define IOCTL_MOUNTMGR_VOLUME_MOUNT_POINT_DELETED CTL_CODE(MOUNTMGRCONTROLTYPE, 7, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS)
|
||||
#define IOCTL_MOUNTMGR_CHANGE_NOTIFY CTL_CODE(MOUNTMGRCONTROLTYPE, 8, METHOD_BUFFERED, FILE_READ_ACCESS)
|
||||
#define IOCTL_MOUNTMGR_KEEP_LINKS_WHEN_OFFLINE CTL_CODE(MOUNTMGRCONTROLTYPE, 9, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS)
|
||||
#define IOCTL_MOUNTMGR_CHECK_UNPROCESSED_VOLUMES CTL_CODE(MOUNTMGRCONTROLTYPE, 10, METHOD_BUFFERED, FILE_READ_ACCESS)
|
||||
#define IOCTL_MOUNTMGR_VOLUME_ARRIVAL_NOTIFICATION CTL_CODE(MOUNTMGRCONTROLTYPE, 11, METHOD_BUFFERED, FILE_READ_ACCESS)
|
||||
@@ -0,0 +1,14 @@
|
||||
#define MM_SHARED_USER_DATA_VA 0x7FFE0000
|
||||
|
||||
#define XSTATE_LEGACY_FLOATING_POINT (0)
|
||||
#define XSTATE_LEGACY_SSE (1)
|
||||
#define XSTATE_GSSE (2)
|
||||
#define XSTATE_AVX (XSTATE_GSSE)
|
||||
#define XSTATE_MPX_BNDREGS (3)
|
||||
#define XSTATE_MPX_BNDCSR (4)
|
||||
#define XSTATE_AVX512_KMASK (5)
|
||||
#define XSTATE_AVX512_ZMM_H (6)
|
||||
#define XSTATE_AVX512_ZMM (7)
|
||||
#define XSTATE_IPT (8)
|
||||
#define XSTATE_LWP (62)
|
||||
#define MAXIMUM_XSTATE_FEATURES (64)
|
||||
@@ -0,0 +1,5 @@
|
||||
#define FC_ALLOCATE_ALL_NODES 0x01
|
||||
#define FC_DONT_FREE 0x02
|
||||
#define FC_ALLOCED_ON_STACK 0x04
|
||||
#define FC_SIMPLE_POINTER 0x08
|
||||
#define FC_POINTER_DEREF 0x10
|
||||
@@ -0,0 +1,608 @@
|
||||
#define MAX_PREFERRED_LENGTH 0xffffffff //((DWORD) -1)
|
||||
|
||||
#define NERR_Success 0 /* Success */
|
||||
|
||||
/*** NERR_BASE is the base of error codes from network utilities,
|
||||
* chosen to avoid conflict with system and redirector error codes.
|
||||
* 2100 is a value that has been assigned to us by system.
|
||||
*/
|
||||
#define NERR_BASE 2100
|
||||
|
||||
|
||||
/**INTERNAL_ONLY**/
|
||||
|
||||
/***********WARNING ****************
|
||||
*See the comment in lmcons.h for *
|
||||
*info on the allocation of errors *
|
||||
***********************************/
|
||||
|
||||
/***********WARNING ****************
|
||||
*The range 2750-2799 has been *
|
||||
*allocated to the IBM LAN Server *
|
||||
***********************************/
|
||||
|
||||
/***********WARNING ****************
|
||||
*The range 2900-2999 has been *
|
||||
*reserved for Microsoft OEMs *
|
||||
***********************************/
|
||||
|
||||
/**END_INTERNAL**/
|
||||
|
||||
/* UNUSED BASE+0 */
|
||||
/* UNUSED BASE+1 */
|
||||
#define NERR_NetNotStarted (NERR_BASE+2) /* The workstation driver is not installed. */
|
||||
#define NERR_UnknownServer (NERR_BASE+3) /* The server could not be located. */
|
||||
#define NERR_ShareMem (NERR_BASE+4) /* An internal error occurred. The network cannot access a shared memory segment. */
|
||||
|
||||
#define NERR_NoNetworkResource (NERR_BASE+5) /* A network resource shortage occurred . */
|
||||
#define NERR_RemoteOnly (NERR_BASE+6) /* This operation is not supported on workstations. */
|
||||
#define NERR_DevNotRedirected (NERR_BASE+7) /* The device is not connected. */
|
||||
/* NERR_BASE+8 is used for ERROR_CONNECTED_OTHER_PASSWORD */
|
||||
/* NERR_BASE+9 is used for ERROR_CONNECTED_OTHER_PASSWORD_DEFAULT */
|
||||
/* UNUSED BASE+10 */
|
||||
/* UNUSED BASE+11 */
|
||||
/* UNUSED BASE+12 */
|
||||
/* UNUSED BASE+13 */
|
||||
#define NERR_ServerNotStarted (NERR_BASE+14) /* The Server service is not started. */
|
||||
#define NERR_ItemNotFound (NERR_BASE+15) /* The queue is empty. */
|
||||
#define NERR_UnknownDevDir (NERR_BASE+16) /* The device or directory does not exist. */
|
||||
#define NERR_RedirectedPath (NERR_BASE+17) /* The operation is invalid on a redirected resource. */
|
||||
#define NERR_DuplicateShare (NERR_BASE+18) /* The name has already been shared. */
|
||||
#define NERR_NoRoom (NERR_BASE+19) /* The server is currently out of the requested resource. */
|
||||
/* UNUSED BASE+20 */
|
||||
#define NERR_TooManyItems (NERR_BASE+21) /* Requested addition of items exceeds the maximum allowed. */
|
||||
#define NERR_InvalidMaxUsers (NERR_BASE+22) /* The Peer service supports only two simultaneous users. */
|
||||
#define NERR_BufTooSmall (NERR_BASE+23) /* The API return buffer is too small. */
|
||||
/* UNUSED BASE+24 */
|
||||
/* UNUSED BASE+25 */
|
||||
/* UNUSED BASE+26 */
|
||||
#define NERR_RemoteErr (NERR_BASE+27) /* A remote API error occurred. */
|
||||
/* UNUSED BASE+28 */
|
||||
/* UNUSED BASE+29 */
|
||||
/* UNUSED BASE+30 */
|
||||
#define NERR_LanmanIniError (NERR_BASE+31) /* An error occurred when opening or reading the configuration file. */
|
||||
/* UNUSED BASE+32 */
|
||||
/* UNUSED BASE+33 */
|
||||
/* UNUSED BASE+34 */
|
||||
/* UNUSED BASE+35 */
|
||||
#define NERR_NetworkError (NERR_BASE+36) /* A general network error occurred. */
|
||||
#define NERR_WkstaInconsistentState (NERR_BASE+37)
|
||||
/* The Workstation service is in an inconsistent state. Restart the computer before restarting the Workstation service. */
|
||||
#define NERR_WkstaNotStarted (NERR_BASE+38) /* The Workstation service has not been started. */
|
||||
#define NERR_BrowserNotStarted (NERR_BASE+39) /* The requested information is not available. */
|
||||
#define NERR_InternalError (NERR_BASE+40) /* An internal Windows error occurred.*/
|
||||
#define NERR_BadTransactConfig (NERR_BASE+41) /* The server is not configured for transactions. */
|
||||
#define NERR_InvalidAPI (NERR_BASE+42) /* The requested API is not supported on the remote server. */
|
||||
#define NERR_BadEventName (NERR_BASE+43) /* The event name is invalid. */
|
||||
#define NERR_DupNameReboot (NERR_BASE+44) /* The computer name already exists on the network. Change it and restart the computer. */
|
||||
/*
|
||||
* Config API related
|
||||
* Error codes from BASE+45 to BASE+49
|
||||
*/
|
||||
|
||||
/* UNUSED BASE+45 */
|
||||
#define NERR_CfgCompNotFound (NERR_BASE+46) /* The specified component could not be found in the configuration information. */
|
||||
#define NERR_CfgParamNotFound (NERR_BASE+47) /* The specified parameter could not be found in the configuration information. */
|
||||
#define NERR_LineTooLong (NERR_BASE+49) /* A line in the configuration file is too long. */
|
||||
|
||||
/*
|
||||
* Spooler API related
|
||||
* Error codes from BASE+50 to BASE+79
|
||||
*/
|
||||
|
||||
#define NERR_QNotFound (NERR_BASE+50) /* The printer does not exist. */
|
||||
#define NERR_JobNotFound (NERR_BASE+51) /* The print job does not exist. */
|
||||
#define NERR_DestNotFound (NERR_BASE+52) /* The printer destination cannot be found. */
|
||||
#define NERR_DestExists (NERR_BASE+53) /* The printer destination already exists. */
|
||||
#define NERR_QExists (NERR_BASE+54) /* The printer queue already exists. */
|
||||
#define NERR_QNoRoom (NERR_BASE+55) /* No more printers can be added. */
|
||||
#define NERR_JobNoRoom (NERR_BASE+56) /* No more print jobs can be added. */
|
||||
#define NERR_DestNoRoom (NERR_BASE+57) /* No more printer destinations can be added. */
|
||||
#define NERR_DestIdle (NERR_BASE+58) /* This printer destination is idle and cannot accept control operations. */
|
||||
#define NERR_DestInvalidOp (NERR_BASE+59) /* This printer destination request contains an invalid control function. */
|
||||
#define NERR_ProcNoRespond (NERR_BASE+60) /* The print processor is not responding. */
|
||||
#define NERR_SpoolerNotLoaded (NERR_BASE+61) /* The spooler is not running. */
|
||||
#define NERR_DestInvalidState (NERR_BASE+62) /* This operation cannot be performed on the print destination in its current state. */
|
||||
#define NERR_QInvalidState (NERR_BASE+63) /* This operation cannot be performed on the printer queue in its current state. */
|
||||
#define NERR_JobInvalidState (NERR_BASE+64) /* This operation cannot be performed on the print job in its current state. */
|
||||
#define NERR_SpoolNoMemory (NERR_BASE+65) /* A spooler memory allocation failure occurred. */
|
||||
#define NERR_DriverNotFound (NERR_BASE+66) /* The device driver does not exist. */
|
||||
#define NERR_DataTypeInvalid (NERR_BASE+67) /* The data type is not supported by the print processor. */
|
||||
#define NERR_ProcNotFound (NERR_BASE+68) /* The print processor is not installed. */
|
||||
|
||||
/*
|
||||
* Service API related
|
||||
* Error codes from BASE+80 to BASE+99
|
||||
*/
|
||||
|
||||
#define NERR_ServiceTableLocked (NERR_BASE+80) /* The service database is locked. */
|
||||
#define NERR_ServiceTableFull (NERR_BASE+81) /* The service table is full. */
|
||||
#define NERR_ServiceInstalled (NERR_BASE+82) /* The requested service has already been started. */
|
||||
#define NERR_ServiceEntryLocked (NERR_BASE+83) /* The service does not respond to control actions. */
|
||||
#define NERR_ServiceNotInstalled (NERR_BASE+84) /* The service has not been started. */
|
||||
#define NERR_BadServiceName (NERR_BASE+85) /* The service name is invalid. */
|
||||
#define NERR_ServiceCtlTimeout (NERR_BASE+86) /* The service is not responding to the control function. */
|
||||
#define NERR_ServiceCtlBusy (NERR_BASE+87) /* The service control is busy. */
|
||||
#define NERR_BadServiceProgName (NERR_BASE+88) /* The configuration file contains an invalid service program name. */
|
||||
#define NERR_ServiceNotCtrl (NERR_BASE+89) /* The service could not be controlled in its present state. */
|
||||
#define NERR_ServiceKillProc (NERR_BASE+90) /* The service ended abnormally. */
|
||||
#define NERR_ServiceCtlNotValid (NERR_BASE+91) /* The requested pause, continue, or stop is not valid for this service. */
|
||||
#define NERR_NotInDispatchTbl (NERR_BASE+92) /* The service control dispatcher could not find the service name in the dispatch table. */
|
||||
#define NERR_BadControlRecv (NERR_BASE+93) /* The service control dispatcher pipe read failed. */
|
||||
#define NERR_ServiceNotStarting (NERR_BASE+94) /* A thread for the new service could not be created. */
|
||||
|
||||
/*
|
||||
* Wksta and Logon API related
|
||||
* Error codes from BASE+100 to BASE+118
|
||||
*/
|
||||
|
||||
#define NERR_AlreadyLoggedOn (NERR_BASE+100) /* This workstation is already logged on to the local-area network. */
|
||||
#define NERR_NotLoggedOn (NERR_BASE+101) /* The workstation is not logged on to the local-area network. */
|
||||
#define NERR_BadUsername (NERR_BASE+102) /* The user name or group name parameter is invalid. */
|
||||
#define NERR_BadPassword (NERR_BASE+103) /* The password parameter is invalid. */
|
||||
#define NERR_UnableToAddName_W (NERR_BASE+104) /* @W The logon processor did not add the message alias. */
|
||||
#define NERR_UnableToAddName_F (NERR_BASE+105) /* The logon processor did not add the message alias. */
|
||||
#define NERR_UnableToDelName_W (NERR_BASE+106) /* @W The logoff processor did not delete the message alias. */
|
||||
#define NERR_UnableToDelName_F (NERR_BASE+107) /* The logoff processor did not delete the message alias. */
|
||||
/* UNUSED BASE+108 */
|
||||
#define NERR_LogonsPaused (NERR_BASE+109) /* Network logons are paused. */
|
||||
#define NERR_LogonServerConflict (NERR_BASE+110)/* A centralized logon-server conflict occurred. */
|
||||
#define NERR_LogonNoUserPath (NERR_BASE+111) /* The server is configured without a valid user path. */
|
||||
#define NERR_LogonScriptError (NERR_BASE+112) /* An error occurred while loading or running the logon script. */
|
||||
/* UNUSED BASE+113 */
|
||||
#define NERR_StandaloneLogon (NERR_BASE+114) /* The logon server was not specified. Your computer will be logged on as STANDALONE. */
|
||||
#define NERR_LogonServerNotFound (NERR_BASE+115) /* The logon server could not be found. */
|
||||
#define NERR_LogonDomainExists (NERR_BASE+116) /* There is already a logon domain for this computer. */
|
||||
#define NERR_NonValidatedLogon (NERR_BASE+117) /* The logon server could not validate the logon. */
|
||||
|
||||
/*
|
||||
* ACF API related (access, user, group)
|
||||
* Error codes from BASE+119 to BASE+149
|
||||
*/
|
||||
|
||||
#define NERR_ACFNotFound (NERR_BASE+119) /* The security database could not be found. */
|
||||
#define NERR_GroupNotFound (NERR_BASE+120) /* The group name could not be found. */
|
||||
#define NERR_UserNotFound (NERR_BASE+121) /* The user name could not be found. */
|
||||
#define NERR_ResourceNotFound (NERR_BASE+122) /* The resource name could not be found. */
|
||||
#define NERR_GroupExists (NERR_BASE+123) /* The group already exists. */
|
||||
#define NERR_UserExists (NERR_BASE+124) /* The account already exists. */
|
||||
#define NERR_ResourceExists (NERR_BASE+125) /* The resource permission list already exists. */
|
||||
#define NERR_NotPrimary (NERR_BASE+126) /* This operation is only allowed on the primary domain controller of the domain. */
|
||||
#define NERR_ACFNotLoaded (NERR_BASE+127) /* The security database has not been started. */
|
||||
#define NERR_ACFNoRoom (NERR_BASE+128) /* There are too many names in the user accounts database. */
|
||||
#define NERR_ACFFileIOFail (NERR_BASE+129) /* A disk I/O failure occurred.*/
|
||||
#define NERR_ACFTooManyLists (NERR_BASE+130) /* The limit of 64 entries per resource was exceeded. */
|
||||
#define NERR_UserLogon (NERR_BASE+131) /* Deleting a user with a session is not allowed. */
|
||||
#define NERR_ACFNoParent (NERR_BASE+132) /* The parent directory could not be located. */
|
||||
#define NERR_CanNotGrowSegment (NERR_BASE+133) /* Unable to add to the security database session cache segment. */
|
||||
#define NERR_SpeGroupOp (NERR_BASE+134) /* This operation is not allowed on this special group. */
|
||||
#define NERR_NotInCache (NERR_BASE+135) /* This user is not cached in user accounts database session cache. */
|
||||
#define NERR_UserInGroup (NERR_BASE+136) /* The user already belongs to this group. */
|
||||
#define NERR_UserNotInGroup (NERR_BASE+137) /* The user does not belong to this group. */
|
||||
#define NERR_AccountUndefined (NERR_BASE+138) /* This user account is undefined. */
|
||||
#define NERR_AccountExpired (NERR_BASE+139) /* This user account has expired. */
|
||||
#define NERR_InvalidWorkstation (NERR_BASE+140) /* The user is not allowed to log on from this workstation. */
|
||||
#define NERR_InvalidLogonHours (NERR_BASE+141) /* The user is not allowed to log on at this time. */
|
||||
#define NERR_PasswordExpired (NERR_BASE+142) /* The password of this user has expired. */
|
||||
#define NERR_PasswordCantChange (NERR_BASE+143) /* The password of this user cannot change. */
|
||||
#define NERR_PasswordHistConflict (NERR_BASE+144) /* This password cannot be used now. */
|
||||
#define NERR_PasswordTooShort (NERR_BASE+145) /* The password does not meet the password policy requirements. Check the minimum password length, password complexity and password history requirements. */
|
||||
#define NERR_PasswordTooRecent (NERR_BASE+146) /* The password of this user is too recent to change. */
|
||||
#define NERR_InvalidDatabase (NERR_BASE+147) /* The security database is corrupted. */
|
||||
#define NERR_DatabaseUpToDate (NERR_BASE+148) /* No updates are necessary to this replicant network/local security database. */
|
||||
#define NERR_SyncRequired (NERR_BASE+149) /* This replicant database is outdated; synchronization is required. */
|
||||
|
||||
/*
|
||||
* Use API related
|
||||
* Error codes from BASE+150 to BASE+169
|
||||
*/
|
||||
|
||||
#define NERR_UseNotFound (NERR_BASE+150) /* The network connection could not be found. */
|
||||
#define NERR_BadAsgType (NERR_BASE+151) /* This asg_type is invalid. */
|
||||
#define NERR_DeviceIsShared (NERR_BASE+152) /* This device is currently being shared. */
|
||||
#define NERR_SameAsComputerName (NERR_BASE+153) /* The user name may not be same as computer name. */
|
||||
|
||||
|
||||
/*
|
||||
* Message Server related
|
||||
* Error codes BASE+170 to BASE+209
|
||||
*/
|
||||
|
||||
#define NERR_NoComputerName (NERR_BASE+170) /* The computer name could not be added as a message alias. The name may already exist on the network. */
|
||||
#define NERR_MsgAlreadyStarted (NERR_BASE+171) /* The Messenger service is already started. */
|
||||
#define NERR_MsgInitFailed (NERR_BASE+172) /* The Messenger service failed to start. */
|
||||
#define NERR_NameNotFound (NERR_BASE+173) /* The message alias could not be found on the network. */
|
||||
#define NERR_AlreadyForwarded (NERR_BASE+174) /* This message alias has already been forwarded. */
|
||||
#define NERR_AddForwarded (NERR_BASE+175) /* This message alias has been added but is still forwarded. */
|
||||
#define NERR_AlreadyExists (NERR_BASE+176) /* This message alias already exists locally. */
|
||||
#define NERR_TooManyNames (NERR_BASE+177) /* The maximum number of added message aliases has been exceeded. */
|
||||
#define NERR_DelComputerName (NERR_BASE+178) /* The computer name could not be deleted.*/
|
||||
#define NERR_LocalForward (NERR_BASE+179) /* Messages cannot be forwarded back to the same workstation. */
|
||||
#define NERR_GrpMsgProcessor (NERR_BASE+180) /* An error occurred in the domain message processor. */
|
||||
#define NERR_PausedRemote (NERR_BASE+181) /* The message was sent, but the recipient has paused the Messenger service. */
|
||||
#define NERR_BadReceive (NERR_BASE+182) /* The message was sent but not received. */
|
||||
#define NERR_NameInUse (NERR_BASE+183) /* The message alias is currently in use. Try again later. */
|
||||
#define NERR_MsgNotStarted (NERR_BASE+184) /* The Messenger service has not been started. */
|
||||
#define NERR_NotLocalName (NERR_BASE+185) /* The name is not on the local computer. */
|
||||
#define NERR_NoForwardName (NERR_BASE+186) /* The forwarded message alias could not be found on the network. */
|
||||
#define NERR_RemoteFull (NERR_BASE+187) /* The message alias table on the remote station is full. */
|
||||
#define NERR_NameNotForwarded (NERR_BASE+188) /* Messages for this alias are not currently being forwarded. */
|
||||
#define NERR_TruncatedBroadcast (NERR_BASE+189) /* The broadcast message was truncated. */
|
||||
#define NERR_InvalidDevice (NERR_BASE+194) /* This is an invalid device name. */
|
||||
#define NERR_WriteFault (NERR_BASE+195) /* A write fault occurred. */
|
||||
/* UNUSED BASE+196 */
|
||||
#define NERR_DuplicateName (NERR_BASE+197) /* A duplicate message alias exists on the network. */
|
||||
#define NERR_DeleteLater (NERR_BASE+198) /* @W This message alias will be deleted later. */
|
||||
#define NERR_IncompleteDel (NERR_BASE+199) /* The message alias was not successfully deleted from all networks. */
|
||||
#define NERR_MultipleNets (NERR_BASE+200) /* This operation is not supported on computers with multiple networks. */
|
||||
|
||||
/*
|
||||
* Server API related
|
||||
* Error codes BASE+210 to BASE+229
|
||||
*/
|
||||
|
||||
#define NERR_NetNameNotFound (NERR_BASE+210) /* This shared resource does not exist.*/
|
||||
#define NERR_DeviceNotShared (NERR_BASE+211) /* This device is not shared. */
|
||||
#define NERR_ClientNameNotFound (NERR_BASE+212) /* A session does not exist with that computer name. */
|
||||
#define NERR_FileIdNotFound (NERR_BASE+214) /* There is not an open file with that identification number. */
|
||||
#define NERR_ExecFailure (NERR_BASE+215) /* A failure occurred when executing a remote administration command. */
|
||||
#define NERR_TmpFile (NERR_BASE+216) /* A failure occurred when opening a remote temporary file. */
|
||||
#define NERR_TooMuchData (NERR_BASE+217) /* The data returned from a remote administration command has been truncated to 64K. */
|
||||
#define NERR_DeviceShareConflict (NERR_BASE+218) /* This device cannot be shared as both a spooled and a non-spooled resource. */
|
||||
#define NERR_BrowserTableIncomplete (NERR_BASE+219) /* The information in the list of servers may be incorrect. */
|
||||
#define NERR_NotLocalDomain (NERR_BASE+220) /* The computer is not active in this domain. */
|
||||
#define NERR_IsDfsShare (NERR_BASE+221) /* The share must be removed from the Distributed File System before it can be deleted. */
|
||||
|
||||
/*
|
||||
* CharDev API related
|
||||
* Error codes BASE+230 to BASE+249
|
||||
*/
|
||||
|
||||
/* UNUSED BASE+230 */
|
||||
#define NERR_DevInvalidOpCode (NERR_BASE+231) /* The operation is invalid for this device. */
|
||||
#define NERR_DevNotFound (NERR_BASE+232) /* This device cannot be shared. */
|
||||
#define NERR_DevNotOpen (NERR_BASE+233) /* This device was not open. */
|
||||
#define NERR_BadQueueDevString (NERR_BASE+234) /* This device name list is invalid. */
|
||||
#define NERR_BadQueuePriority (NERR_BASE+235) /* The queue priority is invalid. */
|
||||
#define NERR_NoCommDevs (NERR_BASE+237) /* There are no shared communication devices. */
|
||||
#define NERR_QueueNotFound (NERR_BASE+238) /* The queue you specified does not exist. */
|
||||
#define NERR_BadDevString (NERR_BASE+240) /* This list of devices is invalid. */
|
||||
#define NERR_BadDev (NERR_BASE+241) /* The requested device is invalid. */
|
||||
#define NERR_InUseBySpooler (NERR_BASE+242) /* This device is already in use by the spooler. */
|
||||
#define NERR_CommDevInUse (NERR_BASE+243) /* This device is already in use as a communication device. */
|
||||
|
||||
/*
|
||||
* NetICanonicalize and NetIType and NetIMakeLMFileName
|
||||
* NetIListCanon and NetINameCheck
|
||||
* Error codes BASE+250 to BASE+269
|
||||
*/
|
||||
|
||||
#define NERR_InvalidComputer (NERR_BASE+251) /* This computer name is invalid. */
|
||||
/* UNUSED BASE+252 */
|
||||
/* UNUSED BASE+253 */
|
||||
#define NERR_MaxLenExceeded (NERR_BASE+254) /* The string and prefix specified are too long. */
|
||||
/* UNUSED BASE+255 */
|
||||
#define NERR_BadComponent (NERR_BASE+256) /* This path component is invalid. */
|
||||
#define NERR_CantType (NERR_BASE+257) /* Could not determine the type of input. */
|
||||
/* UNUSED BASE+258 */
|
||||
/* UNUSED BASE+259 */
|
||||
#define NERR_TooManyEntries (NERR_BASE+262) /* The buffer for types is not big enough. */
|
||||
|
||||
/*
|
||||
* NetProfile
|
||||
* Error codes BASE+270 to BASE+276
|
||||
*/
|
||||
|
||||
#define NERR_ProfileFileTooBig (NERR_BASE+270) /* Profile files cannot exceed 64K. */
|
||||
#define NERR_ProfileOffset (NERR_BASE+271) /* The start offset is out of range. */
|
||||
#define NERR_ProfileCleanup (NERR_BASE+272) /* The system cannot delete current connections to network resources. */
|
||||
#define NERR_ProfileUnknownCmd (NERR_BASE+273) /* The system was unable to parse the command line in this file.*/
|
||||
#define NERR_ProfileLoadErr (NERR_BASE+274) /* An error occurred while loading the profile file. */
|
||||
#define NERR_ProfileSaveErr (NERR_BASE+275) /* @W Errors occurred while saving the profile file. The profile was partially saved. */
|
||||
|
||||
|
||||
/*
|
||||
* NetAudit and NetErrorLog
|
||||
* Error codes BASE+277 to BASE+279
|
||||
*/
|
||||
|
||||
#define NERR_LogOverflow (NERR_BASE+277) /* Log file %1 is full. */
|
||||
#define NERR_LogFileChanged (NERR_BASE+278) /* This log file has changed between reads. */
|
||||
#define NERR_LogFileCorrupt (NERR_BASE+279) /* Log file %1 is corrupt. */
|
||||
|
||||
|
||||
/*
|
||||
* NetRemote
|
||||
* Error codes BASE+280 to BASE+299
|
||||
*/
|
||||
#define NERR_SourceIsDir (NERR_BASE+280) /* The source path cannot be a directory. */
|
||||
#define NERR_BadSource (NERR_BASE+281) /* The source path is illegal. */
|
||||
#define NERR_BadDest (NERR_BASE+282) /* The destination path is illegal. */
|
||||
#define NERR_DifferentServers (NERR_BASE+283) /* The source and destination paths are on different servers. */
|
||||
/* UNUSED BASE+284 */
|
||||
#define NERR_RunSrvPaused (NERR_BASE+285) /* The Run server you requested is paused. */
|
||||
/* UNUSED BASE+286 */
|
||||
/* UNUSED BASE+287 */
|
||||
/* UNUSED BASE+288 */
|
||||
#define NERR_ErrCommRunSrv (NERR_BASE+289) /* An error occurred when communicating with a Run server. */
|
||||
/* UNUSED BASE+290 */
|
||||
#define NERR_ErrorExecingGhost (NERR_BASE+291) /* An error occurred when starting a background process. */
|
||||
#define NERR_ShareNotFound (NERR_BASE+292) /* The shared resource you are connected to could not be found.*/
|
||||
/* UNUSED BASE+293 */
|
||||
/* UNUSED BASE+294 */
|
||||
|
||||
|
||||
/*
|
||||
* NetWksta.sys (redir) returned error codes.
|
||||
*
|
||||
* NERR_BASE + (300-329)
|
||||
*/
|
||||
|
||||
#define NERR_InvalidLana (NERR_BASE+300) /* The LAN adapter number is invalid. */
|
||||
#define NERR_OpenFiles (NERR_BASE+301) /* There are open files on the connection. */
|
||||
#define NERR_ActiveConns (NERR_BASE+302) /* Active connections still exist. */
|
||||
#define NERR_BadPasswordCore (NERR_BASE+303) /* This share name or password is invalid. */
|
||||
#define NERR_DevInUse (NERR_BASE+304) /* The device is being accessed by an active process. */
|
||||
#define NERR_LocalDrive (NERR_BASE+305) /* The drive letter is in use locally. */
|
||||
|
||||
/*
|
||||
* Alert error codes.
|
||||
*
|
||||
* NERR_BASE + (330-339)
|
||||
*/
|
||||
#define NERR_AlertExists (NERR_BASE+330) /* The specified client is already registered for the specified event. */
|
||||
#define NERR_TooManyAlerts (NERR_BASE+331) /* The alert table is full. */
|
||||
#define NERR_NoSuchAlert (NERR_BASE+332) /* An invalid or nonexistent alert name was raised. */
|
||||
#define NERR_BadRecipient (NERR_BASE+333) /* The alert recipient is invalid.*/
|
||||
#define NERR_AcctLimitExceeded (NERR_BASE+334) /* A user's session with this server has been deleted
|
||||
* because the user's logon hours are no longer valid. */
|
||||
|
||||
/*
|
||||
* Additional Error and Audit log codes.
|
||||
*
|
||||
* NERR_BASE +(340-343)
|
||||
*/
|
||||
#define NERR_InvalidLogSeek (NERR_BASE+340) /* The log file does not contain the requested record number. */
|
||||
/* UNUSED BASE+341 */
|
||||
/* UNUSED BASE+342 */
|
||||
/* UNUSED BASE+343 */
|
||||
|
||||
/*
|
||||
* Additional UAS and NETLOGON codes
|
||||
*
|
||||
* NERR_BASE +(350-359)
|
||||
*/
|
||||
#define NERR_BadUasConfig (NERR_BASE+350) /* The user accounts database is not configured correctly. */
|
||||
#define NERR_InvalidUASOp (NERR_BASE+351) /* This operation is not permitted when the Netlogon service is running. */
|
||||
#define NERR_LastAdmin (NERR_BASE+352) /* This operation is not allowed on the last administrative account. */
|
||||
#define NERR_DCNotFound (NERR_BASE+353) /* Could not find domain controller for this domain. */
|
||||
#define NERR_LogonTrackingError (NERR_BASE+354) /* Could not set logon information for this user. */
|
||||
#define NERR_NetlogonNotStarted (NERR_BASE+355) /* The Netlogon service has not been started. */
|
||||
#define NERR_CanNotGrowUASFile (NERR_BASE+356) /* Unable to add to the user accounts database. */
|
||||
#define NERR_TimeDiffAtDC (NERR_BASE+357) /* This server's clock is not synchronized with the primary domain controller's clock. */
|
||||
#define NERR_PasswordMismatch (NERR_BASE+358) /* A password mismatch has been detected. */
|
||||
|
||||
|
||||
/*
|
||||
* Server Integration error codes.
|
||||
*
|
||||
* NERR_BASE +(360-369)
|
||||
*/
|
||||
#define NERR_NoSuchServer (NERR_BASE+360) /* The server identification does not specify a valid server. */
|
||||
#define NERR_NoSuchSession (NERR_BASE+361) /* The session identification does not specify a valid session. */
|
||||
#define NERR_NoSuchConnection (NERR_BASE+362) /* The connection identification does not specify a valid connection. */
|
||||
#define NERR_TooManyServers (NERR_BASE+363) /* There is no space for another entry in the table of available servers. */
|
||||
#define NERR_TooManySessions (NERR_BASE+364) /* The server has reached the maximum number of sessions it supports. */
|
||||
#define NERR_TooManyConnections (NERR_BASE+365) /* The server has reached the maximum number of connections it supports. */
|
||||
#define NERR_TooManyFiles (NERR_BASE+366) /* The server cannot open more files because it has reached its maximum number. */
|
||||
#define NERR_NoAlternateServers (NERR_BASE+367) /* There are no alternate servers registered on this server. */
|
||||
/* UNUSED BASE+368 */
|
||||
/* UNUSED BASE+369 */
|
||||
|
||||
#define NERR_TryDownLevel (NERR_BASE+370) /* Try down-level (remote admin protocol) version of API instead. */
|
||||
|
||||
/*
|
||||
* UPS error codes.
|
||||
*
|
||||
* NERR_BASE + (380-384)
|
||||
*/
|
||||
#define NERR_UPSDriverNotStarted (NERR_BASE+380) /* The UPS driver could not be accessed by the UPS service. */
|
||||
#define NERR_UPSInvalidConfig (NERR_BASE+381) /* The UPS service is not configured correctly. */
|
||||
#define NERR_UPSInvalidCommPort (NERR_BASE+382) /* The UPS service could not access the specified Comm Port. */
|
||||
#define NERR_UPSSignalAsserted (NERR_BASE+383) /* The UPS indicated a line fail or low battery situation. Service not started. */
|
||||
#define NERR_UPSShutdownFailed (NERR_BASE+384) /* The UPS service failed to perform a system shut down. */
|
||||
|
||||
/*
|
||||
* Remoteboot error codes.
|
||||
*
|
||||
* NERR_BASE + (400-419)
|
||||
* Error codes 400 - 405 are used by RPLBOOT.SYS.
|
||||
* Error codes 403, 407 - 416 are used by RPLLOADR.COM,
|
||||
* Error code 417 is the alerter message of REMOTEBOOT (RPLSERVR.EXE).
|
||||
* Error code 418 is for when REMOTEBOOT can't start
|
||||
* Error code 419 is for a disallowed 2nd rpl connection
|
||||
*
|
||||
*/
|
||||
#define NERR_BadDosRetCode (NERR_BASE+400) /* The program below returned an MS-DOS error code:*/
|
||||
#define NERR_ProgNeedsExtraMem (NERR_BASE+401) /* The program below needs more memory:*/
|
||||
#define NERR_BadDosFunction (NERR_BASE+402) /* The program below called an unsupported MS-DOS function:*/
|
||||
#define NERR_RemoteBootFailed (NERR_BASE+403) /* The workstation failed to boot.*/
|
||||
#define NERR_BadFileCheckSum (NERR_BASE+404) /* The file below is corrupt.*/
|
||||
#define NERR_NoRplBootSystem (NERR_BASE+405) /* No loader is specified in the boot-block definition file.*/
|
||||
#define NERR_RplLoadrNetBiosErr (NERR_BASE+406) /* NetBIOS returned an error: The NCB and SMB are dumped above.*/
|
||||
#define NERR_RplLoadrDiskErr (NERR_BASE+407) /* A disk I/O error occurred.*/
|
||||
#define NERR_ImageParamErr (NERR_BASE+408) /* Image parameter substitution failed.*/
|
||||
#define NERR_TooManyImageParams (NERR_BASE+409) /* Too many image parameters cross disk sector boundaries.*/
|
||||
#define NERR_NonDosFloppyUsed (NERR_BASE+410) /* The image was not generated from an MS-DOS diskette formatted with /S.*/
|
||||
#define NERR_RplBootRestart (NERR_BASE+411) /* Remote boot will be restarted later.*/
|
||||
#define NERR_RplSrvrCallFailed (NERR_BASE+412) /* The call to the Remoteboot server failed.*/
|
||||
#define NERR_CantConnectRplSrvr (NERR_BASE+413) /* Cannot connect to the Remoteboot server.*/
|
||||
#define NERR_CantOpenImageFile (NERR_BASE+414) /* Cannot open image file on the Remoteboot server.*/
|
||||
#define NERR_CallingRplSrvr (NERR_BASE+415) /* Connecting to the Remoteboot server...*/
|
||||
#define NERR_StartingRplBoot (NERR_BASE+416) /* Connecting to the Remoteboot server...*/
|
||||
#define NERR_RplBootServiceTerm (NERR_BASE+417) /* Remote boot service was stopped; check the error log for the cause of the problem.*/
|
||||
#define NERR_RplBootStartFailed (NERR_BASE+418) /* Remote boot startup failed; check the error log for the cause of the problem.*/
|
||||
#define NERR_RPL_CONNECTED (NERR_BASE+419) /* A second connection to a Remoteboot resource is not allowed.*/
|
||||
|
||||
/*
|
||||
* FTADMIN API error codes
|
||||
*
|
||||
* NERR_BASE + (425-434)
|
||||
*
|
||||
* (Currently not used in NT)
|
||||
*
|
||||
*/
|
||||
|
||||
/*
|
||||
* Browser service API error codes
|
||||
*
|
||||
* NERR_BASE + (450-475)
|
||||
*
|
||||
*/
|
||||
#define NERR_BrowserConfiguredToNotRun (NERR_BASE+450) /* The browser service was configured with MaintainServerList=No. */
|
||||
|
||||
/*
|
||||
* Additional Remoteboot error codes.
|
||||
*
|
||||
* NERR_BASE + (510-550)
|
||||
*/
|
||||
#define NERR_RplNoAdaptersStarted (NERR_BASE+510) /*Service failed to start since none of the network adapters started with this service.*/
|
||||
#define NERR_RplBadRegistry (NERR_BASE+511) /*Service failed to start due to bad startup information in the registry.*/
|
||||
#define NERR_RplBadDatabase (NERR_BASE+512) /*Service failed to start because its database is absent or corrupt.*/
|
||||
#define NERR_RplRplfilesShare (NERR_BASE+513) /*Service failed to start because RPLFILES share is absent.*/
|
||||
#define NERR_RplNotRplServer (NERR_BASE+514) /*Service failed to start because RPLUSER group is absent.*/
|
||||
#define NERR_RplCannotEnum (NERR_BASE+515) /*Cannot enumerate service records.*/
|
||||
#define NERR_RplWkstaInfoCorrupted (NERR_BASE+516) /*Workstation record information has been corrupted.*/
|
||||
#define NERR_RplWkstaNotFound (NERR_BASE+517) /*Workstation record was not found.*/
|
||||
#define NERR_RplWkstaNameUnavailable (NERR_BASE+518) /*Workstation name is in use by some other workstation.*/
|
||||
#define NERR_RplProfileInfoCorrupted (NERR_BASE+519) /*Profile record information has been corrupted.*/
|
||||
#define NERR_RplProfileNotFound (NERR_BASE+520) /*Profile record was not found.*/
|
||||
#define NERR_RplProfileNameUnavailable (NERR_BASE+521) /*Profile name is in use by some other profile.*/
|
||||
#define NERR_RplProfileNotEmpty (NERR_BASE+522) /*There are workstations using this profile.*/
|
||||
#define NERR_RplConfigInfoCorrupted (NERR_BASE+523) /*Configuration record information has been corrupted.*/
|
||||
#define NERR_RplConfigNotFound (NERR_BASE+524) /*Configuration record was not found.*/
|
||||
#define NERR_RplAdapterInfoCorrupted (NERR_BASE+525) /*Adapter id record information has been corrupted.*/
|
||||
#define NERR_RplInternal (NERR_BASE+526) /*An internal service error has occurred.*/
|
||||
#define NERR_RplVendorInfoCorrupted (NERR_BASE+527) /*Vendor id record information has been corrupted.*/
|
||||
#define NERR_RplBootInfoCorrupted (NERR_BASE+528) /*Boot block record information has been corrupted.*/
|
||||
#define NERR_RplWkstaNeedsUserAcct (NERR_BASE+529) /*The user account for this workstation record is missing.*/
|
||||
#define NERR_RplNeedsRPLUSERAcct (NERR_BASE+530) /*The RPLUSER local group could not be found.*/
|
||||
#define NERR_RplBootNotFound (NERR_BASE+531) /*Boot block record was not found.*/
|
||||
#define NERR_RplIncompatibleProfile (NERR_BASE+532) /*Chosen profile is incompatible with this workstation.*/
|
||||
#define NERR_RplAdapterNameUnavailable (NERR_BASE+533) /*Chosen network adapter id is in use by some other workstation.*/
|
||||
#define NERR_RplConfigNotEmpty (NERR_BASE+534) /*There are profiles using this configuration.*/
|
||||
#define NERR_RplBootInUse (NERR_BASE+535) /*There are workstations, profiles or configurations using this boot block.*/
|
||||
#define NERR_RplBackupDatabase (NERR_BASE+536) /*Service failed to backup Remoteboot database.*/
|
||||
#define NERR_RplAdapterNotFound (NERR_BASE+537) /*Adapter record was not found.*/
|
||||
#define NERR_RplVendorNotFound (NERR_BASE+538) /*Vendor record was not found.*/
|
||||
#define NERR_RplVendorNameUnavailable (NERR_BASE+539) /*Vendor name is in use by some other vendor record.*/
|
||||
#define NERR_RplBootNameUnavailable (NERR_BASE+540) /*(boot name, vendor id) is in use by some other boot block record.*/
|
||||
#define NERR_RplConfigNameUnavailable (NERR_BASE+541) /*Configuration name is in use by some other configuration.*/
|
||||
|
||||
/**INTERNAL_ONLY**/
|
||||
|
||||
/*
|
||||
* Dfs API error codes.
|
||||
*
|
||||
* NERR_BASE + (560-590)
|
||||
*/
|
||||
|
||||
#define NERR_DfsInternalCorruption (NERR_BASE+560) /*The internal database maintained by the DFS service is corrupt*/
|
||||
#define NERR_DfsVolumeDataCorrupt (NERR_BASE+561) /*One of the records in the internal DFS database is corrupt*/
|
||||
#define NERR_DfsNoSuchVolume (NERR_BASE+562) /*There is no DFS name whose entry path matches the input Entry Path*/
|
||||
#define NERR_DfsVolumeAlreadyExists (NERR_BASE+563) /*A root or link with the given name already exists*/
|
||||
#define NERR_DfsAlreadyShared (NERR_BASE+564) /*The server share specified is already shared in the DFS*/
|
||||
#define NERR_DfsNoSuchShare (NERR_BASE+565) /*The indicated server share does not support the indicated DFS namespace*/
|
||||
#define NERR_DfsNotALeafVolume (NERR_BASE+566) /*The operation is not valid on this portion of the namespace*/
|
||||
#define NERR_DfsLeafVolume (NERR_BASE+567) /*The operation is not valid on this portion of the namespace*/
|
||||
#define NERR_DfsVolumeHasMultipleServers (NERR_BASE+568) /*The operation is ambiguous because the link has multiple servers*/
|
||||
#define NERR_DfsCantCreateJunctionPoint (NERR_BASE+569) /*Unable to create a link*/
|
||||
#define NERR_DfsServerNotDfsAware (NERR_BASE+570) /*The server is not DFS Aware*/
|
||||
#define NERR_DfsBadRenamePath (NERR_BASE+571) /*The specified rename target path is invalid*/
|
||||
#define NERR_DfsVolumeIsOffline (NERR_BASE+572) /*The specified DFS link is offline*/
|
||||
#define NERR_DfsNoSuchServer (NERR_BASE+573) /*The specified server is not a server for this link*/
|
||||
#define NERR_DfsCyclicalName (NERR_BASE+574) /*A cycle in the DFS name was detected*/
|
||||
#define NERR_DfsNotSupportedInServerDfs (NERR_BASE+575) /*The operation is not supported on a server-based DFS*/
|
||||
#define NERR_DfsDuplicateService (NERR_BASE+576) /*This link is already supported by the specified server-share*/
|
||||
#define NERR_DfsCantRemoveLastServerShare (NERR_BASE+577) /*Can't remove the last server-share supporting this root or link*/
|
||||
#define NERR_DfsVolumeIsInterDfs (NERR_BASE+578) /*The operation is not supported for an Inter-DFS link*/
|
||||
#define NERR_DfsInconsistent (NERR_BASE+579) /*The internal state of the DFS Service has become inconsistent*/
|
||||
#define NERR_DfsServerUpgraded (NERR_BASE+580) /*The DFS Service has been installed on the specified server*/
|
||||
#define NERR_DfsDataIsIdentical (NERR_BASE+581) /*The DFS data being reconciled is identical*/
|
||||
#define NERR_DfsCantRemoveDfsRoot (NERR_BASE+582) /*The DFS root cannot be deleted - Uninstall DFS if required*/
|
||||
#define NERR_DfsChildOrParentInDfs (NERR_BASE+583) /*A child or parent directory of the share is already in a DFS*/
|
||||
#define NERR_DfsInternalError (NERR_BASE+590) /*DFS internal error*/
|
||||
|
||||
/*
|
||||
* Net setup error codes.
|
||||
*
|
||||
* NERR_BASE + (591-600)
|
||||
*/
|
||||
#define NERR_SetupAlreadyJoined (NERR_BASE+591) /*This machine is already joined to a domain.*/
|
||||
#define NERR_SetupNotJoined (NERR_BASE+592) /*This machine is not currently joined to a domain.*/
|
||||
#define NERR_SetupDomainController (NERR_BASE+593) /*This machine is a domain controller and cannot be unjoined from a domain.*/
|
||||
#define NERR_DefaultJoinRequired (NERR_BASE+594) /*The destination domain controller does not support creating machine accounts in OUs.*/
|
||||
#define NERR_InvalidWorkgroupName (NERR_BASE+595) /*The specified workgroup name is invalid.*/
|
||||
#define NERR_NameUsesIncompatibleCodePage (NERR_BASE+596) /*The specified computer name is incompatible with the default language used on the domain controller.*/
|
||||
#define NERR_ComputerAccountNotFound (NERR_BASE+597) /*The specified computer account could not be found. Contact an administrator to verify the account is in the domain. If the account has been deleted unjoin, reboot, and rejoin the domain.*/
|
||||
#define NERR_PersonalSku (NERR_BASE+598) /*This version of Windows cannot be joined to a domain.*/
|
||||
#define NERR_SetupCheckDNSConfig (NERR_BASE+599) /*An attempt to resolve the DNS name of a domain controller in the domain being joined has failed. Please verify this client is configured to reach a DNS server that can resolve DNS names in the target domain. For information about network troubleshooting, see Windows Help.*/
|
||||
#define NERR_AlreadyCloudDomainJoined (NERR_BASE+600) /*This device is joined to Azure AD. To join an Active Directory domain, you must first go to settings and choose to disconnect your device from your work or school.*/
|
||||
|
||||
/*
|
||||
* Some Password and account error results
|
||||
*
|
||||
* NERR_BASE + (601 - 608)
|
||||
*/
|
||||
#define NERR_PasswordMustChange (NERR_BASE + 601) /* Password must change at next logon */
|
||||
#define NERR_AccountLockedOut (NERR_BASE + 602) /* Account is locked out */
|
||||
#define NERR_PasswordTooLong (NERR_BASE + 603) /* Password is too long */
|
||||
#define NERR_PasswordNotComplexEnough (NERR_BASE + 604) /* Password doesn't meet the complexity policy */
|
||||
#define NERR_PasswordFilterError (NERR_BASE + 605) /* Password doesn't meet the requirements of the filter dll's */
|
||||
|
||||
/*
|
||||
* Error codes used for offline domain join and completion
|
||||
*
|
||||
* NERR_BASE + (609 - 621)
|
||||
*/
|
||||
#define NERR_NoOfflineJoinInfo (NERR_BASE + 609) /* Offline join completion information was not found. */
|
||||
#define NERR_BadOfflineJoinInfo (NERR_BASE + 610) /* The offline join completion information was bad. */
|
||||
#define NERR_CantCreateJoinInfo (NERR_BASE + 611) /* Unable to create offline join information. Please ensure you have access to the specified path location and permissions to modify its contents. Running as an elevated administrator may be required. */
|
||||
#define NERR_BadDomainJoinInfo (NERR_BASE + 612) /* The domain join info being saved was incomplete or bad. */
|
||||
#define NERR_JoinPerformedMustRestart (NERR_BASE + 613) /* Offline join operation successfully completed but a restart is needed. */
|
||||
#define NERR_NoJoinPending (NERR_BASE + 614) /* There was no offline join operation pending. */
|
||||
#define NERR_ValuesNotSet (NERR_BASE + 615) /* Unable to set one or more requested machine or domain name values on the local computer. */
|
||||
#define NERR_CantVerifyHostname (NERR_BASE + 616) /* Could not verify the current machine's hostname against the saved value in the join completion information. */
|
||||
#define NERR_CantLoadOfflineHive (NERR_BASE + 617) /* Unable to load the specified offline registry hive. Please ensure you have access to the specified path location and permissions to modify its contents. Running as an elevated administrator may be required. */
|
||||
#define NERR_ConnectionInsecure (NERR_BASE + 618) /* The minimum session security requirements for this operation were not met. */
|
||||
#define NERR_ProvisioningBlobUnsupported (NERR_BASE + 619) /* Computer account provisioning blob version is not supported. */
|
||||
#define NERR_DS8DCRequired (NERR_BASE + 620) /* The specified domain controller does not meet the version requirement for this operation. Please select a domain controller capable of issuing claims. */
|
||||
#define NERR_LDAPCapableDCRequired (NERR_BASE + 621) /* This operation requires a domain controller which supports LDAP. Please select an LDAP-capable domain controller. */
|
||||
#define NERR_DS8DCNotFound (NERR_BASE + 622) /* A domain controller which meets the version requirement for this operation could not be located. Please ensure that a domain controller capable of issuing claims is available. */
|
||||
#define NERR_TargetVersionUnsupported (NERR_BASE + 623) /* The Windows version of the specified image does not support provisioning. */
|
||||
#define NERR_InvalidMachineNameForJoin (NERR_BASE + 624) /* The machine name is blocked from joining the domain.*/
|
||||
#define NERR_DS9DCNotFound (NERR_BASE + 625) /* The domain controller does not meet the version requirement for this operation. See http://go.microsoft.com/fwlink/?LinkId=294288 for more information. */
|
||||
#define NERR_PlainTextSecretsRequired (NERR_BASE + 626) /* The local machine does not allow querying of LSA secrets in plain-text. */
|
||||
#define NERR_CannotUnjoinAadDomain (NERR_BASE + 627) /* Unable to leave the Azure AD domain that this machine is joined to. Check the event log for detailed error information. */
|
||||
|
||||
|
||||
/***********WARNING ****************
|
||||
*The range 2750-2799 has been *
|
||||
*allocated to the IBM LAN Server *
|
||||
***********************************/
|
||||
|
||||
/***********WARNING ****************
|
||||
*The range 2900-2999 has been *
|
||||
*reserved for Microsoft OEMs *
|
||||
***********************************/
|
||||
|
||||
/**END_INTERNAL**/
|
||||
|
||||
#define MAX_NERR (NERR_BASE+899) /* This is the last error in NERR range. */
|
||||
|
||||
/*
|
||||
* end of list
|
||||
*
|
||||
* WARNING: Do not exceed MAX_NERR; values above this are used by
|
||||
* other error code ranges (errlog.h, service.h, apperr.h).
|
||||
*/
|
||||
@@ -0,0 +1,191 @@
|
||||
#define ATM_E164 0x01 /* E.164 addressing scheme */
|
||||
#define ATM_NSAP 0x02 /* NSAP-style ATM Endsystem Address scheme */
|
||||
#define ATM_AESA 0x02 /* NSAP-style ATM Endsystem Address scheme */
|
||||
#define ATM_ADDR_SIZE 20
|
||||
|
||||
#define DNS_ATMA_FORMAT_E164 ATM_E164
|
||||
#define DNS_ATMA_FORMAT_AESA ATM_AESA
|
||||
#define DNS_ATMA_MAX_ADDR_LENGTH ATM_ADDR_SIZE
|
||||
|
||||
|
||||
#define DNS_ADDR_MAX_SOCKADDR_LENGTH (32)
|
||||
|
||||
#define DNS_TYPE_ZERO 0x0000
|
||||
|
||||
// RFC 1034/1035
|
||||
#define DNS_TYPE_A 0x0001 // 1
|
||||
#define DNS_TYPE_NS 0x0002 // 2
|
||||
#define DNS_TYPE_MD 0x0003 // 3
|
||||
#define DNS_TYPE_MF 0x0004 // 4
|
||||
#define DNS_TYPE_CNAME 0x0005 // 5
|
||||
#define DNS_TYPE_SOA 0x0006 // 6
|
||||
#define DNS_TYPE_MB 0x0007 // 7
|
||||
#define DNS_TYPE_MG 0x0008 // 8
|
||||
#define DNS_TYPE_MR 0x0009 // 9
|
||||
#define DNS_TYPE_NULL 0x000a // 10
|
||||
#define DNS_TYPE_WKS 0x000b // 11
|
||||
#define DNS_TYPE_PTR 0x000c // 12
|
||||
#define DNS_TYPE_HINFO 0x000d // 13
|
||||
#define DNS_TYPE_MINFO 0x000e // 14
|
||||
#define DNS_TYPE_MX 0x000f // 15
|
||||
#define DNS_TYPE_TEXT 0x0010 // 16
|
||||
|
||||
// RFC 1183
|
||||
#define DNS_TYPE_RP 0x0011 // 17
|
||||
#define DNS_TYPE_AFSDB 0x0012 // 18
|
||||
#define DNS_TYPE_X25 0x0013 // 19
|
||||
#define DNS_TYPE_ISDN 0x0014 // 20
|
||||
#define DNS_TYPE_RT 0x0015 // 21
|
||||
|
||||
// RFC 1348
|
||||
#define DNS_TYPE_NSAP 0x0016 // 22
|
||||
#define DNS_TYPE_NSAPPTR 0x0017 // 23
|
||||
|
||||
// RFC 2065 (DNS security)
|
||||
#define DNS_TYPE_SIG 0x0018 // 24
|
||||
#define DNS_TYPE_KEY 0x0019 // 25
|
||||
|
||||
// RFC 1664 (X.400 mail)
|
||||
#define DNS_TYPE_PX 0x001a // 26
|
||||
|
||||
// RFC 1712 (Geographic position)
|
||||
#define DNS_TYPE_GPOS 0x001b // 27
|
||||
|
||||
// RFC 1886 (IPv6 Address)
|
||||
#define DNS_TYPE_AAAA 0x001c // 28
|
||||
|
||||
// RFC 1876 (Geographic location)
|
||||
#define DNS_TYPE_LOC 0x001d // 29
|
||||
|
||||
// RFC 2065 (Secure negative response)
|
||||
#define DNS_TYPE_NXT 0x001e // 30
|
||||
// Patton (Endpoint Identifier)
|
||||
#define DNS_TYPE_EID 0x001f // 31
|
||||
|
||||
// Patton (Nimrod Locator)
|
||||
#define DNS_TYPE_NIMLOC 0x0020 // 32
|
||||
|
||||
// RFC 2052 (Service location)
|
||||
#define DNS_TYPE_SRV 0x0021 // 33
|
||||
|
||||
// ATM Standard something-or-another (ATM Address)
|
||||
#define DNS_TYPE_ATMA 0x0022 // 34
|
||||
|
||||
// RFC 2168 (Naming Authority Pointer)
|
||||
#define DNS_TYPE_NAPTR 0x0023 // 35
|
||||
|
||||
// RFC 2230 (Key Exchanger)
|
||||
#define DNS_TYPE_KX 0x0024 // 36
|
||||
|
||||
// RFC 2538 (CERT)
|
||||
#define DNS_TYPE_CERT 0x0025 // 37
|
||||
|
||||
// A6 Draft (A6)
|
||||
#define DNS_TYPE_A6 0x0026 // 38
|
||||
|
||||
// DNAME Draft (DNAME)
|
||||
#define DNS_TYPE_DNAME 0x0027 // 39
|
||||
|
||||
// Eastlake (Kitchen Sink)
|
||||
#define DNS_TYPE_SINK 0x0028 // 40
|
||||
|
||||
// RFC 2671 (EDNS OPT)
|
||||
#define DNS_TYPE_OPT 0x0029 // 41
|
||||
|
||||
// RFC 4034 (DNSSEC DS)
|
||||
#define DNS_TYPE_DS 0x002b // 43
|
||||
|
||||
// RFC 4034 (DNSSEC RRSIG)
|
||||
#define DNS_TYPE_RRSIG 0x002e // 46
|
||||
|
||||
// RFC 4034 (DNSSEC NSEC)
|
||||
#define DNS_TYPE_NSEC 0x002f // 47
|
||||
|
||||
// RFC 4034 (DNSSEC DNSKEY)
|
||||
#define DNS_TYPE_DNSKEY 0x0030 // 48
|
||||
|
||||
// RFC 4701 (DHCID)
|
||||
#define DNS_TYPE_DHCID 0x0031 // 49
|
||||
|
||||
// RFC 5155 (DNSSEC NSEC3)
|
||||
#define DNS_TYPE_NSEC3 0x0032 // 50
|
||||
// RFC 5155 (DNSSEC NSEC3PARAM)
|
||||
#define DNS_TYPE_NSEC3PARAM 0x0033 // 51
|
||||
|
||||
//
|
||||
// IANA Reserved
|
||||
//
|
||||
|
||||
#define DNS_TYPE_UINFO 0x0064 // 100
|
||||
#define DNS_TYPE_UID 0x0065 // 101
|
||||
#define DNS_TYPE_GID 0x0066 // 102
|
||||
#define DNS_TYPE_UNSPEC 0x0067 // 103
|
||||
|
||||
//
|
||||
// Query only types (1035, 1995)
|
||||
// - Crawford (ADDRS)
|
||||
// - TKEY draft (TKEY)
|
||||
// - TSIG draft (TSIG)
|
||||
// - RFC 1995 (IXFR)
|
||||
// - RFC 1035 (AXFR up)
|
||||
//
|
||||
#define DNS_TYPE_ADDRS 0x00f8 // 248
|
||||
#define DNS_TYPE_TKEY 0x00f9 // 249
|
||||
#define DNS_TYPE_TSIG 0x00fa // 250
|
||||
#define DNS_TYPE_IXFR 0x00fb // 251
|
||||
#define DNS_TYPE_AXFR 0x00fc // 252
|
||||
#define DNS_TYPE_MAILB 0x00fd // 253
|
||||
#define DNS_TYPE_MAILA 0x00fe // 254
|
||||
#define DNS_TYPE_ALL 0x00ff // 255
|
||||
#define DNS_TYPE_ANY 0x00ff // 255
|
||||
//
|
||||
// Private use Microsoft types -- See www.iana.org/assignments/dns-parameters
|
||||
//
|
||||
#define DNS_TYPE_WINS 0xff01 // 64K - 255
|
||||
#define DNS_TYPE_WINSR 0xff02 // 64K - 254
|
||||
#define DNS_TYPE_NBSTAT (DNS_TYPE_WINSR)
|
||||
|
||||
//
|
||||
// DNS Query API
|
||||
//
|
||||
|
||||
//
|
||||
// Options for DnsQuery
|
||||
//
|
||||
|
||||
#define DNS_QUERY_STANDARD 0x00000000
|
||||
#define DNS_QUERY_ACCEPT_TRUNCATED_RESPONSE 0x00000001
|
||||
#define DNS_QUERY_USE_TCP_ONLY 0x00000002
|
||||
#define DNS_QUERY_NO_RECURSION 0x00000004
|
||||
#define DNS_QUERY_BYPASS_CACHE 0x00000008
|
||||
#define DNS_QUERY_NO_WIRE_QUERY 0x00000010
|
||||
#define DNS_QUERY_NO_LOCAL_NAME 0x00000020
|
||||
#define DNS_QUERY_NO_HOSTS_FILE 0x00000040
|
||||
#define DNS_QUERY_NO_NETBT 0x00000080
|
||||
#define DNS_QUERY_WIRE_ONLY 0x00000100
|
||||
#define DNS_QUERY_RETURN_MESSAGE 0x00000200
|
||||
#define DNS_QUERY_MULTICAST_ONLY 0x00000400
|
||||
#define DNS_QUERY_NO_MULTICAST 0x00000800
|
||||
#define DNS_QUERY_TREAT_AS_FQDN 0x00001000
|
||||
#define DNS_QUERY_ADDRCONFIG 0x00002000
|
||||
#define DNS_QUERY_DUAL_ADDR 0x00004000
|
||||
#define DNS_QUERY_DONT_RESET_TTL_VALUES 0x00100000
|
||||
#define DNS_QUERY_DISABLE_IDN_ENCODING 0x00200000
|
||||
#define DNS_QUERY_APPEND_MULTILABEL 0x00800000
|
||||
#define DNS_QUERY_DNSSEC_OK 0x01000000
|
||||
#define DNS_QUERY_DNSSEC_CHECKING_DISABLED 0x02000000
|
||||
#define DNS_QUERY_RESERVED 0xf0000000
|
||||
|
||||
|
||||
/** IPTypes.h **/
|
||||
// Definitions and structures used by getnetworkparams and getadaptersinfo apis
|
||||
|
||||
#define MAX_ADAPTER_DESCRIPTION_LENGTH 128 // arb.
|
||||
#define MAX_ADAPTER_NAME_LENGTH 256 // arb.
|
||||
#define MAX_ADAPTER_ADDRESS_LENGTH 8 // arb.
|
||||
#define DEFAULT_MINIMUM_ENTITIES 32 // arb.
|
||||
#define MAX_HOSTNAME_LEN 128 // arb.
|
||||
#define MAX_DOMAIN_NAME_LEN 128 // arb.
|
||||
#define MAX_SCOPE_ID_LEN 256 // arb.
|
||||
#define MAX_DHCPV6_DUID_LENGTH 130 // RFC 3315.
|
||||
#define MAX_DNS_SUFFIX_STRING_LENGTH 256
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user