Crate winsafe

Source
Expand description

Windows API and GUI in safe, idiomatic Rust.

CrateGitHubDocs (stable)Docs (master branch)Examples

WinSafe has:

  • low-level Win32 API constants, functions and structs;
  • high-level structs to build native Win32 GUI applications.

§Usage

Add the dependency in your Cargo.toml:

[dependencies]
winsafe = { version = "0.0.23", features = [] }

Then you must enable the Cargo features you want to be included – these modules are named after native Windows DLL and library names, mostly.

The following Cargo features are available so far:

FeatureDescription
advapiAdvapi32.dll and Ktmw32.dll, advanced kernel functions
comctlComCtl32.dll, the Common Controls
dshowDirectShow
dwmDesktop Window Manager
dxgiDirectX Graphics Infrastructure
gdiGdi32.dll, the Windows GDI
guiThe WinSafe high-level GUI abstractions
kernelKernel32.dll, basic kernel functions
mfMedia Foundation
oleBasic OLE/COM support
oleautOLE Automation
psapiProcess Status API
raw-dylibEnables raw-dylib linking
shellShell32.dll, Shlwapi.dll, and Userenv.dll, the COM-based Windows Shell
taskschdTask Scheduler
userUser32.dll and ComDlg32.dll, the basic Windows GUI support
uxthemeUxTheme.dll, extended window theming
versionVersion.dll, to manipulate *.exe version info
winspoolPrint Spooler API

You can visualize the complete dependency graph here.

If you’re looking for a comprehensive Win32 coverage, take a look at winapi or windows crates, which are unsafe, but have everything.

§The GUI API

WinSafe features idiomatic bindings for the Win32 API, but on top of that, it features a set of high-level GUI structs, which scaffolds the boilerplate needed to build native Win32 GUI applications, event-oriented. Unless you’re doing something really specific, these high-level wrappers are highly recommended – you’ll usually start with the WindowMain.

One of the greatest strenghts of the GUI API is supporting the use of resource files, which can be created with a WYSIWYG resource editor.

GUI structs can be found in module gui.

§Native function calls

The best way to understand the idea behind WinSafe bindings is comparing them to the correspondent C code.

For example, take the following C code:

HWND hwnd = GetDesktopWindow();
SetFocus(hwnd);

This is equivalent to:

use winsafe::{prelude::*, HWND};

let hwnd = HWND::GetDesktopWindow();
hwnd.SetFocus();

Note how GetDesktopWindow is a static method of HWND, and SetFocus is an instance method called directly upon hwnd. All native handles (HWND, HDC, HINSTANCE, etc.) are structs, thus:

  • native Win32 functions that return a handle are static methods in WinSafe;
  • native Win32 functions whose first parameter is a handle are instance methods.

Now this C code:

PostQuitMessage(0);

Is equivalent to:

use winsafe::PostQuitMessage;

PostQuitMessage(0);

Since PostQuitMessage is a free function, it’s simply at the root of the crate.

Also note that some functions which require a cleanup routine – like BeginPaint, for example – will return the resource wrapped in a guard, which will perform the cleanup automatically. You’ll never have to manually call EndPaint.

Sending messages are a special case, see the msg module.

§Native constants

All native Win32 constants can be found in the co module. They’re all typed, what means that different constant types cannot be mixed (unless you explicitly say so).

Technically, each constant type is simply a newtype with a couple implementations, including those allowing bitflag operations. Also, all constant values can be converted to its underlying integer type.

The name of the constant type is often its prefix. For example, constants of MessageBox function, like MB_OKCANCEL, belong to a type called MB.

For example, take the following C code:

let hwnd = GetDesktopWindow();
MessageBox(hwnd, "Hello, world", "My hello", MB_OKCANCEL | MB_ICONINFORMATION);

This is equivalent to:

use winsafe::{prelude::*, co::MB, HWND};

let hwnd = HWND::GetDesktopWindow();
hwnd.MessageBox("Hello, world", "Title", MB::OKCANCEL | MB::ICONINFORMATION)?;

The method MessageBox, like most functions that can return errors, will return SysResult, which can contain an ERROR constant.

§Native structs

WinSafe implements native Win32 structs in a very restricted way. First off, fields which control the size of the struct – often named cbSize – are private and automatically set when the struct is instantiated.

Pointer fields are also private, and they can be set and retrieved only through getter and setter methods. In particular, when setting a string pointer field, you need to pass a reference to a WString buffer, which will keep the actual string contents.

For example, the following C code:

WNDCLASSEX wcx = {0};
wcx.cbSize = sizeof(WNDCLASSEX);
wcx.lpszClassName = "MY_WINDOW";

if (RegisterClassEx(&wcx) == 0) {
    DWORD err = GetLastError();
    // handle error...
}

Is equivalent to:

use winsafe::{RegisterClassEx, WNDCLASSEX, WString};

let mut wcx = WNDCLASSEX::default();

let mut buf = WString::from_str("MY_WINDOW");
wcx.set_lpszClassName(Some(&mut buf));

if let Err(err) = RegisterClassEx(&wcx) {
    // handle error...
}

Note how you don’t need to call GetLastError to retrieve the error code: it’s returned by the method itself in the SysResult.

§Text encoding

Windows natively uses Unicode UTF-16.

WinSafe uses Unicode UTF-16 internally but exposes idiomatic UTF-8, performing conversions automatically when needed, so you don’t have to worry about OsString or any low-level conversion.

However, there are cases where a string conversion is still needed, like when dealing with native Win32 structs. In such cases, you can use the WString struct, which is also capable of working as a buffer to receive text from Win32 calls.

§Errors and result aliases

WinSafe declares a few Result aliases which are returned by its functions and methods:

AliasErrorUsed for
SysResultERRORStandard system errors.
HrResultHRESULTCOM errors.
AnyResultBox<dyn Error + Send + Sync>Holding different error types. All other Result aliases can be converted into it.

§Utilities

Beyond the GUI API, WinSafe features a few high-level abstractions to deal with some particularly complex Win32 topics. Unless you need something specific, prefer using these over the raw, native calls:

UtilityUsed for
EncodingString encodings.
FileFile read/write and other operations.
FileMappedMemory-mapped file operations.
pathFile path operations.
WStringManaging native wide strings.

Modules§

cokernel
Native constants.
guardkernel
RAII implementation for various resources, which automatically perform cleanup routines when the object goes out of scope.
guigui
High-level GUI abstractions for user windows and native controls. They can be created programmatically or by loading resources from a .res file. These files can be created with a WYSIWYG resource editor.
msguser
Parameters of window messages.
pathkernel
File path utilities.
preludekernel
The WinSafe prelude.

Macros§

bindgui
Binds a function to an event which has no parameters.
bind_iggui
Binds, to an event closure, a function ignoring the event parameter.
bind_pgui
Binds, to an event closure, a function receiving the event parameter.
seq_idsuser
Generates sequential u16 constants starting from the given value.

Structs§

