Skip to content

Instantly share code, notes, and snippets.

@ynkdir
ynkdir / cancel_input.py
Created June 23, 2026 14:32
Cancel input() with CancelIoEx()
# Cancel input() with CancelIoEx().
#
# There is known problem: https://github.com/microsoft/terminal/issues/12143
import msvcrt
import sys
import threading
from win32more import UInt32
from win32more.Windows.Win32.Foundation import TRUE
import sys
from ctypes import sizeof
from win32more import WinError
from win32more.Windows.Win32.Foundation import CloseHandle
from win32more.Windows.Win32.System.Threading import INFINITE, WaitForSingleObject
from win32more.Windows.Win32.UI.Shell import (
SEE_MASK_NOCLOSEPROCESS,
SHELLEXECUTEINFOW,
ShellExecuteExW,
@ynkdir
ynkdir / enum_resource.py
Last active June 13, 2026 13:39
enum resource
# /// script
# dependencies = ["win32more"]
# ///
import sys
from ctypes import Structure, cast, memoryview_at, pointer, wstring_at
from win32more import WINFUNCTYPE, Char, IntPtr, UInt16, WinError
from win32more.Windows.Win32.Foundation import (
BOOL,
@ynkdir
ynkdir / icon_resource_viewer.py
Last active May 30, 2026 17:30
Icon Resource Viewer
# /// script
# dependencies = ["win32more"]
# ///
from ctypes import POINTER
from win32more import FAILED, Byte, List, UInt32, WinError
from win32more.Microsoft.UI.Xaml.Media.Imaging import WriteableBitmap
from win32more.Microsoft.Windows.Storage.Pickers import FileOpenPicker
from win32more.Windows.Win32.Graphics.Imaging import (
CLSID_WICImagingFactory,
@ynkdir
ynkdir / ntfs_casesensitive.py
Last active May 20, 2026 12:10
ntfs case sensitive
# /// script
# dependencies = ["win32more"]
# ///
#
# Ntfs preserves file names as is.
# Windows API compares them using NFC normalization and case-insensitive matching.
#
# Directory has case sensitive flag.
# With the flag enabled, the directory can contain file names that differ only by case.
# fsutil.exe file setCaseSensitiveInfo <dir>
@ynkdir
ynkdir / ucal_dst.py
Created April 18, 2026 15:09
calculate dst offset with icu api
# calculate dst offset with icu api
#
# /// script
# dependencies = ["win32more"]
# ///
from win32more import String
from win32more.Windows.Win32.Globalization import (
UCAL_DEFAULT,
UCAL_DST_OFFSET,
@ynkdir
ynkdir / dump_tz_full.json
Last active April 28, 2026 11:49
timezone implementation using Windows API
[
{
"Bias": -270,
"StandardName": "アフガニスタン標準時",
"StandardDate": {
"wYear": 0,
"wMonth": 0,
"wDayOfWeek": 0,
"wDay": 0,
"wHour": 0,
@ynkdir
ynkdir / asyncio_winui3_loop.py
Last active March 12, 2026 13:17
Connecting Asyncio and Winui3 event loops
# /// script
# dependencies = ["win32more"]
# ///
import asyncio
import heapq
import threading
from concurrent.futures import Future
from win32more.Microsoft.UI.Dispatching import DispatcherQueue
@ynkdir
ynkdir / appcontainer.py
Created December 20, 2025 03:33
"runFullTrust" and "systemAIModels" seems not supported in CreateAppContainerProfile()
# "runFullTrust" and "systemAIModels" seems not supported in CreateAppContainerProfile().
#
# > .\python.exe .\appcontainer.py
# appcontainer.py: 24996
# systemAIModels: 0
# runFullTrust: 4
# Failed to find real location of C:\Users\yukih\work\py-win32more\unapp\unapp\python.exe
# appcontainer.py: 10140
# systemAIModels: 0
# runFullTrust: 4
@ynkdir
ynkdir / calc_laf_token.py
Last active November 14, 2025 15:56
Caliculate Windows Limited Access Feature Token
# Caliculate Windows Limited Access Feature Token
# https://firefox-source-docs.mozilla.org/widget/windows/LimitedAccessFeature.html
# term:
# Limited Access Feature (laf)
# Package Family Name (pfn)
import winreg
from base64 import b64encode
from hashlib import sha256