ACCELuser
ACCEL struct.
ACLkernel
ACL struct.
ADDJOB_INFO_1winspool
ADDJOB_INFO_1 struct.
ALTTABINFOuser
ALTTABINFO struct.
AM_MEDIA_TYPEdshow
AM_MEDIA_TYPE struct.
ATOMuser
ATOM returned by RegisterClassEx.
BITMAPgdi
BITMAP struct.
BITMAPFILEHEADERgdi
BITMAPFILEHEADER struct.
BITMAPINFOgdi
BITMAPINFO struct.
BITMAPINFOHEADERgdi
BITMAPINFOHEADER struct.
BLENDFUNCTIONuser
BLENDFUNCTION struct.
BSTRoleaut
A string data type used with COM automation.
BUTTON_IMAGELISTcomctl
BUTTON_IMAGELIST struct.
BUTTON_SPLITINFOcomctl
BUTTON_SPLITINFO struct.
BY_HANDLE_FILE_INFORMATIONkernel
BY_HANDLE_FILE_INFORMATION struct.
CHOOSECOLORuser
CHOOSECOLOR struct.
CLAIM_SECURITY_ATTRIBUTES_INFORMATIONadvapi
CLAIM_SECURITY_ATTRIBUTES_INFORMATION struct.
CLAIM_SECURITY_ATTRIBUTE_FQBN_VALUEkernel
CLAIM_SECURITY_ATTRIBUTE_FQBN_VALUE struct.
CLAIM_SECURITY_ATTRIBUTE_OCTET_STRING_VALUEkernel
CLAIM_SECURITY_ATTRIBUTE_OCTET_STRING_VALUE struct.
CLAIM_SECURITY_ATTRIBUTE_V1kernel
CLAIM_SECURITY_ATTRIBUTE_V1 struct.
COAUTHIDENTITYole
COAUTHIDENTITY struct.
COAUTHINFOole
COAUTHINFO struct.
COLORREFuser
COLORREF struct.
COLORSCHEMEcomctl
COLORSCHEME struct.
COMBOBOXINFOuser
COMBOBOXINFO struct.
COMDLG_FILTERSPECshell
COMDLG_FILTERSPEC struct.
COMPAREITEMSTRUCTuser
COMPAREITEMSTRUCT struct.
CONSOLE_READCONSOLE_CONTROLkernel
CONSOLE_READCONSOLE_CONTROL struct.
COSERVERINFOole
COSERVERINFO struct.
CREATESTRUCTuser
CREATESTRUCT struct.
CURSORINFOuser
CURSORINFO struct.
DATETIMEPICKERINFOcomctl
DATETIMEPICKERINFO struct.
DELETEITEMSTRUCTuser
DELETEITEMSTRUCT struct.
DEVMODEuser
DEVMODE struct.
DEV_BROADCAST_DEVICEINTERFACEadvapi
DEV_BROADCAST_DEVICEINTERFACE struct.
DEV_BROADCAST_HANDLEadvapi
DEV_BROADCAST_HANDLE struct.
DEV_BROADCAST_HDRkernel
DEV_BROADCAST_HDR struct.
DEV_BROADCAST_OEMadvapi
DEV_BROADCAST_OEM struct.
DEV_BROADCAST_PORTadvapi
DEV_BROADCAST_PORT struct.
DEV_BROADCAST_VOLUMEadvapi
DEV_BROADCAST_VOLUME struct.
DISK_SPACE_INFORMATIONkernel
DISK_SPACE_INFORMATION struct.
DISPLAY_DEVICEuser
DISPLAY_DEVICE struct.
DISPPARAMSoleaut
DISPPARAMS struct.
DLGITEMTEMPLATEuser
DLGITEMTEMPLATE struct.
DLGTEMPLATEuser
DLGTEMPLATE struct.
DRAWITEMSTRUCTuser
DRAWITEMSTRUCT struct.
DRAWTEXTPARAMSuser
DRAWTEXTPARAMS struct.
DVINFOdshow
DVINFO struct.
DVTARGETDEVICEole
DVTARGETDEVICE struct.
DXGI_ADAPTER_DESCdxgi
DXGI_ADAPTER_DESC struct.
DXGI_ADAPTER_DESC1dxgi
DXGI_ADAPTER_DESC1 struct.
DXGI_ADAPTER_DESC2dxgi
DXGI_ADAPTER_DESC2 struct.
DXGI_FRAME_STATISTICSdxgi
DXGI_FRAME_STATISTICS struct.
DXGI_GAMMA_CONTROLdxgi
DXGI_GAMMA_CONTROL struct.
DXGI_GAMMA_CONTROL_CAPABILITIESdxgi
DXGI_GAMMA_CONTROL_CAPABILITIES struct.
DXGI_MAPPED_RECTdxgi
DXGI_MAPPED_RECT struct.
DXGI_MODE_DESCdxgi
DXGI_MODE_DESC struct.
DXGI_OUTPUT_DESCdxgi
DXGI_OUTPUT_DESC struct.
DXGI_RATIONALdxgi
DXGI_RATIONAL struct.
DXGI_RGBdxgi
DXGI_RGB struct.
DXGI_SAMPLE_DESCdxgi
DXGI_SAMPLE_DESC struct.
DXGI_SHARED_RESOURCEdxgi
DXGI_SHARED_RESOURCE struct.
DXGI_SURFACE_DESCdxgi
DXGI_SURFACE_DESC struct.
DXGI_SWAP_CHAIN_DESCdxgi
DXGI_SWAP_CHAIN_DESC struct.
EDITBALLOONTIPcomctl
EDITBALLOONTIP struct.
EXCEPINFOoleaut
EXCEPINFO struct.
FILETIMEkernel
FILETIME struct.
FILTER_INFOdshow
FILTER_INFO struct.
FLASHWINFOuser
FLASHWINFO struct.
FORMATETCole
FORMATETC struct.
FORM_INFO_1winspool
FORM_INFO_1 struct.
FORM_INFO_2winspool
FORM_INFO_2 struct.
Filekernel
Manages an HFILE handle, which provides file read/write and other operations. It is closed automatically when the object goes out of scope.
FileMappedkernel
Manages an HFILEMAP handle, which provides memory-mapped file operations, including read/write through slices. It is closed automatically when the object goes out of scope.
GUIDkernel
GUID struct.
GUITHREADINFOuser
GUITHREADINFO struct.
HACCELuser
Handle to an accelerator table.
HACCESSTOKENadvapi
Handle to an access token. Originally just a HANDLE.
HARDWAREINPUTuser
HARDWAREINPUT struct.
HBITMAPuser
Handle to a bitmap.
HBRUSHuser
Handle to a brush.
HCLIPBOARDuser
Handle to the clipboard.
HCURSORuser
Handle to a cursor.
HDCuser
Handle to a device context.
HDESKuser
Handle to a desktop.
HDHITTESTINFOcomctl
HDHITTESTINFO struct.
HDITEMcomctl
HDITEM struct.
HDLAYOUTcomctl
HDLAYOUT struct.
HDROPshell
Handle to an internal drop structure.
HDWPuser
Handle to a deferred window position.
HEAPLIST32kernel
HEAPLIST32 struct.
HELPINFOuser
HELPINFO struct.
HENHMETAFILEole
Handle to an enhanced metafile.
HEVENTkernel
Handle to a named or unnamed event object. Originally just a HANDLE.
HEVENTLOGadvapi
Handle to an event log. Originally just a HANDLE.
HFILEkernel
Handle to a file. Originally just a HANDLE.
HFILEMAPkernel
Handle to a file mapping. Originally just a HANDLE.
HFILEMAPVIEWkernel
Address of a mapped view. Originally just an LPVOID.
HFINDFILEkernel
Handle to a file search. Originally just a HANDLE.
HFONTgdi
Handle to a font.
HGLOBALkernel
Handle to a global memory block. Originally just a HANDLE.
HHEAPkernel
Handle to a heap object. Originally just a HANDLE.
HHOOKuser
Handle to a hook.
HICONuser
Handle to an icon.
HIMAGELISTcomctl
Handle to an image list.
HINSTANCEkernel
Handle to an instance, same as HMODULE.
HKEYadvapi
Handle to a registry key.
HLOCALkernel
Handle to a local memory block.
HMENUuser
Handle to a menu.
HMETAFILEPICTole
Handle to a metafile.
HMONITORuser
Handle to a display monitor.
HPALETTEuser
Handle to a palette.
HPENgdi
Handle to a pen GDI object.
HPIPEkernel
Handle to an anonymous pipe. Originally just a HANDLE.
HPRINTERwinspool
Handle to a printer. Originally just a HANDLE.
HPROCESSkernel
Handle to a process. Originally just a HANDLE.
HPROCESSLISTkernel
Handle to a process list snapshot. Originally just a HANDLE.
HPROPSHEETPAGEcomctl
Handle to a property sheet page.
HRGNuser
Handle to a region GDI object.
HRSRCkernel
Handle to a resource. Originally just a HANDLE.
HRSRCMEMkernel
Handle to a resource memory block. Originally just an HGLOBAL.
HSCadvapi
Handle to a Service Control Manager. Originally SC_HANDLE.
HSERVICEadvapi
Handle to a service. Originally SC_HANDLE.
HSERVICESTATUSadvapi
Handle to a service status. Originally SERVICE_STATUS_HANDLE.
HSTDkernel
Handle to a standard device. Originally just a HANDLE.
HTHEMEuxtheme
Handle to a theme.
HTHREADkernel
Handle to a thread. Originally just a HANDLE.
HTRANSACTIONadvapi
Handle to a transaction. Originally just a HANDLE.
HTREEITEMcomctl
Handle to a tree view item.
HUPDATERSRCkernel
Handle to an updateable resource. Originally just a HANDLE.
HVERSIONINFOversion
Handle to a version info block.
HWNDuser
Handle to a window.
IActiontaskschd
IAction COM interface.
IActionCollectiontaskschd
IActionCollection COM interface.
IAdviseSinkole
IAdviseSink COM interface.
IBaseFilterdshow
IBaseFilter COM interface.
IBindCtxole
IBindCtx COM interface.
IBootTriggertaskschd
IBootTrigger COM interface.
ICONINFOuser
ICONINFO struct.
ICONINFOEXuser
ICONINFOEX struct.
IComHandlerActiontaskschd
IComHandlerAction COM interface.
IDXGIAdapterdxgi
IDXGIAdapter COM interface.
IDXGIAdapter1dxgi
IDXGIAdapter1 COM interface.
IDXGIAdapter2dxgi
IDXGIAdapter2 COM interface.
IDXGIDevicedxgi
IDXGIDevice COM interface.
IDXGIDeviceSubObjectdxgi
IDXGIDeviceSubObject COM interface.
IDXGIFactorydxgi
IDXGIFactory COM interface.
IDXGIFactory1dxgi
IDXGIFactory1 COM interface.
IDXGIKeyedMutexdxgi
IDXGIKeyedMutex COM interface.
IDXGIObjectdxgi
IDXGIObject COM interface.
IDXGIOutputdxgi
IDXGIOutput COM interface.
IDXGIResourcedxgi
IDXGIResource COM interface.
IDXGISurfacedxgi
IDXGISurface COM interface.
IDXGISwapChaindxgi
IDXGISwapChain COM interface.
IDailyTriggertaskschd
IDailyTrigger COM interface.
IDataObjectole
IDataObject COM interface.
IDispatcholeaut
IDispatch COM interface.
IDropTargetole
IDropTarget COM interface.
IEmailActiontaskschd
IEmailAction COM interface.
IEnumFiltersdshow
IEnumFilters COM interface.
IEnumMediaTypesdshow
IEnumMediaTypes COM interface.
IEnumPinsdshow
IEnumPins COM interface.
IEnumShellItemsshell
IEnumShellItems COM interface.
IEventTriggertaskschd
IEventTrigger COM interface.
IExecActiontaskschd
IExecAction COM interface.
IFileDialogshell
IFileDialog COM interface.
IFileDialogEventsshell
IFileDialogEvents COM interface.
IFileOpenDialogshell
IFileOpenDialog COM interface.
IFileOperationshell
IFileOperation COM interface.
IFileOperationProgressSinkshell
IFileOperationProgressSink COM interface.
IFileSaveDialogshell
IFileSaveDialog COM interface.
IFileSinkFilterdshow
IFileSinkFilter COM interface.
IFilterGraphdshow
IFilterGraph COM interface.
IFilterGraph2dshow
IFilterGraph2 COM interface.
IGraphBuilderdshow
IGraphBuilder COM interface.
IIdleTriggertaskschd
IIdleTrigger COM interface.
ILogonTriggertaskschd
ILogonTrigger COM interface.
IMAGELISTDRAWPARAMScomctl and gdi
IMAGELISTDRAWPARAMS struct.
IMFAsyncCallbackmf
IMFAsyncCallback COM interface.
IMFAsyncResultmf
IMFAsyncResult COM interface.
IMFAttributesmf
IMFAttributes COM interface.
IMFByteStreammf
IIMFByteStream COM interface.
IMFClockmf
IMFClock COM interface.
IMFCollectionmf
IMFCollection COM interface.
IMFGetServicemf
IMFGetService COM interface.
IMFMediaEventmf
IMFMediaEvent COM interface.
IMFMediaEventGeneratormf
IMFMediaEventGenerator COM interface.
IMFMediaSessionmf
IMFMediaSession COM interface.
IMFMediaSourcemf
IMFMediaSource COM interface.
IMFMediaTypeHandlermf
IMFMediaTypeHandler COM interface.
IMFPresentationDescriptormf
IMFPresentationDescriptor COM interface.
IMFSourceResolvermf
IMFSourceResolver COM interface.
IMFStreamDescriptormf
IMFStreamDescriptor COM interface.
IMFTopologymf
IMFTopology COM interface.
IMFTopologyNodemf
IMFTopologyNode COM interface.
IMFVideoDisplayControlmf
IMFVideoDisplayControl COM interface.
IMediaControldshow
IMediaControl COM interface.
IMediaFilterdshow
IMediaFilter COM interface.
IMediaSeekingdshow
IMediaSeeking COM interface.
IModalWindowshell
IModalWindow COM interface.
IMonikerole
IMoniker COM interface.
INITCOMMONCONTROLSEXcomctl
INITCOMMONCONTROLSEX struct
INPUTuser
INPUT struct.
IPersistole
IPersist COM interface.
IPersistFileole
IPersistFile COM interface.
IPersistStreamole
IPersistStream COM interface.
IPictureole
IPicture COM interface.
IPindshow
IPin COM interface.
IPropertyStoreoleaut
IPropertyStore COM interface.
IRegisteredTasktaskschd
IRegisteredTask COM interface.
IRegistrationInfotaskschd
IRegistrationInfo COM interface.
ISequentialStreamole
ISequentialStream COM interface.
IShellItemshell
IShellItem COM interface.
IShellItem2shell
IShellItem2 COM interface.
IShellItemArrayshell
IShellItemArray COM interface.
IShellLinkshell
IShellLink COM interface.
IStorageole
IStorage COM interface.
IStreamole
IStream COM interface.
ITEMIDLISTshell
ITEMIDLIST struct.
ITaskDefinitiontaskschd
ITaskDefinition COM interface.
ITaskFoldertaskschd
ITaskFolder COM interface.
ITaskServicetaskschd
ITaskService COM interface.
ITaskbarListshell
ITaskbarList COM interface.
ITaskbarList2shell
ITaskbarList2 COM interface.
ITaskbarList3shell
ITaskbarList3 COM interface.
ITaskbarList4shell
ITaskbarList4 COM interface.
ITriggertaskschd
ITrigger COM interface.
ITriggerCollectiontaskschd
ITriggerCollection COM interface.
ITypeInfooleaut
ITypeInfo COM interface.
IUnknownole
IUnknown COM interface. It’s the base to all COM interfaces.
KEYBDINPUTuser
KEYBDINPUT struct.
LANGIDkernel
LANGID language identifier.
LASTINPUTINFOuser
LASTINPUTINFO struct.
LCIDkernel
LCID locale identifier.
LITEMcomctl
LITEM struct.
LOGBRUSHgdi
LOGBRUSH struct.
LOGFONTgdi
LOGFONT struct.
LOGPALETTEgdi
LOGPALETTE struct.
LOGPENgdi
LOGPEN struct.
LUIDkernel
LUID identifier.
LUID_AND_ATTRIBUTESadvapi
LUID_AND_ATTRIBUTES struct.
LVBKIMAGEcomctl
LVBKIMAGE struct.
LVCOLUMNcomctl
LVCOLUMN struct.
LVFINDINFOcomctl
LVFINDINFO struct.
LVFOOTERINFOcomctl
LVFOOTERINFO struct.
LVFOOTERITEMcomctl
LVFOOTERITEM struct.
LVGROUPcomctl
LVGROUP struct.
LVGROUPMETRICScomctl
LVGROUPMETRICS struct.
LVHITTESTINFOcomctl
LVHITTESTINFO struct.
LVINSERTGROUPSORTEDcomctl
LVINSERTGROUPSORTED struct.
LVINSERTMARKcomctl
LVINSERTMARK struct.
LVITEMcomctl
LVITEM struct.
LVITEMINDEXcomctl
LVITEMINDEX struct.
LVSETINFOTIPcomctl
LVSETINFOTIP struct.
LVTILEINFOcomctl
LVTILEINFO struct.
LVTILEVIEWINFOcomctl
LVTILEVIEWINFO struct.
MARGINSuxtheme
MARGINS struct.
MCGRIDINFOcomctl
MCGRIDINFO struct.
MCHITTESTINFOcomctl
MCHITTESTINFO struct.
MEMORYSTATUSEXkernel
MEMORYSTATUSEX struct.
MENUBARINFOuser
MENUBARINFO struct.
MENUINFOuser
MENUINFO struct.
MENUITEMINFOuser
MENUITEMINFO struct.
MFCLOCK_PROPERTIESmf
MFCLOCK_PROPERTIES struct.
MFVideoNormalizedRectmf
MFVideoNormalizedRect struct.
MINMAXINFOuser
MINMAXINFO struct.
MODULEENTRY32kernel
MODULEENTRY32 struct.
MONITORINFOEXuser
MONITORINFOEX struct.
MONTHDAYSTATEcomctl
MONTHDAYSTATE struct.
MOUSEINPUTuser
MOUSEINPUT struct.
MSGuser
MSG struct.
NCCALCSIZE_PARAMSuser
NCCALCSIZE_PARAMS struct.
NMBCDROPDOWNcomctl
NMBCDROPDOWN struct.
NMBCHOTITEMcomctl
NMBCHOTITEM struct.
NMCHARcomctl
NMCHAR struct.
NMCUSTOMDRAWcomctl
NMCUSTOMDRAW struct.
NMDATETIMECHANGEcomctl
NMDATETIMECHANGE struct.
NMDATETIMEFORMATcomctl
NMDATETIMEFORMAT struct.
NMDATETIMEFORMATQUERYcomctl
NMDATETIMEFORMATQUERY struct.
NMDATETIMESTRINGcomctl
NMDATETIMESTRING struct.
NMDATETIMEWMKEYDOWNcomctl
NMDATETIMEWMKEYDOWN struct.
NMDAYSTATEcomctl
NMDAYSTATE struct.
NMHDDISPINFOcomctl
NMHDDISPINFO struct.
NMHDFILTERBTNCLICKcomctl
NMHDFILTERBTNCLICK struct.
NMHDRcomctl
NMHDR struct.
NMHEADERcomctl
NMHEADER struct.
NMIPADDRESScomctl
NMIPADDRESS struct.
NMITEMACTIVATEcomctl
NMITEMACTIVATE struct.
NMLINKcomctl
NMLINK struct.
NMLISTVIEWcomctl
NMLISTVIEW struct.
NMLVCACHEHINTcomctl
NMLVCACHEHINT struct.
NMLVCUSTOMDRAWcomctl
NMLVCUSTOMDRAW struct.
NMLVDISPINFOcomctl
NMLVDISPINFO struct.
NMLVEMPTYMARKUPcomctl
NMLVEMPTYMARKUP struct.
NMLVFINDITEMcomctl
NMLVFINDITEM struct.
NMLVGETINFOTIPcomctl
NMLVGETINFOTIP struct.
NMLVKEYDOWNcomctl
NMLVKEYDOWN struct.
NMLVLINKcomctl
NMLVLINK struct.
NMLVODSTATECHANGEcomctl
NMLVODSTATECHANGE struct.
NMLVSCROLLcomctl
NMLVSCROLL struct.
NMMOUSEcomctl
NMMOUSE struct.
NMOBJECTNOTIFYcomctl
NMOBJECTNOTIFY struct.
NMSELCHANGEcomctl
NMSELCHANGE struct.
NMTCKEYDOWNcomctl
NMTCKEYDOWN struct.
NMTRBTHUMBPOSCHANGINGcomctl
NMTRBTHUMBPOSCHANGING struct.
NMTREEVIEWcomctl
NMTREEVIEW struct.
NMTVASYNCDRAWcomctl and gdi
NMTVASYNCDRAW struct.
NMTVCUSTOMDRAWcomctl
NMTVCUSTOMDRAW stuct.
NMTVITEMCHANGEcomctl
NMTVITEMCHANGE struct.
NMUPDOWNcomctl
NMUPDOWN struct.
NMVIEWCHANGEcomctl
NMVIEWCHANGE struct.
NONCLIENTMETRICSgdi
NONCLIENTMETRICS struct.
NOTIFYICONDATAshell
NOTIFYICONDATA struct.
NmhdrCodecomctl
Notification code returned in NMHDR struct. This code is convertible to/from the specific common control notification codes – LVN, TVN, etc.
OSVERSIONINFOEXkernel
OSVERSIONINFOEX struct.
OVERLAPPEDkernel
OVERLAPPED struct.
PAINTSTRUCTuser
PAINTSTRUCT struct.
PALETTEENTRYgdi
PALETTEENTRY struct.
PBRANGEcomctl
PBRANGE struct.
PIDLshell
PIDL struct.
PIN_INFOdshow
PIN_INFO struct.
POINTuser
POINT struct.
POWERBROADCAST_SETTINGkernel
POWERBROADCAST_SETTING struct.
PRINTER_CONNECTION_INFO_1winspool
PRINTER_CONNECTION_INFO_1 struct.
PRINTER_DEFAULTSwinspool
PRINTER_DEFAULTS struct.
PRINTER_INFO_2winspool
PRINTER_INFO_2 struct.
PRINTER_INFO_3winspool
PRINTER_INFO_3 struct.
PRINTER_INFO_4winspool
PRINTER_INFO_4 struct.
PRINTER_OPTIONSwinspool
PRINTER_OPTIONS struct.
PROCESSENTRY32kernel
PROCESSENTRY32 struct.
PROCESSOR_NUMBERkernel
PROCESSOR_NUMBER struct.
PROCESS_HEAP_ENTRYkernel
PROCESS_HEAP_ENTRY struct.
PROCESS_HEAP_ENTRY_Blockkernel
PROCESS_HEAP_ENTRY Block.
PROCESS_HEAP_ENTRY_Regionkernel
PROCESS_HEAP_ENTRY Region.
PROCESS_INFORMATIONkernel
PROCESS_INFORMATION struct.
PROCESS_MEMORY_COUNTERS_EXpsapi
PROCESS_MEMORY_COUNTERS_EX struct.
PROPERTYKEYoleaut
PROPERTYKEY struct.
PROPSHEETHEADERcomctl
PROPSHEETHEADER struct.
PROPSHEETPAGEcomctl
PROPSHEETPAGE struct.
PROPVARIANToleaut
PROPVARIANT struct.
RECTuser
RECT struct.
RGBQUADgdi
RGBQUAD struct.
SCROLLINFOuser
SCROLLINFO struct.
SECURITY_ATTRIBUTESkernel
SECURITY_ATTRIBUTES struct.
SECURITY_DESCRIPTORkernel
SECURITY_DESCRIPTOR struct.
SERVICE_STATUSadvapi
SERVICE_STATUS struct.
SERVICE_TIMECHANGE_INFOadvapi
SERVICE_TIMECHANGE_INFO struct.
SHELLEXECUTEINFOadvapi and shell
SHELLEXECUTEINFO struct.
SHFILEINFOshell
SHFILEINFO struct.
SHFILEOPSTRUCTshell
SHFILEOPSTRUCT struct.
SHITEMIDshell
SHITEMID struct.
SHSTOCKICONINFOshell
SHSTOCKICONINFO struct.
SIDadvapi
SID struct.
SID_AND_ATTRIBUTESadvapi
SID_AND_ATTRIBUTES struct.
SID_AND_ATTRIBUTES_HASHadvapi
SID_AND_ATTRIBUTES_HASH struct.
SID_IDENTIFIER_AUTHORITYadvapi
SID_IDENTIFIER_AUTHORITY struct.
SIZEuser
SIZE struct.
SNBole
SNB struct.
STARTUPINFOkernel
STARTUPINFO struct.
STGMEDIUMole
STGMEDIUM struct.
STYLESTRUCTuser
STYLESTRUCT struct.
SYSTEMTIMEkernel
SYSTEMTIME struct.
SYSTEM_INFOkernel
SYSTEM_INFO struct.
TASKDIALOGCONFIGcomctl
TASKDIALOGCONFIG struct.
TBADDBITMAPcomctl
TBADDBITMAP struct.
TBBUTTONcomctl
TBBUTTON struct.
TBBUTTONINFOcomctl
TBBUTTONINFO struct.
TBINSERTMARKcomctl
TBINSERTMARK struct.
TBMETRICScomctl
TBMETRICS struct.
TBREPLACEBITMAPcomctl
TBREPLACEBITMAP struct.
TBSAVEPARAMSadvapi and comctl
TBSAVEPARAMS struct.
TCHITTESTINFOcomctl
TCHITTESTINFO struct.
TCITEMcomctl
TCITEM struct.
TEXTMETRICgdi
TEXTMETRIC struct.
THREADENTRY32kernel
THREADENTRY32 struct.
TIME_ZONE_INFORMATIONkernel
TIME_ZONE_INFORMATION struct.
TITLEBARINFOEXuser
TITLEBARINFOEX struct.
TOKEN_ACCESS_INFORMATIONadvapi
TOKEN_ACCESS_INFORMATION struct.
TOKEN_APPCONTAINER_INFORMATIONadvapi
TOKEN_APPCONTAINER_INFORMATION struct.
TOKEN_DEFAULT_DACLadvapi
TOKEN_DEFAULT_DACL struct.
TOKEN_ELEVATIONadvapi
TOKEN_ELEVATION struct.
TOKEN_GROUPSadvapi
TOKEN_GROUPS struct.
TOKEN_GROUPS_AND_PRIVILEGESadvapi
TOKEN_GROUPS_AND_PRIVILEGES struct.
TOKEN_LINKED_TOKENadvapi
TOKEN_LINKED_TOKEN struct.
TOKEN_MANDATORY_LABELadvapi
TOKEN_MANDATORY_LABEL struct.
TOKEN_MANDATORY_POLICYadvapi
TOKEN_MANDATORY_POLICY struct.
TOKEN_ORIGINadvapi
TOKEN_ORIGIN struct.
TOKEN_OWNERadvapi
TOKEN_OWNER struct.
TOKEN_PRIMARY_GROUPadvapi
TOKEN_PRIMARY_GROUP struct.
TOKEN_PRIVILEGESadvapi
TOKEN_PRIVILEGES struct.
TOKEN_SOURCEadvapi
TOKEN_SOURCE struct.
TOKEN_STATISTICSadvapi
TOKEN_STATISTICS struct.
TOKEN_USERadvapi
TOKEN_USER struct.
TRACKMOUSEEVENTuser
TRACKMOUSEEVENT struct.
TVHITTESTINFOcomctl
TVHITTESTINFO struct.
TVINSERTSTRUCTcomctl
TVINSERTSTRUCT struct.
TVITEMcomctl
TVITEM struct.
TVITEMEXcomctl
TVITEMEX struct.
TVSORTCBcomctl
TVSORTCB struct.
UDACCELcomctl
UDACCEL struct.
VALENTadvapi
VALENT struct.
VARIANToleaut
VARIANT struct.
VS_FIXEDFILEINFOversion
VS_FIXEDFILEINFO struct.
WIN32_FILE_ATTRIBUTE_DATAkernel
WIN32_FILE_ATTRIBUTE_DATA struct.
WIN32_FIND_DATAkernel
WIN32_FIND_DATA struct.
WINDOWINFOuser
WINDOWINFO struct.
WINDOWPLACEMENTuser
WINDOWPLACEMENT struct.
WINDOWPOSuser
WINDOWPOS struct.
WNDCLASSEXuser
WNDCLASSEX struct.
WStringkernel
Stores a [u16] buffer for a null-terminated Unicode UTF-16 wide string natively used by Windows.
WTSSESSION_NOTIFICATIONadvapi
WTSSESSION_NOTIFICATION struct.

Enums§

AccelMenuCtrluser
Variant parameter for:
AddrStrkernel
Variable parameter for:
AtomStruser
Variant parameter for:
BmpIconuser
Variant parameter for:
BmpIconCurMetacomctl
Variant parameter for:
BmpIdbRescomctl
Variant parameter for:
BmpInstIdcomctl
Variant parameter for:
BmpPtrStruser
Variant parameter for:
ClaimSecurityAttrkernel
Variable parameter for:
ClrDefNonecomctl
Variant parameter for:
CurObjgdi
Variant parameter for:
DisabPrivadvapi
Variable parameter for:
DispfNupuser
Variant parameter for:
Encodingkernel
String encodings.
FileAccesskernel
Access types for File::open and FileMapped::open.
GmidxEnumuser
Variant parameter for:
HwKbMouseuser
Variant parameter for:
HwndFocususer
Variant parameter for:
HwndHmenuuser
Variant parameter for:
HwndPlaceuser
Variant parameter for:
HwndPointIduser
Variant parameter for:
IcoMonshell
Variable parameter for:
IconIdcomctl
Variant parameter for:
IconIdTdcomctl
Variant parameter for:
IconRescomctl
Variant parameter for:
IdIdcStruser
Variant parameter for:
IdIdiStruser
Variant parameter for:
IdMenuuser
Variant parameter used in menu methods:
IdObmStrgdi
Variant parameter for:
IdOcrStrgdi
Variant parameter for:
IdOicStrgdi
Variant parameter for:
IdPosuser
Variant parameter for:
IdStrkernel
A resource identifier.
IdxCbNonecomctl
Variant type for:
IdxStrcomctl
Variant parameter for:
MenuItemuser
Variant parameter for:
MenuItemInfouser
Variant parameter for:
NccspRectuser
Variant parameter for:
PowerSettingkernel
Variant parameter for:
PowerSettingAwayModekernel
Variant parameter for:
PowerSettingLidkernel
Variant parameter for:
PropVariantoleaut
High-level representation of the PROPVARIANT struct, which is automatically converted into its low-level representation when needed.
PtIdxcomctl
Variant parameter for:
PtsRcuser
Variant parameter for:
RegistryValueadvapi
Registry value types.
ResStrscomctl
Variant parameter for:
RtStrkernel
A predefined resource identifier.
SuccessTimeoutuser
Variant parameter for:
SvcCtladvapi
Notification content for HSERVICESTATUS::RegisterServiceCtrlHandlerEx callback, describing co::SERVICE_CONTROL.
SvcCtlDeviceEventadvapi
Notification content for SvcCtl.
SvcCtlPowerEventadvapi
Notification content for SvcCtl.
Tdncomctl
Variant parameter for:
TokenInfoadvapi
Variant parameter for:
TreeitemTvicomctl
Variant parameter for:
Variantoleaut
High-level representation of the VARIANT struct, which is automatically converted into its low-level representation when needed.

Functions§

AddPortwinspool
AddPort function.
AddPrinterConnectionwinspool
AddPrinterConnection function.
AdjustWindowRectExuser
AdjustWindowRectEx function.
AdjustWindowRectExForDpiuser
AdjustWindowRectExForDpi function.
AllocateAndInitializeSidadvapi
AllocateAndInitializeSid function.
AllowSetForegroundWindowuser
AllowSetForegroundWindow function
AnyPopupuser
AnyPopup function.
AttachThreadInputuser
AttachThreadInput function.
BlockInputuser
BlockInput function.
BroadcastSystemMessageuser
BroadcastSystemMessage function.
CLSIDFromProgIDole
CLSIDFromProgID function.
CLSIDFromProgIDExole
CLSIDFromProgIDEx function.
CLSIDFromStringole
CLSIDFromString function.
ChangeDisplaySettingsuser
ChangeDisplaySettings function.
ChangeDisplaySettingsExuser
ChangeDisplaySettingsEx function.
ChooseColoruser
ChooseColor function.
ClipCursoruser
ClipCursor function.
CoCreateGuidole
CoCreateGuid function.
CoCreateInstanceole
CoCreateInstance function.
CoInitializeExole
CoInitializeEx function, which initializes the COM library. When succeeding, returns an informational error code.
CoLockObjectExternalole
CoLockObjectExternal function.
CoTaskMemAllocole
CoTaskMemAlloc function.
CoTaskMemReallocole
CoTaskMemRealloc function.
CommDlgExtendedErroruser
CommDlgExtendedError function.
CommandLineToArgvshell
CommandLineToArgv function.
ConfigurePortwinspool
ConfigurePort function.
ConvertSidToStringSidadvapi
ConvertSidToStringSid function.
ConvertStringSidToSidadvapi
ConvertStringSidToSid function.
CopyFilekernel
CopyFile function.
CopySidadvapi
CopySid function.
CreateClassMonikerole
CreateClassMoniker function.
CreateDXGIFactorydxgi
CreateDXGIFactory function.
CreateDXGIFactory1dxgi
CreateDXGIFactory1 function.
CreateDirectorykernel
CreateDirectory function.
CreateFileMonikerole
CreateFileMoniker function.
CreateItemMonikerole
CreateItemMoniker function.
CreateObjrefMonikerole
CreateObjrefMoniker function.
CreatePointerMonikerole
CreatePointerMoniker function.
CreateProcesskernel
CreateProcess function.
CreateWellKnownSidadvapi
CreateWellKnownSid function.
DecryptFileadvapi
DecryptFile function.
DeleteFilekernel
DeleteFile function.
DeleteMonitorwinspool
DeleteMonitor function.
DeletePrinterConnectionwinspool
DeletePrinterConnection function.
DispatchMessageuser
DispatchMessage function.
DwmEnableMMCSSdwm
DwmEnableMMCSS function.
DwmFlushdwm
DwmFlush function.
DwmGetColorizationColordwm
DwmGetColorizationColor function.
DwmIsCompositionEnableddwm
DwmIsCompositionEnabled function.
EncryptFileadvapi
EncryptFile function.
EncryptionDisableadvapi
EncryptionDisable function.
EndMenuuser
EndMenu function.
EnumDisplayDevicesuser
EnumDisplayDevices function.
EnumDisplaySettingsuser
EnumDisplaySettings function.
EnumDisplaySettingsExuser
EnumDisplaySettingsEx function.
EnumPrinters2winspool
EnumPrinters function for Level 2.
EnumPrinters4winspool
EnumPrinters function for Level 4.
EnumThreadWindowsuser
EnumThreadWindows function.
EnumWindowsuser
EnumWindows function.
EqualDomainSidadvapi
EqualDomainSid function.
EqualPrefixSidadvapi
EqualPrefixSid function.
EqualSidadvapi
EqualSid function.
ExitProcesskernel
ExitProcess function.
ExitThreadkernel
ExitThread function.
ExitWindowsExuser
ExitWindowsEx function.
ExpandEnvironmentStringskernel
ExpandEnvironmentStrings function.
FileTimeToSystemTimekernel
FileTimeToSystemTime function.
FlashWindowExuser
FlashWindowEx function.
FlushProcessWriteBufferskernel
FlushProcessWriteBuffers function.
FormatMessagekernel
FormatMessage function.
GdiFlushgdi
GdiFlush function.
GdiGetBatchLimitgdi
GdiGetBatchLimit function.
GdiSetBatchLimitgdi
GdiSetBatchLimit function.
GetAllUsersProfileDirectoryshell
GetAllUsersProfileDirectory function.
GetAsyncKeyStateuser
GetAsyncKeyState function.
GetBinaryTypekernel
GetBinaryType function.
GetCaretBlinkTimeuser
GetCaretBlinkTime function.
GetCaretPosuser
GetCaretPos function.
GetClipCursoruser
GetClipCursor function.
GetCommandLinekernel
GetCommandLine function.
GetComputerNamekernel
GetComputerName function.
GetCurrentDirectorykernel
GetCurrentDirectory function.
GetCurrentProcessIdkernel
GetCurrentProcessId function.
GetCurrentThreadIdkernel
GetCurrentThreadId function.
GetCursorInfouser
GetCursorInfo function.
GetCursorPosuser
GetCursorPos function.
GetDefaultPrinterwinspool
GetDefaultPrinter function.
GetDefaultUserProfileDirectoryshell
GetDefaultUserProfileDirectory function.
GetDialogBaseUnitsuser
GetDialogBaseUnits function.
GetDiskFreeSpaceExkernel
GetDiskFreeSpaceEx function.
GetDiskSpaceInformationkernel
GetDiskSpaceInformation function.
GetDoubleClickTimeuser
GetDoubleClickTime function.
GetDriveTypekernel
GetDriveType function.
GetEnvironmentStringskernel
GetEnvironmentStrings function.
GetFileAttributeskernel
GetFileAttributes function.
GetFileAttributesExkernel
GetFileAttributesEx function.
GetFirmwareTypekernel
GetFirmwareType function.
GetGUIThreadInfouser
GetGUIThreadInfo function.
GetLargePageMinimumkernel
GetLargePageMinimum function.
GetLastErrorkernel
GetLastError function.
GetLastInputInfouser
GetLastInputInfo function.
GetLengthSidadvapi
GetLengthSid function.
GetLocalTimekernel
GetLocalTime function.
GetLogicalDriveStringskernel
GetLogicalDriveStrings function.
GetLogicalDriveskernel
GetLogicalDrives function.
GetLongPathNamekernel
GetLongPathName function.
GetMenuCheckMarkDimensionsuser
GetMenuCheckMarkDimensions function.
GetMessageuser
GetMessage function.
GetMessagePosuser
GetMessagePos function.
GetNativeSystemInfokernel
GetNativeSystemInfo function.
GetPhysicalCursorPosuser
GetPhysicalCursorPos function.
GetPrivateProfileSectionkernel
GetPrivateProfileSection function.
GetPrivateProfileSectionNameskernel
GetPrivateProfileSectionNames function.
GetPrivateProfileStringkernel
GetPrivateProfileString function.
GetProcessDefaultLayoutuser
GetProcessDefaultLayout function.
GetProfilesDirectoryshell
GetProfilesDirectory function.
GetQueueStatususer
GetQueueStatus function.
GetSidLengthRequiredadvapi
GetSidLengthRequired function.
GetStartupInfokernel
GetStartupInfo function.
GetSysColoruser
GetSysColor function.
GetSystemDirectorykernel
GetSystemDirectory function.
GetSystemFileCacheSizekernel
GetSystemFileCacheSize function.
GetSystemInfokernel
GetSystemInfo function.
GetSystemMetricsuser
GetSystemMetrics function.
GetSystemMetricsForDpiuser
GetSystemMetricsForDpi function.
GetSystemTimekernel
GetSystemTime function.
GetSystemTimeAsFileTimekernel
GetSystemTimeAsFileTime function.
GetSystemTimePreciseAsFileTimekernel
GetSystemTimePreciseAsFileTime function.
GetSystemTimeskernel
GetSystemTimes function.
GetTempFileNamekernel
GetTempFileName function.
GetTempPathkernel
GetTempPath function.
GetThreadDpiHostingBehavioruser
GetThreadDpiHostingBehavior function.
GetTickCount64kernel
GetTickCount64 function.
GetUserNameadvapi
GetUserName function.
GetVolumeInformationkernel
GetVolumeInformation function.
GetVolumePathNamekernel
GetVolumePathName function.
GetWindowsAccountDomainSidadvapi
GetWindowsAccountDomainSid function.
GlobalMemoryStatusExkernel
GlobalMemoryStatusEx function.
HIBYTEkernel
HIBYTE macro.
HIDWORDkernel
Returns the high-order u32 of an u64.
HIWORDkernel
HIWORD macro.
InSendMessageuser
InSendMessage function.
InSendMessageExuser and 64-bit
InSendMessageEx function.
InflateRectuser
InflateRect function.
InitCommonControlscomctl
InitCommonControls function.
InitCommonControlsExcomctl
InitCommonControlsEx function.
InitMUILanguagecomctl
InitMUILanguage function.
InitializeSecurityDescriptoradvapi
InitializeSecurityDescriptor function.
InitiateSystemShutdownadvapi
InitiateSystemShutdown function.
InitiateSystemShutdownExadvapi
InitiateSystemShutdownEx function.
IntersectRectuser
IntersectRect function.
IsAppThemeduxtheme
IsAppThemed function.
IsCompositionActiveuxtheme
IsCompositionActive function.
IsDebuggerPresentkernel
IsDebuggerPresent function.
IsGUIThreaduser
IsGUIThread function.
IsNativeVhdBootkernel
IsNativeVhdBoot function.
IsRectEmptyuser
IsRectEmpty function.
IsThemeActiveuxtheme
IsThemeActive function.
IsThemeDialogTextureEnableduxtheme and 64-bit
IsThemeDialogTextureEnabled function.
IsValidSecurityDescriptoradvapi
IsValidSecurityDescriptor function.
IsValidSidadvapi
IsValidSid function.
IsWellKnownSidadvapi
IsWellKnownSid function.
IsWindows7OrGreaterkernel
IsWindows7OrGreater function.
IsWindows8OrGreaterkernel
IsWindows8OrGreater function.
IsWindows8Point1OrGreaterkernel
IsWindows8Point1OrGreater function.
IsWindows10OrGreaterkernel
IsWindows10OrGreater function.
IsWindowsServerkernel
IsWindowsServer function.
IsWindowsVersionOrGreaterkernel
IsWindowsVersionOrGreater function.
IsWindowsVistaOrGreaterkernel
IsWindowsVistaOrGreater function.
IsWow64Messageuser
IsWow64Message function.
LOBYTEkernel
LOBYTE macro.
LODWORDkernel
Returns the low-order u32 of an u64.
LOWORDkernel
LOWORD macro.
LockSetForegroundWindowuser
LockSetForegroundWindow function.
LockWorkStationuser
LockWorkStation function.
LookupAccountNameadvapi
LookupAccountName function.
LookupAccountSidadvapi
LookupAccountSid function.
LookupPrivilegeNameadvapi
LookupPrivilegeName function.
LookupPrivilegeValueadvapi
LookupPrivilegeValue function.
MAKEDWORDkernel
Function analog to MAKELONG, MAKEWPARAM, and MAKELPARAM macros.
MAKEQWORDkernel
Similar to MAKEDWORD, but for u64.
MAKEWORDkernel
MAKEWORD macro.
MFCreateAsyncResultmf
MFCreateAsyncResult function.
MFCreateMFByteStreamOnStreammf
MFCreateMFByteStreamOnStream function.
MFCreateMediaSessionmf
MFCreateMediaSession function.
MFCreateSourceResolvermf
MFCreateSourceResolver function.
MFCreateTopologymf
MFCreateTopology function.
MFCreateTopologyNodemf
MFCreateTopologyNode function.
MFStartupmf
MFStartup function.
MessageBeepuser
MessageBeep function.
MoveFilekernel
MoveFile function.
MoveFileExkernel
MoveFileEx function.
MulDivkernel
MulDiv function.
MultiByteToWideCharkernel
MultiByteToWideChar function.
OffsetRectuser
OffsetRect function.
OleInitializeole
OleInitialize function, which calls CoInitializeEx and enables OLE operations.
OleLoadPictureoleaut
OleLoadPicture function.
OleLoadPicturePatholeaut
OleLoadPicturePath function.
OutputDebugStringkernel
OutputDebugString function.
PSGetNameFromPropertyKeyoleaut
PSGetNameFromPropertyKey function.
PathCombineshell
PathCombine function.
PathCommonPrefixshell
PathCommonPrefix function.
PathSkipRootshell
PathSkipRoot function.
PathStripPathshell
PathStripPath function.
PathUndecorateshell
PathUndecorate function.
PathUnquoteSpacesshell
PathUnquoteSpaces function.
PeekMessageuser
PeekMessage function.
PostQuitMessageuser
PostQuitMessage function.
PostThreadMessageuser
PostThreadMessage function.
PropertySheetcomctl
PropertySheet function.
PtInRectuser
PtInRect function.
QueryPerformanceCounterkernel
QueryPerformanceCounter function.
QueryPerformanceFrequencykernel
QueryPerformanceFrequency function.
QueryUnbiasedInterruptTimekernel
QueryUnbiasedInterruptTime function.
RegDisablePredefinedCacheadvapi
RegDisablePredefinedCache function.
RegDisablePredefinedCacheExadvapi
RegDisablePredefinedCacheEx function.
RegisterClassExuser
RegisterClassEx function.
RegisterWindowMessageuser
RegisterWindowMessage function.
ReplaceFilekernel
ReplaceFile function.
SHAddToRecentDocsshell
SHAddToRecentDocs function.
SHCreateItemFromIDListshell
SHCreateItemFromIDList function.
SHCreateItemFromParsingNameshell
SHCreateItemFromParsingName function.
SHCreateItemFromRelativeNameshell
SHCreateItemFromRelativeName function.
SHCreateItemInKnownFoldershell
SHCreateItemInKnownFolder function.
SHCreateMemStreamshell
SHCreateMemStream function.
SHCreateShellItemArrayFromShellItemshell
SHCreateShellItemArrayFromShellItem function.
SHFileOperationshell
SHFileOperation function.
SHGetFileInfoshell
SHGetFileInfo function.
SHGetIDListFromObjectshell
SHGetIDListFromObject function.
SHGetKnownFolderPathadvapi and shell
SHGetKnownFolderPath function.
SHGetStockIconInfoshell
SHGetStockIconInfo function.
SendInputuser
SendInput function.
SetCaretBlinkTimeuser
SetCaretBlinkTime function.
SetCaretPosuser
SetCaretPos function.
SetCurrentDirectorykernel
SetCurrentDirectory function.
SetCursorPosuser
SetCursorPos function.
SetDefaultPrinterwinspool
SetDefaultPrinter function.
SetDoubleClickTimeuser
SetDoubleClickTime function.
SetFileAttributeskernel
SetFileAttributes function.
SetLastErrorkernel
SetLastError function.
SetPhysicalCursorPosuser
SetPhysicalCursorPos function.
SetProcessDPIAwareuser
SetProcessDPIAware function.
SetProcessDefaultLayoutuser
SetProcessDefaultLayout function.
SetSysColorsuser
SetSysColors function.
SetThreadDpiHostingBehavioruser
SetThreadDpiHostingBehavior function.
SetThreadStackGuaranteekernel
SetThreadStackGuarantee function.
ShellExecuteExadvapi and shell
ShellExecuteEx function.
Shell_NotifyIconshell
Shell_NotifyIcon function.
ShowCursoruser
ShowCursor function.
Sleepkernel
Sleep function.
SoundSentryuser
SoundSentry function.
StringFromCLSIDole
StringFromCLSID function.
SubtractRectuser
SubtractRect function.
SwapMouseButtonuser
SwapMouseButton function.
SwitchToThreadkernel
SwitchToThread function.
SystemParametersInfouser
SystemParametersInfo function.
SystemTimeToFileTimekernel
SystemTimeToFileTime function.
SystemTimeToTzSpecificLocalTimekernel
SystemTimeToTzSpecificLocalTime function.
SystemTimeToVariantTimeoleaut
SystemTimeToVariantTime function.
TaskDialogIndirectcomctl
TaskDialogIndirect function.
TrackMouseEventuser
TrackMouseEvent function.
TranslateMessageuser
TranslateMessage function.
UnionRectuser
UnionRect function.
UnregisterClassuser
UnregisterClass function.
VariantTimeToSystemTimeoleaut
VariantTimeToSystemTime function.
VerSetConditionMaskkernel
VerSetConditionMask function.
VerifyVersionInfokernel
VerifyVersionInfo function.
WaitMessageuser
WaitMessage function.
WideCharToMultiBytekernel
WideCharToMultiByte function.
WritePrivateProfileStringkernel
WritePrivateProfileString function.

Type Aliases§

AnyResultkernel
A Result alias which returns a Box<dyn Error + Send + Sync> on failure.
CCHOOKPROCuser
Type alias to CCHOOKPROC callback function.
DLGPROCuser
Type alias to DLGPROC callback function.
EDITWORDBREAKPROCuser
Type alias to EDITWORDBREAKPROC callback function.
HOOKPROCuser
Type alias to HOOKPROC callback function.
HrResultole
A Result alias for COM error codes, which returns an HRESULT on failure.
LPFNPSPCALLBACKcomctl
Type alias to LPFNPSPCALLBACK callback function.
PFNLVCOMPAREcomctl
Type alias to PFNLVCOMPARE callback function.
PFNLVGROUPCOMPAREcomctl
Type alias to PFNLVGROUPCOMPARE callback function.
PFNPROPSHEETCALLBACKcomctl
Type alias to PFNPROPSHEETCALLBACK callback function.
PFNTVCOMPAREcomctl
Type alias to PFNTVCOMPARE callback function.
PFTASKDIALOGCALLBACKcomctl
Type alias to PFTASKDIALOGCALLBACK calback function.
SUBCLASSPROCcomctl
Type alias to SUBCLASSPROC callback function.
SysResultkernel
A Result alias for native system error codes, which returns an ERROR on failure.
TIMERPROCuser
Type alias to TIMERPROC callback function.
WNDPROCuser
Type alias to WNDPROC callback function.