Contents
Windows Desktop Technologies
Active Directory Domain Services
Active Directory Lightweight Directory Services
Active Directory Rights Management Services SDK
Active Directory Service Interfaces
AllJoyn API
Antimalware Scan Interface
Application Installation and Servicing
Application Recovery and Restart
Audio Devices DDI Reference
Automation
Background Intelligent Transfer Service
Backup
Battery Devices Reference
Bluetooth Devices Reference
Bluetooth
CIMWin32 WMI Providers
Cloud Filter API
COM+ (Component Services)
Component Object Model (COM)
Compression API
Core Audio APIs
Data Access and Storage
Data Deduplication API
Data Exchange
Debugging and authoring support
Desktop Window Manager (DWM)
Developer licensing
Developer Notes
Device Access API
Device and Driver Installation Reference
Dialog Boxes
Direct Manipulation
Direct2D
Direct3D 10 Graphics
Direct3D 11 Graphics
Direct3D 12 Graphics
Direct3D 9 Graphics
DirectComposition
DirectDraw
DirectWrite
DirectXMath
Display Devices Reference
Distributed File System
Distributed Transaction Coordinator WMI Provider
Domain Name System (DNS)
Driver Development Tools Reference
DXGI
Dynamic Host Configuration Protocol (DHCP)
Enhanced Storage
Event Tracing
Eventlogprov
Extensible Authentication Protocol Host
Extensible Authentication Protocol
Failover Cluster WMI Provider
Failover Clustering Hyper-V WMI Provider
Fax Service
File Server Resource Manager
Game Mode
Gaming Device Information
GDI+
Group Policy API
Group Policy Management Console
Hardware Counter Profiling
High DPI
HLSL
Human Interface Devices Reference
Hyper-V management
Hyper-V WMI Provider
Image Mastering API
Indexing Service
Ink input
Input Feedback Configuration
Input Source Identification
Installable file systems DDI reference
Interaction Context
Internationalization for Windows Applications
IP Helper
ISCSI Discovery Library API
ISCSI Target Server Provider
Kernel-Mode Driver Reference
Keyboard and Mouse Input
Legacy Windows Environment Features
Lightweight Directory Access Protocol
Location API
Magnification API
Management Information Base
Menus and Other Resources
Microsoft HTML Help 1.4
Microsoft Management Console 2.0
Microsoft Media Foundation
Mobile Broadband
Mobile Device Management Registration
Mobile Device Management Settings Provider
Monitor Configuration
MS-CHAP Password Management API
Multicast Address Dynamic Client Allocation Protocol (MADCAP)
Native Wifi
NetBIOS
NetShell
Network Access Protection
Network Diagnostics Framework
Network Drivers Prior to Windows Vista
Network Drivers, Windows Vista and Later
Network List Manager
Network Management
Network Policy Server
Offline Files
OOBE APIs for setup state and notification
OpenGL
Operation Recorder
Other Devices Technologies
Packaging, deployment, and query of Windows Store apps
Packaging
Parental Controls
Peer-to-Peer
Performance Counters
Performance Logs and Alerts
Picture Acquisition
Pointer Device Input Stack
Pointer Input Messages and Notifications
Power Metering and Budgeting Reference
Process Snapshotting
Process Status API (PSAPI)
Projected File System
Quality of Service (QOS)
Radial controller input
Remote Assistance
Remote Desktop Services
Remote Differential Compression
Remote Procedure Call (RPC)
Restart Manager
Routing and Remote Access Service
Security and Identity
Sensor API
Sensor device driver reference
Serial Controller Driver Reference
Settings Management Infrastructure (SMI)
Simple Network Management Protocol
Software Device API
Spell Checker API
Storage driver DDI reference
Storage Volume Provider
Streaming media DDI reference
Structured Storage
System Event Notification Service
System Monitor
System Restore
System Services
Tablet PC
TAPI 2.2
Task Scheduler
Telephony Application Programming Interfaces
Telephony Service Provider
Text Services Framework
The Windows Shell
Tiles, badges, and notifications for Classic desktop applications
Title Callable UI
Tool Help Library
Touch Hit Testing
Touch Injection
Touch Input
TPM Base Services
TraceLogging
UPnP APIs
USB driver reference
User Access Logging
Virtual Hard Disk
Virtual Storage
W_graph_fx
W_ui_comp
WebDAV
WebSocket Protocol Component API
WhqlProvider Provider
WIA
Window Stations and Desktops
Windows Accessibility Features
Windows Address Book
Windows and Messages
Windows Animation Manager
Windows Biometric Framework
Windows Clustering
Windows Color System
Windows Connect Now
Windows Connection Manager
Windows Contacts
Windows Controls
Windows Data Access Components WMI Provider
Windows Deployment Services
Windows Desktop Sharing
Windows Error Reporting
Windows Event Collector
Windows Event Log
Windows Filtering Platform
Windows Firewall Technologies
Windows GDI
Windows HTTP Services (WinHTTP)
Windows Imaging Component
Windows Information Protection (WIP)
Windows Installer Provider
Windows Internet
Windows Machine Learning
Windows Management Infrastructure (MI)
Windows Management Instrumentation
Windows Media Device Manager 11 SDK
Windows Messaging (MAPI)
Windows Messenger
Windows Mixed Reality
Windows Multimedia
Windows Network Virtualization
Windows Networking (WNet)
Windows Property System
Windows Remote Management
Windows Ribbon Framework
Windows Runtime C++ reference
Windows Search
Windows Server Backup
Windows Sockets 2
Windows Subsystem for Linux
Windows Sync
Windows System Assessment Tool
Windows Update Agent API
Windows Web Services
Winlocation_com_ref
Winsensors_com_ref
Wlbsprov
WMI Provider for NFS
WPD Application Programming Interface
WPD Automation Object Model
WPF Bitmap Effects
XAML Diagnostics
XAudio2 APIs
XblIdpAuthManager
XInput Game Controller APIs
XML HTTP Extended Request
XPS Documents
Headers
Accctrl.h
Aclapi.h
Aclui.h
Activation.h
Activationregistration.h
Adhoc.h
Adshlp.h
Adsprop.h
Adtgen.h
Advpub.h
Af_irda.h
Amsi.h
Apiquery2.h
Appcompatapi.h
Appmgmt.h
Appmodel.h
Appnotify.h
Appxpackaging.h
Asyncinfo.h
Atacct.h
Atlthunk.h
Audioapotypes.h
Audioclient.h
Audioendpoints.h
Audioenginebaseapo.h
Audioengineendpoint.h
Audiomediatype.h
Audiopolicy.h
Audiosessiontypes.h
Authif.h
Authz.h
Aux_ulib.h
Avrfsdk.h
Avrt.h
Azroles.h
Baseaudioprocessingobject.h
Batclass.h
Bcrypt.h
Bits.h
Bits1_5.h
Bits10_1.h
Bits10_2.h
Bits10_3.h
Bits2_0.h
Bits2_5.h
Bits3_0.h
Bits4_0.h
Bits5_0.h
Bitscfg.h
Bluetoothapis.h
Bluetoothleapis.h
Bthdef.h
Bthledef.h
Bthsdpdef.h
Callobj.h
Camerauicontrol.h
Capi.h
Casetup.h
Cchannel.h
Celib.h
Certadm.h
Certbcli.h
Certcli.h
Certenc.h
Certenroll.h
Certexit.h
Certif.h
Certmod.h
Certpol.h
Certpoleng.h
Certsrv.h
Certview.h
Cfapi.h
Cfg.h
Cfgmgr32.h
Chptrarr.h
Chstrarr.h
Chstring.h
Clfs.h
Clfsmgmt.h
Clfsmgmtw32.h
Clfsw32.h
Cloneviewhelper.h
Cluadmex.h
Clusapi.h
Cmdtree.h
Cmnquery.h
Codecapi.h
Comadmin.h
Combaseapi.h
Comcat.h
Coml2api.h
Commctrl.h
Commdlg.h
Commoncontrols.h
Comppkgsup.h
Compressapi.h
Comsvcs.h
Control.h
Corewindow.h
Cpl.h
Credentialprovider.h
Credssp.h
Cryptdlg.h
Cryptuiapi.h
Cryptxml.h
Cscapi.h
Cscobj.h
Ctffunc.h
Ctfspui.h
Ctfutb.h
Ctxtcall.h
D2d1.h
D2d1_1.h
D2d1_1helper.h
D2d1_2.h
D2d1_3.h
D2d1_3helper.h
D2d1effectauthor.h
D2d1effectauthor_1.h
D2d1effecthelpers.h
D2d1effects.h
D2d1effects_1.h
D2d1effects_2.h
D2d1helper.h
D2d1svg.h
D3d10.h
D3d10_1.h
D3d10_1shader.h
D3d10effect.h
D3d10misc.h
D3d10sdklayers.h
D3d10shader.h
D3d11.h
D3d11_1.h
D3d11_2.h
D3d11_3.h
D3d11_4.h
D3d11on12.h
D3d11sdklayers.h
D3d11shader.h
D3d11shadertracing.h
D3d12.h
D3d12sdklayers.h
D3d12shader.h
D3d12video.h
D3d9.h
D3d9caps.h
D3d9helper.h
D3dcommon.h
D3dcompiler.h
D3dcsx.h
Datetimeapi.h
Davclnt.h
Dbghelp.h
Dbt.h
Dciman.h
Dcommon.h
Dcomp.h
Dcompanimation.h
Dcomptypes.h
Dde.h
Ddeml.h
Ddkernel.h
Ddkmapi.h
Ddpbackup.h
Ddraw.h
Ddrawgdi.h
Ddrawi.h
Ddrawint.h
Debugapi.h
Deviceaccess.h
Devicetopology.h
Dhcpcsdk.h
Dhcpsapi.h
Dhcpssdk.h
Dhcpv6csdk.h
Diagnosticdataquery.h
Diagnosticdataquerytypes.h
Digitalv.h
Dimm.h
Dinput.h
Dinputd.h
Directmanipulation.h
Directml.h
Directxcollision.h
Directxmath.h
Directxpackedvector.h
Dispatcherqueue.h
Dmemmgr.h
Dmerror.h
Dmusics.h
Docobj.h
Documenttarget.h
Dot1x.h
Dpa_dsa.h
Dpapi.h
Drt.h
Dsadmin.h
Dsclient.h
Dsgetdc.h
Dskquota.h
Dsparse.h
Dsquery.h
Dsrole.h
Dssec.h
Dvp.h
Dwmapi.h
Dwrite.h
Dwrite_1.h
Dwrite_2.h
Dwrite_3.h
Dxgi.h
Dxgi1_2.h
Dxgi1_3.h
Dxgi1_4.h
Dxgi1_5.h
Dxgi1_6.h
Dxgicommon.h
Dxgidebug.h
Dxgiformat.h
Dxmini.h
Dxva2api.h
Dxva9typ.h
Dxvahd.h
Eapauthenticatoractiondefine.h
Eapauthenticatortypes.h
Eaphostpeerconfigapis.h
Eaphostpeertypes.h
Eapmethodauthenticatorapis.h
Eapmethodpeerapis.h
Eapmethodtypes.h
Eappapis.h
Eaptypes.h
Editionupgradehelper.h
Edpwin32.h
Efswrtinterop.h
Ehstorapi.h
Ehstorextensions.h
Elscore.h
Emi.h
Emptyvc.h
Enclaveapi.h
Endpointvolume.h
Errhandlingapi.h
Errorrep.h
Errors.h
Evalcom2.h
Evcoll.h
Eventsys.h
Eventtoken.h
Evntcons.h
Evntprov.h
Evntrace.h
Evr.h
Evr9.h
Exdisp.h
Expandedresources.h
Exposeenums2managed.h
Faxcom.h
Faxcomex.h
Faxdev.h
Faxext.h
Faxroute.h
Fci.h
Fdi.h
Fdi_fci_types.h
Featurestagingapi.h
Fhcfg.h
Fhsvcctl.h
Fibersapi.h
Fileapi.h
Filehc.h
Filter.h
Filtereg.h
Fltuser.h
Fontsub.h
Frquery.h
Fsrm.h
Fsrmenums.h
Fsrmpipeline.h
Fsrmquota.h
Fsrmreports.h
Fsrmscreen.h
Fsrmtlb.h
Functiondiscoveryapi.h
Functiondiscoveryconstraints.h
Functiondiscoveryprovider.h
Fwpmtypes.h
Fwpmu.h
Fwpstypes.h
Fwptypes.h
Fxsutility.h
Gamingdeviceinformation.h
Gamingtcui.h
Gb18030.h
Gdiplusbase.h
Gdiplusbrush.h
Gdipluscolor.h
Gdipluscolormatrix.h
Gdipluseffects.h
Gdiplusenums.h
Gdiplusgraphics.h
Gdiplusheaders.h
Gdiplusimageattributes.h
Gdiplusimagecodec.h
Gdiplusimaging.h
Gdiplusinit.h
Gdipluslinecaps.h
Gdiplusmatrix.h
Gdiplusmetaheader.h
Gdipluspath.h
Gdipluspen.h
Gdipluspixelformats.h
Gdiplusstringformat.h
Gdiplustypes.h
Genericusbfnioctl.h
Gpedit.h
Gpmgmt.h
Guiddef.h
Handleapi.h
Heapapi.h
Highlevelmonitorconfigurationapi.h
Holographicspaceinterop.h
Hrtfapoapi.h
Hstring.h
Htmlhelp.h
Http.h
Iaccess.h
Iads.h
Icftypes.h
Icmpapi.h
Icontact.h
Icontentprefetchertasktrigger.h
Icwcfg.h
Identitycommon.h
Identityprovider.h
Identitystore.h
Ifdef.h
Ifmib.h
Iketypes.h
Imagehlp.h
Imagetranscode.h
Imapi.h
Imapi2.h
Imapi2fs.h
Ime.h
Imepad.h
Imessagedispatcher.h
Imm.h
Immdev.h
In6addr.h
Inaddr.h
Indexsrv.h
Infocard.h
Infotech.h
Inked.h
Inkpresenterdesktop.h
Inkrenderer.h
Inputpaneinterop.h
Inputpanelconfiguration.h
Inputscope.h
Inspectable.h
Instance.h
Interactioncontext.h
Interlockedapi.h
Intsafe.h
Intshcut.h
Ioapiset.h
Ip2string.h
Ipexport.h
Iphlpapi.h
Ipmib.h
Iprtrmib.h
Ipsectypes.h
Iptypes.h
Ipxrtdef.h
Iscsidsc.h
Isolatedapplauncher.h
Isysmon.h
Iwscapi.h
Jobapi.h
Jobapi2.h
Joystickapi.h
Keycredmgr.h
Ksopmapi.h
Ktmtypes.h
Ktmw32.h
L2cmn.h
Libloaderapi.h
Libloaderapi2.h
Lmaccess.h
Lmalert.h
Lmapibuf.h
Lmat.h
Lmaudit.h
Lmconfig.h
Lmdfs.h
Lmerrlog.h
Lmjoin.h
Lmmsg.h
Lmremutl.h
Lmserver.h
Lmshare.h
Lmstats.h
Lmsvc.h
Lmuse.h
Lmwksta.h
Loadperf.h
Locationapi.h
Lowlevelmonitorconfigurationapi.h
Lpmapi.h
Lsalookup.h
Lzexpand.h
Madcapcl.h
Magnification.h
Manipulations.h
Mapi.h
Mapiunicodehelp.h
Mbnapi.h
Mcx.h
Mdhcp.h
Mdmregistration.h
Memoryapi.h
Memorybuffer.h
Mergemod.h
Messagedispatcherapi.h
Methodco.h
Mfapi.h
Mfcaptureengine.h
Mfidl.h
Mfmediacapture.h
Mfmediaengine.h
Mfmp2dlna.h
Mfobjects.h
Mfplay.h
Mfreadwrite.h
Mfsharingengine.h
Mfspatialaudio.h
Mftransform.h
Mgm.h
Mgmtapi.h
mi.h
Micaut.h
Midles.h
Mileffects.h
Minidumpapiset.h
Minwinbase.h
Mmc.h
Mmcobj.h
Mmddk.h
Mmdeviceapi.h
Mmeapi.h
Mmiscapi.h
Mmreg.h
Mmsystem.h
Mobsync.h
Mpconfig.h
Mprapi.h
Msaatext.h
Msacm.h
Msajtransport.h
Msapofxproxy.h
Mscat.h
Mschapp.h
Msclus.h
Msctf.h
Msctfmonitorapi.h
Msdrm.h
Msdrmdefs.h
Msi.h
Msime.h
Msimeapi.h
Msinkaut.h
Msinkaut15.h
Msiquery.h
Msopc.h
Msp.h
Mspaddr.h
Mspcall.h
Msports.h
Mspstrm.h
Msrdc.h
Mssip.h
Mstask.h
Mstcpip.h
Mswmdm.h
Mswsock.h
Mswsockdef.h
Msxml.h
Msxml6.h
Mtpext.h
Mtxdm.h
Muiload.h
Namedpipeapi.h
Namespaceapi.h
Naptypes.h
Natupnp.h
Nb30.h
Ncrypt.h
Ncryptprotect.h
Ndattrib.h
Ndfapi.h
Ndhelper.h
Ndkinfo.h
Netcon.h
Netfw.h
Netioapi.h
Netiodef.h
Netlistmgr.h
Netsh.h
Networkisolation.h
Newdev.h
Nldef.h
Notificationactivationcallback.h
Npapi.h
Nsemail.h
Nspapi.h
Ntddkbd.h
Ntddmou.h
Ntddpsch.h
Ntdef.h
Ntdsapi.h
Ntenclv.h
Ntlsa.h
Ntmsapi.h
Ntmsmli.h
Ntquery.h
Ntsecapi.h
Ntsecpkg.h
Oaidl.h
Objbase.h
Objectarray.h
Objidl.h
Objidlbase.h
Objpath.h
Objsel.h
Ocidl.h
Ole.h
Ole2.h
Oleacc.h
Oleauto.h
Olectl.h
Oledbguid.h
Oledlg.h
Oleidl.h
Ondemandconnroutehelper.h
Oobenotification.h
Opmapi.h
P2p.h
Pathcch.h
Pchannel.h
Pdh.h
Peerdist.h
Peninputpanel.h
Perflib.h
Photoacquire.h
Physicalmonitorenumerationapi.h
Pla.h
Playtomanagerinterop.h
Pnpxassoc.h
Pnrpdef.h
Pnrpns.h
Portabledeviceapi.h
Portabledeviceconnectapi.h
Powerbase.h
Powersetting.h
Powrprof.h
Printmanagerinterop.h
Prnasnot.h
Prntvpt.h
Processenv.h
Processsnapshot.h
Processthreadsapi.h
Processtopologyapi.h
Profileapi.h
Profinfo.h
Projectedfslib.h
Proofofpossessioncookieinfo.h
Propapi.h
Propidl.h
Propidlbase.h
Propkeydef.h
Propsys.h
Propvarutil.h
Provider.h
Prsht.h
Psapi.h
Pwm.h
Qmgr.h
Qos.h
Qos2.h
Qosobjs.h
Qospol.h
Qossp.h
Radialcontrollerinterop.h
Ras.h
Rasdlg.h
Raseapif.h
Rasshost.h
Rdpappcontainerclient.h
Rdpencomapi.h
Realtimeapiset.h
Recapis.h
Reconcil.h
Rectypes.h
Refptrco.h
Relogger.h
Remotesystemadditionalinfo.h
Rend.h
Rendezvoussession.h
Resapi.h
Resourceindexer.h
Restartmanager.h
Restrictederrorinfo.h
Richedit.h
Richole.h
Roapi.h
Robuffer.h
Roerrorapi.h
Rometadata.h
Rometadataapi.h
Rometadataresolution.h
Roparameterizediid.h
Roregistrationapi.h
Routprot.h
Rpc.h
Rpcasync.h
Rpcdce.h
Rpcdcep.h
Rpcndr.h
Rpcnsi.h
Rpcproxy.h
Rpcssl.h
Rrascfg.h
Rtlsupportapi.h
Rtmv2.h
Rtscom.h
Rtworkq.h
Sas.h
Sbtsv.h
Scclient.h
Scesvc.h
Schannel.h
Schedule.h
Scrnsave.h
Scserver.h
Sddl.h
Sdoias.h
Searchapi.h
Secext.h
Securityappcontainer.h
Securitybaseapi.h
Sensapi.h
Sensevts.h
Sensorsapi.h
Sessdirpublictypes.h
Setupapi.h
Sfc.h
Shappmgr.h
Shcore.h
Shdeprecated.h
Shellapi.h
Shellscalingapi.h
Shidfact.h
Shimgdata.h
Shldisp.h
Shlobj.h
Shlobj_core.h
Shlwapi.h
Shobjidl.h
Shobjidl_core.h
Shtypes.h
Slpublic.h
Smbclnt.h
Snmp.h
Socketapi.h
Spatialaudioclient.h
Spatialaudiohrtf.h
Spatialaudiometadata.h
Spatialinteractionmanagerinterop.h
Spellcheck.h
Spellcheckprovider.h
Sporder.h
Srpapi.h
Srrestoreptapi.h
Sspi.h
Stm.h
Storageprovider.h
Storprop.h
Stralign.h
Stringapiset.h
Strmif.h
Strsafe.h
Structuredquery.h
Structuredquerycondition.h
Subauth.h
Subsmgr.h
Swdevice.h
Swdevicedef.h
Synchapi.h
Syncmgr.h
Syncregistration.h
Sysinfoapi.h
Systemtopologyapi.h
T2embapi.h
Tabflicks.h
Tapi.h
Tapi3.h
Tapi3cc.h
Tapi3ds.h
Tapi3if.h
Taskschd.h
Tbs.h
Tcpestats.h
Tcpioctl.h
Tcpmib.h
Tdh.h
Tdiinfo.h
Termmgr.h
Textserv.h
Textstor.h
Thrdbase.h
Threadpoolapiset.h
Threadpoollegacyapiset.h
Thumbcache.h
Thumbnailstreamcache.h
Timeapi.h
Timeprov.h
Timezoneapi.h
Tlhelp32.h
Tlogstg.h
Tokenbinding.h
Tom.h
Tpcshrd.h
Tpmvscmgr.h
Traceloggingactivity.h
Traceloggingprovider.h
Traffic.h
Transportsettingcommon.h
Tsgauthenticationengine.h
Tsgpolicyengine.h
Tspi.h
Tspubplugin2com.h
Tspubplugincom.h
Tssbx.h
Tsuserex.h
Tsvirtualchannels.h
Tvout.h
Txfw32.h
Txlogpub.h
Ual.h
Udpmib.h
Uianimation.h
Uiautomationclient.h
Uiautomationcore.h
Uiautomationcoreapi.h
Uiribbon.h
Unknwn.h
Unknwnbase.h
Upnp.h
Upnphost.h
Urlmon.h
Usbuser.h
Userenv.h
Usp10.h
Utilapiset.h
Uxtheme.h
Vbinterf.h
Vdmdbg.h
Vds.h
Vdshwprv.h
Vdslun.h
Verrsrc.h
Versionhelpers.h
Vfw.h
Virtdisk.h
Vmgenerationcounter.h
Vsadmin.h
Vsbackup.h
Vsmgmt.h
Vsprov.h
Vss.h
Vswriter.h
Waasapi.h
Waasapitypes.h
Wabapi.h
Wabdefs.h
Wabiab.h
Wabmem.h
Wabtags.h
Wbemcli.h
Wbemdisp.h
Wbemglue.h
Wbemprov.h
Wbemtime.h
Wcmapi.h
Wcmconfig.h
Wcndevice.h
Wcntypes.h
Wcsplugin.h
Wct.h
Wdsbp.h
Wdsclientapi.h
Wdspxe.h
Wdstci.h
Wdstpdi.h
Wdstptmgmt.h
Weakreference.h
Webapplication.h
Webauthenticationcoremanagerinterop.h
Webservices.h
Websocket.h
Werapi.h
Wia_xp.h
Wiavideo.h
Winbase.h
Winber.h
Winbio.h
Winbio_adapter.h
Wincodec.h
Wincodecsdk.h
Wincred.h
Wincrypt.h
Winddi.h
Windef.h
Windns.h
Windows.data.pdf.interop.h
Windows.devices.alljoyn.interop.h
Windows.foundation.h
Windows.graphics.capture.interop.h
Windows.graphics.directx.direct3d11.interop.h
Windows.graphics.effects.interop.h
Windows.graphics.imaging.interop.h
Windows.media.core.interop.h
Windows.ui.composition.interop.h
Windows.ui.xaml.hosting.referencetracker.h
Windows.ui.xaml.media.dxinterop.h
Windowsceip.h
Windowsdefender.h
Windowsstoragecom.h
Windowsx.h
Winefs.h
Winenclaveapi.h
Winerror.h
Winevt.h
Winfax.h
Wingdi.h
Winhttp.h
Wininet.h
Winineti.h
Winioctl.h
Winldap.h
Winml.h
Winnetwk.h
Winnls.h
Winnls32.h
Winnt.h
Winperf.h
Winreg.h
Winsafer.h
Winsatcominterfacei.h
Winscard.h
Winsnmp.h
Winsock.h
Winsock2.h
Winstring.h
Winsvc.h
Winsxs.h
Winsync.h
Winternl.h
Wintrust.h
Winusb.h
Winusbio.h
Winuser.h
Winver.h
Winwlx.h
Wlanapi.h
Wmcodecdsp.h
Wmcontainer.h
Wmdmlog.h
Wmiutils.h
Wnvapi.h
Wofapi.h
Workspaceax.h
Workspaceruntime.h
Workspaceruntimeclientext.h
Wow64apiset.h
Wpcapi.h
Wpcevent.h
Wrdsgraphicschannels.h
Ws2atm.h
Ws2bth.h
Ws2def.h
Ws2ipdef.h
Ws2spi.h
Ws2tcpip.h
Wsbapp.h
Wsbonline.h
Wscapi.h
Wsdattachment.h
Wsdbase.h
Wsdclient.h
Wsddisco.h
Wsdevlicensing.h
Wsdhost.h
Wsdtypes.h
Wsdutil.h
Wsdxml.h
Wsdxmldom.h
Wsipv6ok.h
Wslapi.h
Wsman.h
Wsmandisp.h
Wsnwlink.h
Wsrm.h
Wtsapi32.h
Wtsdefs.h
Wtshintapi.h
Wtsprotocol.h
Wtypes.h
Wtypesbase.h
Wuapi.h
Wuapicommon.h
X3daudio.h
Xamlom.h
Xapo.h
Xapobase.h
Xapofx.h
Xaudio2.h
Xaudio2fx.h
Xblidpauthmanager.h
Xenroll.h
Xinput.h
Xpsdigitalsignature.h
Xpsobjectmodel.h
Xpsobjectmodel_1.h
Xpsobjectmodel_2.h
Xpsprint.h
Active Directory Domain Services
2/7/2020 • 24 minutes to read • Edit Online
Overview of the Active Directory Domain Services technology.
To develop Active Directory Domain Services, you need these headers:
adsprop.h
cmnquery.h
dsadmin.h
dsclient.h
dsgetdc.h
dsparse.h
dsquery.h
dsrole.h
ntdsapi.h
objsel.h
schedule.h
For programming guidance for this technology, see:
Active Directory Domain Services
Enumerations
T IT L E DESC RIP T IO N
DS_KCC_TASKID Specifies tasks that Knowledge Consistency Checker (KCC) can
execute.
DS_MANGLE_FOR The DS_MANGLE_FOR enumeration is used to define whether
a relative distinguished name is mangled (encoded) and in
what form the mangling occurs.
DS_NAME_ERROR The DS_NAME_ERROR enumeration defines the errors
returned by the status member of the
DS_NAME_RESULT_ITEM structure. These are potential errors
that may be encountered while a name is converted by the
DsCrackNames function.
DS_NAME_FLAGS The DS_NAME_FLAGS enumeration is used to define how the
name syntax will be cracked. These flags are used by the
DsCrackNames function.
DS_NAME_FORMAT The DS_NAME_FORMAT enumeration provides formats to use
for input and output names for the DsCrackNames function.
DS_REPL_INFO_TYPE The DS_REPL_INFO_TYPE enumeration is used with the
DsReplicaGetInfo and DsReplicaGetInfo2 functions to specify
the type of replication data to retrieve.
T IT L E DESC RIP T IO N
DS_REPL_OP_TYPE Used to indicate the type of replication operation that a given
entry in the replication queue represents.
DS_REPSYNCALL_ERROR The DS_REPSYNCALL_ERROR enumeration is used with the
DS_REPSYNCALL_ERRINFO structure to indicate where in the
replication process an error occurred.
DS_REPSYNCALL_EVENT The DS_REPSYNCALL_EVENT enumeration is used with the
DS_REPSYNCALL_UPDATE structure to define which event the
DS_REPSYNCALL_UPDATE structure represents.
DS_SPN_NAME_TYPE The DS_SPN_NAME_TYPE enumeration is used by the
DsGetSPN function to identify the format for composing
SPNs.
DS_SPN_WRITE_OP The DS_SPN_WRITE_OP enumeration identifies the type of
write operation that should be performed by the
DsWriteAccountSpn function.
DSROLE_MACHINE_ROLE Used with the MachineRole member of the
DSROLE_PRIMARY_DOMAIN_INFO_BASIC structure to specify
the computer role.
DSROLE_OPERATION_STATE Used with the DSROLE_OPERATION_STATE_INFO structure to
indicate the operational state of a computer.
DSROLE_PRIMARY_DOMAIN_INFO_LEVEL Used with the DsRoleGetPrimaryDomainInformation function
to specify the type of data to retrieve.
DSROLE_SERVER_STATE Used with the DSROLE_UPGRADE_STATUS_INFO structure to
indicate the role of a server.
Functions
T IT L E DESC RIP T IO N
AddForms Called to allow a query form extension object to add forms to
the query dialog box.
AddPages Called to allow a query form object to add pages to an
existing form.
AddPages The IDsAdminNewObjExt::AddPages method is called to
enable the object creation wizard extension to add the desired
pages to the wizard.
ADsPropCheckIfWritable The ADsPropCheckIfWritable function determines if an
attribute can be written.
ADsPropCreateNotifyObj The ADsPropCreateNotifyObj function is used to create, or
obtain, a notification object for use by an Active Directory
Domain Services property sheet extension.
T IT L E DESC RIP T IO N
ADsPropGetInitInfo Used to obtain directory object data that an Active Directory
Domain Services property sheet extension applies to.
ADsPropSendErrorMessage The ADsPropSendErrorMessage function adds an error
message to a list of error messages displayed by calling the
ADsPropShowErrorDialog function.
ADsPropSetHwnd Used to notify the notification object of the property page
window handle.
ADsPropSetHwndWithTitle Used to notify the notification object of the property page
window handle.
ADsPropShowErrorDialog The ADsPropShowErrorDialog function displays a dialog box
that contains the error messages accumulated through calls
to the ADsPropSendErrorMessage function or the
WM_ADSPROP_NOTIFY_ERROR.
Begin The IDsAdminNotifyHandler::Begin method is called when an
event that the notification handler has requested is occurring.
The notification handler specifies the events to receive
notifications for when IDsAdminNotifyHandler::Initialize is
called.
BFFCALLBACK Receives event notifications from the Active Directory Domain
Services container browser dialog box.
BrowseTo The IDsBrowseDomainTree::BrowseTo method displays a
dialog box used to browse for a domain.
Clear Empties the contents of the query store.
Commit The IDsAdminNewObjPrimarySite::Commit method causes a
single-page primary object creation extension's
IDsAdminNewObjExt::WriteData method to be called and
writes the temporary object to persistent memory.
CreateModal The IDsAdminCreateObj::CreateModal method displays the
object creation wizard and returns the newly created object.
The IDsAdminCreateObj::Initialize method must be called
before IDsAdminCreateObj::CreateModal can be called.
CreateNew The IDsAdminNewObjPrimarySite::CreateNew method
enables a primary object creation extension to create a
temporary directory service object in Active Directory
Domain Services.
DsAddressToSiteNamesA Obtains the site names corresponding to the specified
addresses.
DsAddressToSiteNamesExA Obtains the site and subnet names corresponding to the
addresses specified.
DsAddressToSiteNamesExW Obtains the site and subnet names corresponding to the
addresses specified.
T IT L E DESC RIP T IO N
DsAddressToSiteNamesW Obtains the site names corresponding to the specified
addresses.
DsAddSidHistoryA Retrieves the primary account security identifier (SID) of a
security principal from one domain and adds it to the
sIDHistory attribute of a security principal in another domain
in a different forest.
DsAddSidHistoryW Retrieves the primary account security identifier (SID) of a
security principal from one domain and adds it to the
sIDHistory attribute of a security principal in another domain
in a different forest.
DsBindA Binds to a domain controller.
DsBindingSetTimeout The DsBindingSetTimeout function sets the timeout value
that is honored by all RPC calls that use the specified binding
handle. RPC calls that required more time than the timeout
value are canceled.
DsBindToISTGA Binds to the computer that holds the Inter-Site Topology
Generator (ISTG) role in the domain of the local computer.
DsBindToISTGW Binds to the computer that holds the Inter-Site Topology
Generator (ISTG) role in the domain of the local computer.
DsBindW Binds to a domain controller.
DsBindWithCredA Binds to a domain controller using the specified credentials.
DsBindWithCredW Binds to a domain controller using the specified credentials.
DsBindWithSpnA Binds to a domain controller using the specified credentials
and a specific service principal name (SPN) for mutual
authentication.
DsBindWithSpnExA Binds to a domain controller using the specified credentials
and a specific service principal name (SPN) for mutual
authentication.
DsBindWithSpnExW Binds to a domain controller using the specified credentials
and a specific service principal name (SPN) for mutual
authentication.
DsBindWithSpnW Binds to a domain controller using the specified credentials
and a specific service principal name (SPN) for mutual
authentication.
DsBrowseForContainerA Displays a dialog box used to browse for container objects in
Active Directory Domain Services.
DsBrowseForContainerW Displays a dialog box used to browse for container objects in
Active Directory Domain Services.
T IT L E DESC RIP T IO N
DsClientMakeSpnForTargetServerA Constructs a service principal name (SPN) that identifies a
specific server to use for authentication.
DsClientMakeSpnForTargetServerW Constructs a service principal name (SPN) that identifies a
specific server to use for authentication.
DsCrackNamesA Converts an array of directory service object names from one
format to another.
DsCrackNamesW Converts an array of directory service object names from one
format to another.
DsCrackSpnA Parses a service principal name (SPN) into its component
strings.
DsCrackSpnW Parses a service principal name (SPN) into its component
strings.
DsCrackUnquotedMangledRdnA The DsCrackUnquotedMangledRdn function unmangles
(unencodes) a given relative distinguished name and returns
both the decoded GUID and the mangling type used.
DsCrackUnquotedMangledRdnW The DsCrackUnquotedMangledRdn function unmangles
(unencodes) a given relative distinguished name and returns
both the decoded GUID and the mangling type used.
DsDeregisterDnsHostRecordsA The DsDeregisterDnsHostRecords function deletes DNS
entries, except for type A records registered by a domain
controller. Only an administrator, account operator, or server
operator may call this function.
DsDeregisterDnsHostRecordsW The DsDeregisterDnsHostRecords function deletes DNS
entries, except for type A records registered by a domain
controller. Only an administrator, account operator, or server
operator may call this function.
DsEnumerateDomainTrustsA Obtains domain trust data for a specified domain.
DsEnumerateDomainTrustsW Obtains domain trust data for a specified domain.
DsFreeDomainControllerInfoA The DsFreeDomainControllerInfo function frees memory that
is allocated by DsGetDomainControllerInfo for data about the
domain controllers in a domain.
DsFreeDomainControllerInfoW The DsFreeDomainControllerInfo function frees memory that
is allocated by DsGetDomainControllerInfo for data about the
domain controllers in a domain.
DsFreeNameResultA Frees the memory held by a DS_NAME_RESULT structure.
DsFreeNameResultW Frees the memory held by a DS_NAME_RESULT structure.
DsFreePasswordCredentials Frees memory allocated for a credentials structure by the
DsMakePasswordCredentials function.
T IT L E DESC RIP T IO N
DsFreeSchemaGuidMapA Frees memory that the DsMapSchemaGuids function has
allocated for a DS_SCHEMA_GUID_MAP structure.
DsFreeSchemaGuidMapW Frees memory that the DsMapSchemaGuids function has
allocated for a DS_SCHEMA_GUID_MAP structure.
DsFreeSpnArrayA Frees an array returned from the DsGetSpn function.
DsFreeSpnArrayW Frees an array returned from the DsGetSpn function.
DsGetDcCloseW Closes a domain controller enumeration operation.
DsGetDcNameA Returns the name of a domain controller in a specified
domain.
DsGetDcNameW Returns the name of a domain controller in a specified
domain.
DsGetDcNextA Retrieves the next domain controller in a domain controller
enumeration operation.
DsGetDcNextW Retrieves the next domain controller in a domain controller
enumeration operation.
DsGetDcOpenA Opens a new domain controller enumeration operation.
DsGetDcOpenW Opens a new domain controller enumeration operation.
DsGetDcSiteCoverageA The DsGetDcSiteCoverage function returns the site names of
all sites covered by a domain controller.
DsGetDcSiteCoverageW The DsGetDcSiteCoverage function returns the site names of
all sites covered by a domain controller.
DsGetDomainControllerInfoA Retrieves data about the domain controllers in a domain.
DsGetDomainControllerInfoW Retrieves data about the domain controllers in a domain.
DsGetForestTrustInformationW Obtains forest trust data for a specified domain.
DsGetFriendlyClassName Retrieves the localized name for an object class.
DsGetIcon Obtains the icon for a given object class.
DsGetRdnW Retrieves the key and value of the first relative distinguished
name and a pointer to the next relative distinguished name
from a distinguished name string.
DsGetSiteNameA The DsGetSiteName function returns the name of the site
where a computer resides.
T IT L E DESC RIP T IO N
DsGetSiteNameW The DsGetSiteName function returns the name of the site
where a computer resides.
DsGetSpnA The DsGetSpn function constructs an array of one or more
service principal names (SPNs). Each name in the array
identifies an instance of a service. These SPNs may be
registered with the directory service (DS) using the
DsWriteAccountSpn function.
DsGetSpnW The DsGetSpn function constructs an array of one or more
service principal names (SPNs). Each name in the array
identifies an instance of a service. These SPNs may be
registered with the directory service (DS) using the
DsWriteAccountSpn function.
DsInheritSecurityIdentityA Appends the objectSid and sidHistory attributes of
SrcPrincipal to the sidHistory of DstPrincipal and then deletes
SrcPrincipal, all in a single transaction.
DsInheritSecurityIdentityW Appends the objectSid and sidHistory attributes of
SrcPrincipal to the sidHistory of DstPrincipal and then deletes
SrcPrincipal, all in a single transaction.
DsIsMangledDnA The DsIsMangledDn function determines if the first relative
distinguished name (RDN) in a distinguished name (DN) is a
mangled name of a given type.
DsIsMangledDnW The DsIsMangledDn function determines if the first relative
distinguished name (RDN) in a distinguished name (DN) is a
mangled name of a given type.
DsIsMangledRdnValueA Determines if a given relative distinguished name value is a
mangled name of the given type.
DsIsMangledRdnValueW Determines if a given relative distinguished name value is a
mangled name of the given type.
DsListDomainsInSiteA Lists all the domains in a site.
DsListDomainsInSiteW Lists all the domains in a site.
DsListInfoForServerA The DsListInfoForServer function lists miscellaneous data for a
server.
DsListInfoForServerW The DsListInfoForServer function lists miscellaneous data for a
server.
DsListRolesA The DsListRoles function lists roles recognized by the server.
DsListRolesW The DsListRoles function lists roles recognized by the server.
DsListServersForDomainInSiteA Lists all the servers in a domain in a site.
DsListServersForDomainInSiteW Lists all the servers in a domain in a site.
T IT L E DESC RIP T IO N
DsListServersInSiteA Lists all the servers in a site.
DsListServersInSiteW Lists all the servers in a site.
DsListSitesA Lists all the sites in the enterprise forest.
DsListSitesW Lists all the sites in the enterprise forest.
DsMakePasswordCredentialsA Constructs a credential handle suitable for use with the
DsBindWithCred function.
DsMakePasswordCredentialsW Constructs a credential handle suitable for use with the
DsBindWithCred function.
DsMakeSpnA Constructs a service principal name (SPN) that identifies a
service instance.
DsMakeSpnW Constructs a service principal name (SPN) that identifies a
service instance.
DsMapSchemaGuidsA Converts GUIDs of directory service schema objects to their
display names.
DsMapSchemaGuidsW Converts GUIDs of directory service schema objects to their
display names.
DsMergeForestTrustInformationW Merges the changes from a new forest trust data structure
with an old forest trust data structure.
DsQuerySitesByCostA Gets the communication cost between one site and one or
more other sites.
DsQuerySitesByCostW Gets the communication cost between one site and one or
more other sites.
DsQuerySitesFree Frees the memory allocated by the DsQuerySitesByCost
function.
DsQuoteRdnValueA Converts an RDN into a quoted RDN value, if the RDN value
contains characters that require quotes.
DsQuoteRdnValueW Converts an RDN into a quoted RDN value, if the RDN value
contains characters that require quotes.
DsRemoveDsDomainA Removes all traces of a domain naming context from the
global area of the directory service.
DsRemoveDsDomainW Removes all traces of a domain naming context from the
global area of the directory service.
DsRemoveDsServerA The DsRemoveDsServer function removes all traces of a
directory service agent (DSA) from the global area of the
directory service.
T IT L E DESC RIP T IO N
DsRemoveDsServerW The DsRemoveDsServer function removes all traces of a
directory service agent (DSA) from the global area of the
directory service.
DsReplicaAddA Adds a replication source reference to a destination naming
context.
DsReplicaAddW Adds a replication source reference to a destination naming
context.
DsReplicaConsistencyCheck Invokes the Knowledge Consistency Checker (KCC) to verify
the replication topology.
DsReplicaDelA Removes a replication source reference from a destination
naming context (NC).
DsReplicaDelW Removes a replication source reference from a destination
naming context (NC).
DsReplicaFreeInfo Frees the replication state data structure allocated by the
DsReplicaGetInfo or DsReplicaGetInfo2 functions.
DsReplicaGetInfo2W Retrieves replication state data from the directory service. This
function allows paging of results in cases where there are
more than 1000 entries to retrieve.
DsReplicaGetInfoW Retrieves replication state data from the directory service.
DsReplicaModifyA Modifies an existing replication source reference for a
destination naming context.
DsReplicaModifyW Modifies an existing replication source reference for a
destination naming context.
DsReplicaSyncA Synchronizes a destination naming context (NC) with one of
its sources.
DsReplicaSyncAllA Synchronizes a server with all other servers, using transitive
replication, as necessary.
DsReplicaSyncAllW Synchronizes a server with all other servers, using transitive
replication, as necessary.
DsReplicaSyncW Synchronizes a destination naming context (NC) with one of
its sources.
DsReplicaUpdateRefsA Adds or removes a replication reference for a destination from
a source naming context.
DsReplicaUpdateRefsW Adds or removes a replication reference for a destination from
a source naming context.
DsReplicaVerifyObjectsA Verifies all objects for a naming context with a source.
T IT L E DESC RIP T IO N
DsReplicaVerifyObjectsW Verifies all objects for a naming context with a source.
DsRoleFreeMemory Frees memory allocated by the
DsRoleGetPrimaryDomainInformation function.
DsRoleGetPrimaryDomainInformation Retrieves state data for the computer.
DsServerRegisterSpnA The DsServerRegisterSpn function composes two SPNs for a
host-based service.
DsServerRegisterSpnW The DsServerRegisterSpn function composes two SPNs for a
host-based service.
DsUnBindA The DsUnBind function finds an RPC session with a domain
controller and unbinds a handle to the directory service (DS).
DsUnBindW The DsUnBind function finds an RPC session with a domain
controller and unbinds a handle to the directory service (DS).
DsUnquoteRdnValueA The DsUnquoteRdnValue function is a client call that converts
a quoted RDN value back to an unquoted RDN value.
DsUnquoteRdnValueW The DsUnquoteRdnValue function is a client call that converts
a quoted RDN value back to an unquoted RDN value.
DsValidateSubnetNameA The DsValidateSubnetName function validates a subnet name
in the form xxx.xxx.xxx.xxx/YY.
DsValidateSubnetNameW The DsValidateSubnetName function validates a subnet name
in the form xxx.xxx.xxx.xxx/YY.
DsWriteAccountSpnA Writes an array of service principal names (SPNs) to the
servicePrincipalName attribute of a specified user or computer
account object in Active Directory Domain Services.
DsWriteAccountSpnW Writes an array of service principal names (SPNs) to the
servicePrincipalName attribute of a specified user or computer
account object in Active Directory Domain Services.
End The IDsAdminNotifyHandler::End method is called after the
notification event has occurred. This method is called even if
the notification process is canceled.
EnumClassAttributes Enumerates the attributes for a given object class.
FlushCachedDomains The IDsBrowseDomainTree::FlushCachedDomains method
frees the cached domain list.
FreeDomains The IDsBrowseDomainTree::FreeDomains method frees the
memory allocated by the IDsBrowseDomainTree::GetDomains
method.
GetAttributeADsType Retrieves the attribute type for a given attribute.
T IT L E DESC RIP T IO N
GetClassCreationInfo Retrieves data about the class creation wizard objects for a
given object class.
GetDisplaySpecifier The IDsDisplaySpecifier::GetDisplaySpecifier method binds to
the display specifier object for a given class in Active Directory
Domain Services.
GetDomains The IDsBrowseDomainTree::GetDomains method retrieves the
trust domains of the current computer. The current computer
is set using the IDsBrowseDomainTree::SetComputer method.
GetFriendlyAttributeName The IDsDisplaySpecifier::GetFriendlyAttributeName method
retrieves from the localized name of an attribute of a given
object class.
GetFriendlyClassName The IDsDisplaySpecifier::GetFriendlyClassName method
retrieves the localized name for an object class.
GetIcon The IDsDisplaySpecifier::GetIcon method obtains the icon for
a given object class.
GetIconLocation Obtains the icon location for a given object class.
GetPageCounts The IDsAdminNewObj::GetPageCounts method obtains the
total number of pages in the wizard as well as the index of the
first page of the extension.
GetSummaryInfo The IDsAdminNewObjExt::GetSummaryInfo method obtains a
string that contains a summary of the data gathered by the
new object wizard extension page. This string is displayed in
the wizard Finish page.
Initialize Initializes the query form extension object.
Initialize The IDsObjectPicker::Initialize method initializes the object
picker dialog box with data about the scopes, filters, and
options used by the object picker dialog box.
Initialize The IDsAdminCreateObj::Initialize method initializes an
IDsAdminCreateObj object with data about the container
where the object will be created, the class of the object to be
created and, possibly, the source object to copy from.
Initialize The IDsAdminNewObjExt::Initialize method initializes an object
creation wizard extension.
Initialize Called to initialize the notification handler.
InvokeDialog Displays a modal object picker dialog box and returns the
user selections.
IsClassContainer Determines if a given object class is a container.
T IT L E DESC RIP T IO N
LPCQADDFORMSPROC Called by a query form extension to add a form to the query
dialog box.
LPCQADDPAGESPROC Called by a query form extension to add a page to a query
form in the query dialog box.
LPCQPAGEPROC Called by the query dialog box to notify the query form
extension of events that occur in a query page.
LPDSENUMATTRIBUTES The DSEnumAttributesCallback function is an application-
defined callback function that is called once for each attribute
enumerated by the IDsDisplaySpecifier::EnumClassAttributes
method.
Notify Called for each object after the confirmation dialog box has
been displayed and the notification handler is selected in the
confirmation dialog box.
OnError Called when an error has occurred in the wizard pages.
OpenQueryWindow The ICommonQuery::OpenQueryWindow method displays
the directory service query dialog. This method does not
return until the dialog box has been closed by the user.
ReadInt Reads an integer value from the query store.
ReadString Reads a string from the query store.
ReadStruct Reads a structure from the query store.
SetButtons The IDsAdminNewObj::SetButtons method enables or disables
the "Next" command button in the wizard for a specific page.
SetComputer Specifies the computer and credentials to be used by this
instance of the IDsBrowseDomainTree interface.
SetCredentials Use this method to override the user credentials, passing new
credentials for the account profile to be used.
SetLanguageID Changes the locale used by the IDsDisplaySpecifier object to a
specified language.
SetObject The IDsAdminNewObjExt::SetObject method provides the
object creation extension with a pointer to the directory
object created.
SetServer Specifies the server from which display specifier data is
obtained.
WriteData Enables the object creation wizard extension to write its data
into an object in Active Directory Domain Services.
WriteInt Writes an integer value to the query store.
T IT L E DESC RIP T IO N
WriteString Writes a string to the query store.
WriteStruct Writes a structure to the query store.
Interfaces
T IT L E DESC RIP T IO N
ICommonQuery Used to programmatically display the system-supplied
directory service query dialog box.
IDsAdminCreateObj Used by an application or component to programmatically
start a creation wizard for a specified object class.
IDsAdminNewObj The IDsAdminNewObj interface is used by a primary or
secondary object creation wizard extension to obtain page
count data and to control the command buttons in the
wizard.
IDsAdminNewObjExt The IDsAdminNewObjExt interface is implemented by an
object creation wizard extension.
IDsAdminNewObjPrimarySite The IDsAdminNewObjPrimarySite interface is implemented by
the system and is used by a primary object creation extension
to create a new temporary object in Active Directory Domain
Services and then commit the object to persistent memory.
IDsAdminNotifyHandler The IDsAdminNotifyHandler interface is implemented by an
Active Directory administrative notification handler.
IDsBrowseDomainTree The IDsBrowseDomainTree interface is used by an application
to display a domain browser dialog box and/or obtain a list of
trust domains related to a given computer.
IDsDisplaySpecifier Provides access to Active Directory Domain Service objects of
the displaySpecifier class.
IDsObjectPicker The IDsObjectPicker interface is used by an application to
initialize and display an object picker dialog box. To create an
instance of this interface, call CoCreateInstance with the
CLSID_DsObjectPicker class identifier as shown below.
IDsObjectPickerCredentials The IDsObjectPickerCredentials interface allows you to
override credentials for the IDsObjectPicker object
implementing this interface.
IPersistQuery Used to store and retrieve query parameters to and from
persistent storage.
IQueryForm Implemented by a query form extension object to allow the
form object to add forms and pages to the system-supplied
directory service query dialog box.
Structures
T IT L E DESC RIP T IO N
ADSPROPERROR The ADSPROPERROR structure is used to pass error data to
the notification object with the ADsPropSendErrorMessage
function or the WM_ADSPROP_NOTIFY_ERROR message.
ADSPROPINITPARAMS Used with the ADsPropGetInitInfo function to obtain object
data that a display specifier applies to.
CQFORM Used to define a query form added to the query dialog box
with the CQAddFormsProc callback function.
CQPAGE Used to define a query page added to a form in the query
dialog box with the CQAddPagesProc callback function.
DOMAIN_CONTROLLER_INFOA Used with the DsGetDcName function to receive data about a
domain controller.
DOMAIN_CONTROLLER_INFOW Used with the DsGetDcName function to receive data about a
domain controller.
DOMAIN_DESC Contains data about an element in a domain tree obtained
with the IDsBrowseDomainTree::GetDomains method.
DOMAIN_TREE The DOMAINTREE structure contains data about a node in a
domain tree obtained with the
IDsBrowseDomainTree::GetDomains method. Each of the
domains in the tree node are represented by a DOMAINDESC
structure.
DS_DOMAIN_CONTROLLER_INFO_1A The DS_DOMAIN_CONTROLLER_INFO_1 structure contains
data about a domain controller. This structure is returned by
the DsGetDomainControllerInfo function.
DS_DOMAIN_CONTROLLER_INFO_1W The DS_DOMAIN_CONTROLLER_INFO_1 structure contains
data about a domain controller. This structure is returned by
the DsGetDomainControllerInfo function.
DS_DOMAIN_CONTROLLER_INFO_2A The DS_DOMAIN_CONTROLLER_INFO_2 structure contains
data about a domain controller. This structure is returned by
the DsGetDomainControllerInfo function.
DS_DOMAIN_CONTROLLER_INFO_2W The DS_DOMAIN_CONTROLLER_INFO_2 structure contains
data about a domain controller. This structure is returned by
the DsGetDomainControllerInfo function.
DS_DOMAIN_CONTROLLER_INFO_3A The DS_DOMAIN_CONTROLLER_INFO_3 structure contains
data about a domain controller. This structure is returned by
the DsGetDomainControllerInfo function.
DS_DOMAIN_CONTROLLER_INFO_3W The DS_DOMAIN_CONTROLLER_INFO_3 structure contains
data about a domain controller. This structure is returned by
the DsGetDomainControllerInfo function.
T IT L E DESC RIP T IO N
DS_DOMAIN_TRUSTSA Used with the DsEnumerateDomainTrusts function to contain
trust data for a domain.
DS_DOMAIN_TRUSTSW Used with the DsEnumerateDomainTrusts function to contain
trust data for a domain.
DS_NAME_RESULT_ITEMA The DS_NAME_RESULT_ITEM structure contains a name
converted by the DsCrackNames function, along with
associated error and domain data.
DS_NAME_RESULT_ITEMW The DS_NAME_RESULT_ITEM structure contains a name
converted by the DsCrackNames function, along with
associated error and domain data.
DS_NAME_RESULTA The DS_NAME_RESULT structure is used with the
DsCrackNames function to contain the names converted by
the function.
DS_NAME_RESULTW The DS_NAME_RESULT structure is used with the
DsCrackNames function to contain the names converted by
the function.
DS_REPL_ATTR_META_DATA The DS_REPL_ATTR_META_DATA structure is used with the
DsReplicaGetInfo and DsReplicaGetInfo2 functions to contain
replication state data for an object attribute.
DS_REPL_ATTR_META_DATA_2 The DS_REPL_ATTR_META_DATA_2 structure is used with the
DsReplicaGetInfo and DsReplicaGetInfo2 functions to contain
replication state data for an object attribute.
DS_REPL_ATTR_META_DATA_BLOB The DS_REPL_ATTR_META_DATA_BLOB structure is used to
contain replication state data for an object attribute.
DS_REPL_ATTR_VALUE_META_DATA The DS_REPL_ATTR_VALUE_META_DATA structure is used with
the DsReplicaGetInfo2 function to provide metadata for a
collection of attribute values.
DS_REPL_ATTR_VALUE_META_DATA_2 Used with the DsReplicaGetInfo2 function to provide
metadata for a collection of attribute values.
DS_REPL_ATTR_VALUE_META_DATA_EXT Provides metadata for a collection of attribute replication
values.
DS_REPL_CURSOR The DS_REPL_CURSOR structure contains inbound replication
state data with respect to all replicas of a given naming
context, as returned by the DsReplicaGetInfo and
DsReplicaGetInfo2 functions.
DS_REPL_CURSOR_2 The DS_REPL_CURSOR_2 structure contains inbound
replication state data with respect to all replicas of a given
naming context, as returned by the DsReplicaGetInfo2
function. This structure is an enhanced version of the
DS_REPL_CURSOR structure.
T IT L E DESC RIP T IO N
DS_REPL_CURSOR_3W The DS_REPL_CURSOR_3 structure contains inbound
replication state data with respect to all replicas of a given
naming context, as returned by the DsReplicaGetInfo2
function.
DS_REPL_CURSOR_BLOB The DS_REPL_CURSOR_BLOB structure contains inbound
replication state data with respect to all replicas of a given
naming context.
DS_REPL_CURSORS The DS_REPL_CURSORS structure is used with the
DsReplicaGetInfo and DsReplicaGetInfo2 function to provide
replication state data with respect to all replicas of a given
naming context.
DS_REPL_CURSORS_2 The DS_REPL_CURSORS_2 structure is used with the
DsReplicaGetInfo2 function to provide replication state data
with respect to all replicas of a given naming context.
DS_REPL_CURSORS_3W The DS_REPL_CURSORS_3 structure is used with the
DsReplicaGetInfo2 function to provide replication state data
with respect to all replicas of a given naming context.
DS_REPL_KCC_DSA_FAILURESW The DS_REPL_KCC_DSA_FAILURES structure contains an array
of DS_REPL_KCC_DSA_FAILURE structures, which in turn
contain replication state data with respect to inbound
replication partners, as returned by the DsReplicaGetInfo and
DsReplicaGetInfo2 functions.
DS_REPL_KCC_DSA_FAILUREW The DS_REPL_KCC_DSA_FAILURE structure contains replication
state data about a specific inbound replication partner, as
returned by the DsReplicaGetInfo and DsReplicaGetInfo2
function.
DS_REPL_KCC_DSA_FAILUREW_BLOB Contains replication state data with respect to a specific
inbound replication partner.
DS_REPL_NEIGHBORSW The DS_REPL_NEIGHBORS structure is used with the
DsReplicaGetInfo and DsReplicaGetInfo2 functions to provide
inbound replication state data for naming context and source
server pairs.
DS_REPL_NEIGHBORW Contains inbound replication state data for a particular
naming context and source server pair, as returned by the
DsReplicaGetInfo and DsReplicaGetInfo2 functions.
DS_REPL_NEIGHBORW_BLOB Contains inbound replication state data for a particular
naming context and source server pair.
DS_REPL_OBJ_META_DATA The DS_REPL_OBJ_META_DATA structure contains an array of
DS_REPL_ATTR_META_DATA structures. These structures
contain replication state data for past and present attributes
for a given object.
T IT L E DESC RIP T IO N
DS_REPL_OBJ_META_DATA_2 The DS_REPL_OBJ_META_DATA_2 structure contains an array
of DS_REPL_ATTR_META_DATA_2 structures, which in turn
contain replication state data for the attributes (past and
present) for a given object, as returned by the
DsReplicaGetInfo2 function.
DS_REPL_OPW The DS_REPL_OP structure describes a replication task
currently executing or pending execution, as returned by the
DsReplicaGetInfo or DsReplicaGetInfo2 function.
DS_REPL_OPW_BLOB The DS_REPL_OPW_BLOB structure describes a replication
task currently executing or pending execution.
DS_REPL_PENDING_OPSW Contains an array of DS_REPL_OP structures, which in turn
describe the replication tasks currently executing and queued
to execute, as returned by the DsReplicaGetInfo and
DsReplicaGetInfo2 functions.
DS_REPL_QUEUE_STATISTICSW Used to contain replication queue statistics.
DS_REPL_VALUE_META_DATA Used with the DS_REPL_ATTR_VALUE_META_DATA structure
to contain attribute value replication metadata.
DS_REPL_VALUE_META_DATA_2 Used with the DS_REPL_ATTR_VALUE_META_DATA_2 structure
to contain attribute value replication metadata.
DS_REPL_VALUE_META_DATA_BLOB Used to contain attribute value replication metadata.
DS_REPL_VALUE_META_DATA_BLOB_EXT Contains attribute value replication metadata.
DS_REPL_VALUE_META_DATA_EXT Contains attribute replication meta data for the
DS_REPL_ATTR_VALUE_META_DATA_EXT structure.
DS_REPSYNCALL_ERRINFOA The DS_REPSYNCALL_ERRINFO structure is used with the
DS_REPSYNCALL_UPDATE structure to contain errors
generated by the DsReplicaSyncAll function during replication.
DS_REPSYNCALL_ERRINFOW The DS_REPSYNCALL_ERRINFO structure is used with the
DS_REPSYNCALL_UPDATE structure to contain errors
generated by the DsReplicaSyncAll function during replication.
DS_REPSYNCALL_SYNCA The DS_REPSYNCALL_SYNC structure identifies a single
replication operation performed between a source, and
destination, server by the DsReplicaSyncAll function.
DS_REPSYNCALL_SYNCW The DS_REPSYNCALL_SYNC structure identifies a single
replication operation performed between a source, and
destination, server by the DsReplicaSyncAll function.
DS_REPSYNCALL_UPDATEA The DS_REPSYNCALL_UPDATE structure contains status data
about the replication performed by the DsReplicaSyncAll
function.
T IT L E DESC RIP T IO N
DS_REPSYNCALL_UPDATEW The DS_REPSYNCALL_UPDATE structure contains status data
about the replication performed by the DsReplicaSyncAll
function.
DS_SCHEMA_GUID_MAPA Contains the results of a call to DsMapSchemaGuids.
DS_SCHEMA_GUID_MAPW Contains the results of a call to DsMapSchemaGuids.
DS_SELECTION The DS_SELECTION structure contains data about an object
the user selected from an object picker dialog box. The
DS_SELECTION_LIST structure contains an array of
DS_SELECTION structures.
DS_SELECTION_LIST The DS_SELECTION_LIST structure contains data about the
objects the user selected from an object picker dialog box.
DS_SITE_COST_INFO The DS_SITE_COST_INFO structure is used with the
DsQuerySitesByCost function to contain communication cost
data.
DSA_NEWOBJ_DISPINFO Used with the IDsAdminNewObjExt::Initialize method to
supply additional data about an Active Directory Domain
Services object creation wizard.
DSBITEMA Contains data about an item in the Active Directory container
browser dialog box.
DSBITEMW Contains data about an item in the Active Directory container
browser dialog box.
DSBROWSEINFOA The DSBROWSEINFO structure is used with the
DsBrowseForContainer function to supply and return data
about the Active Directory container browser dialog box.
DSBROWSEINFOW The DSBROWSEINFO structure is used with the
DsBrowseForContainer function to supply and return data
about the Active Directory container browser dialog box.
DSCLASSCREATIONINFO Used with the IDsDisplaySpecifier::GetClassCreationInfo
method to hold data about the class creation wizard objects
for an object class.
DSCOLUMN The DSCOLUMN structure represents a column in the
directory services query dialog box. An array of this structure
is contained in the DSQUERYPARAMS structure.
DSDISPLAYSPECOPTIONS Used to supply data to a context menu or property page
extension about the display specifiers used.
DSOBJECT Contains directory object data.
DSOBJECTNAMES The DSOBJECTNAMES structure is used to contain directory
object data for use by an Active Directory property sheet or
context menu extension.
T IT L E DESC RIP T IO N
DSOP_FILTER_FLAGS Contains flags that indicate the types of objects presented to
the user for a specified scope or scopes.
DSOP_INIT_INFO The DSOP_INIT_INFO structure contains data required to
initialize an object picker dialog box. This structure is used
with the IDsObjectPicker::Initialize method.
DSOP_SCOPE_INIT_INFO The DSOP_SCOPE_INIT_INFO structure describes one or more
scope types that have the same attributes.
DSOP_UPLEVEL_FILTER_FLAGS The DSOP_UPLEVEL_FILTER_FLAGS structure contains flags
that indicate the filters to use for an up-level scope.
DSPROPERTYPAGEINFO The DSPROPERTYPAGEINFO structure is used by an Active
Directory property sheet extension to obtain static
registration data for the extension. This structure is supplied
by the CFSTR_DSPROPERTYPAGEINFO clipboard format.
DSQUERYCLASSLIST The DSQUERYCLASSLIST structure describes a list of classes
against which a directory service query is made.
DSQUERYINITPARAMS Describes the data used to initialize a browse dialog box in
the directory service query.
DSQUERYPARAMS The DSQUERYPARAMS structure contains query data used by
the directory service query when searching the directory
service.
DSROLE_OPERATION_STATE_INFO Used with the DsRoleGetPrimaryDomainInformation function
to contain the operational state data for a computer.
DSROLE_PRIMARY_DOMAIN_INFO_BASIC Used with the DsRoleGetPrimaryDomainInformation function
to contain domain data.
DSROLE_UPGRADE_STATUS_INFO Used with the DsRoleGetPrimaryDomainInformation function
to contain domain upgrade status data.
OPENQUERYWINDOW Used with the ICommonQuery::OpenQueryWindow method
to initialize the directory service query dialog box.
SCHEDULE Used with the DsReplicaAdd and DsReplicaModify functions to
contain replication schedule data for a replication source.
SCHEDULE_HEADER Used to contain the replication schedule data for a replication
source.
Active Directory Lightweight Directory Services
2/7/2020 • 2 minutes to read • Edit Online
Overview of the Active Directory Lightweight Directory Services technology.
The Active Directory Lightweight Directory Services technology is not associated with any headers.
For programming guidance for this technology, see:
Active Directory Lightweight Directory Services
Functions
T IT L E DESC RIP T IO N
DsBindByInstanceA Explicitly binds to any AD LDS or Active Directory instance.
DsBindByInstanceW Explicitly binds to any AD LDS or Active Directory instance.
Active Directory Rights Management Services SDK
2/7/2020 • 2 minutes to read • Edit Online
Overview of the Active Directory Rights Management Services SDK technology.
To develop Active Directory Rights Management Services SDK, you need these headers:
msdrm.h
msdrmdefs.h
For programming guidance for this technology, see:
Active Directory Rights Management Services SDK
Active Directory Service Interfaces
2/7/2020 • 18 minutes to read • Edit Online
Overview of the Active Directory Service Interfaces technology.
To develop Active Directory Service Interfaces, you need these headers:
adshlp.h
For programming guidance for this technology, see:
Active Directory Service Interfaces
Glossary
Enumerations
T IT L E DESC RIP T IO N
ADS_ACEFLAG_ENUM The ADS_ACEFLAG_ENUM enumeration is used to specify the
behavior of an Access Control Entry (ACE) for an Active
Directory object.
ADS_ACETYPE_ENUM Used to specify the type of an access-control entry for Active
Directory objects.
ADS_AUTHENTICATION_ENUM Specifies authentication options used in ADSI for binding to
directory service objects.
ADS_CHASE_REFERRALS_ENUM The ADS_CHASE_REFERRALS_ENUM enumeration specifies if,
and how, referral chasing occurs.
ADS_DEREFENUM The ADS_DEREFENUM enumeration specifies the process
through which aliases are dereferenced.
ADS_DISPLAY_ENUM The ADS_DISPLAY_ENUM enumeration specifies how a path is
to be displayed.
ADS_ESCAPE_MODE_ENUM Specifies how escape characters are displayed in a directory
path.
ADS_FLAGTYPE_ENUM The ADS_FLAGTYPE_ENUM enumeration specifies values that
can be used to indicate the presence of the ObjectType or
InheritedObjectType fields in the access-control entry (ACE).
ADS_FORMAT_ENUM Specifies the available path value types used by the
IADsPathname::Retrieve method.
ADS_GROUP_TYPE_ENUM Specifies the type of group objects in ADSI.
ADS_NAME_INITTYPE_ENUM The ADS_NAME_INITTYPE_ENUM enumeration specifies the
types of initialization to perform on a NameTranslate object. It
is used in the IADsNameTranslate interface.
T IT L E DESC RIP T IO N
ADS_NAME_TYPE_ENUM Specifies the formats used for representing distinguished
names.
ADS_OPTION_ENUM Contains values that indicate the options that can be retrieved
or set with the IADsObjectOptions.GetOption and
IADsObjectOptions.SetOption methods.
ADS_PASSWORD_ENCODING_ENUM Identifies the type of password encoding used with the
ADS_OPTION_PASSWORD_METHOD option in the
IADsObjectOptions::GetOption and
IADsObjectOptions::SetOption methods.
ADS_PATHTYPE_ENUM The ADS_PATHTYPE_ENUM enumeration specifies the type of
object on which the IADsSecurityUtility interface is going to
add or modify a security descriptor.
ADS_PREFERENCES_ENUM The ADS_PREFERENCES_ENUM enumeration specifies the
query preferences of the OLE DB provider for ADSI.
ADS_PROPERTY_OPERATION_ENUM Specifies ways to update a named property in the cache.
ADS_RIGHTS_ENUM Specifies access rights assigned to an Active Directory object.
ADS_SCOPEENUM Specifies the scope of a directory search.
ADS_SD_CONTROL_ENUM The ADS_SD_CONTROL_ENUM enumeration specifies control
flags for a security descriptor.
ADS_SD_FORMAT_ENUM The ADS_SD_FORMAT_ENUM enumeration specifies the
format that the security descriptor of an object will be
converted to by the IADsSecurityUtility interface.
ADS_SD_REVISION_ENUM Specifies the revision number of the access-control entry
(ACE), or the access-control list (ACL), for Active Directory.
ADS_SEARCHPREF_ENUM Specifies preferences for an IDirectorySearch object.
ADS_SECURITY_INFO_ENUM Specifies the available options for examining security data of
an object.
ADS_SETTYPE_ENUM The ADS_SETTYPE_ENUM enumeration specifies the available
pathname format used by the IADsPathname::Set method.
ADS_STATUSENUM Specifies the status of a search preference set with the
IDirectorySearch::SetSearchPreference method.
ADS_SYSTEMFLAG_ENUM The ADS_SYSTEMFLAG_ENUM enumeration defines some of
the values that can be assigned to the systemFlags attribute.
Some of the values in the enumeration are specific to
attributeSchema objects; other values can be set on objects of
any class.
ADS_USER_FLAG_ENUM Defines the flags used for setting user properties in the
directory.
T IT L E DESC RIP T IO N
ADSI_DIALECT_ENUM The ADSI_DIALECT_ENUM enumeration specifies query
dialects used in the OLE DB provider for ADSI.
ADSTYPEENUM Used to identify the data type of an ADSI property value.
Functions
T IT L E DESC RIP T IO N
AbandonSearch The IDirectorySearch::AbandonSearch method abandons a
search initiated by an earlier call to the ExecuteSearch method.
Add Adds a named item to the collection.
Add Adds an ADSI object to an existing group.
AddAce The IADsAccessControlList::AddAce method adds an
IADsAccessControlEntry object to the IADsAccessControlList
object.
AddLeafElement Adds an element to the end of the directory path already set
on the Pathname object.
ADsBuildEnumerator The ADsBuildEnumerator function creates an enumerator
object for the specified ADSI container object.
ADsBuildVarArrayInt The ADsBuildVarArrayInt function builds a variant array of
integers from an array of DWORD values.
ADsBuildVarArrayStr The ADsBuildVarArrayStr function builds a variant array from
an array of Unicode strings.
ADsEncodeBinaryData The ADsEncodeBinaryData function converts a binary large
object (BLOB) to the Unicode format suitable to be embedded
in a search filter.
ADsEnumerateNext The ADsEnumerateNext function enumerates through a
specified number of elements from the current cursor position
of the enumerator.
ADsFreeEnumerator Frees an enumerator object created with the
ADsBuildEnumerator function.
ADsGetLastError The ADsGetLastError function retrieves the calling thread's
last-error code value.
ADsGetObject Binds to an object given its path and a specified interface
identifier.
ADsOpenObject Binds to an ADSI object using explicit user name and password
credentials.
T IT L E DESC RIP T IO N
ADsSetLastError The ADsSetLastError sets the last-error code value for the
calling thread.
AllocADsMem Allocates a block of memory of the specified size.
AllocADsStr Allocates memory for and copies a specified string.
BinarySDToSecurityDescriptor Converts a binary security descriptor to an
IADsSecurityDescriptor object.
ChangePassword Changes the user password from the specified old value to a
new value.
Clear Clears the current values of the property value object.
CloseSearchHandle The IDirectorySearch::CloseSearchHandle method closes the
handle to a search result and frees the associated memory.
Continue The IADsServiceOperations::Continue method resumes a
service operation paused by the IADsServiceOperations::Pause
method.
ConvertSecurityDescriptor Converts a security descriptor from one format to another.
CopyAccessList The IADsAccessControlList::CopyAccessList method copies
every access control entry (ACE) in the access-control list
(ACL) to the caller's process space.
CopyAcl The IADsAcl::CopyAcl method makes a copy of the existing
ACL.
CopyHere The IADsContainer::CopyHere method creates a copy of the
specified directory object in this container.
CopyPath Creates a copy of the Pathname object.
CopySecurityDescriptor The IADsSecurityDescriptor::CopySecurityDescriptor method
copies an ADSI security descriptor object that holds security
data about an object.
Create Sets up a request to create a directory object of the specified
schema class and a given name in the container.
CreateDSObject Creates a child of the current directory service object.
Delete Deletes a specified directory object from this container.
DeleteDSObject Deletes a leaf object in a directory tree.
DeleteObject The IADsDeleteOps::DeleteObject method deletes an ADSI
object.
T IT L E DESC RIP T IO N
ExecuteSearch The IDirectorySearch::ExecuteSearch method executes a search
and passes the results to the caller.
FreeADsMem Frees the memory allocated by AllocADsMem or
ReallocADsMem.
FreeADsStr Frees the memory of a string allocated by AllocADsStr or
ReallocADsStr.
FreeColumn The IDirectorySearch::FreeColumn method releases memory
that the IDirectorySearch::GetColumn method allocated for
data for the column.
Get Retrieves a property of a given name from the property cache.
Get Retrieves the name of a directory object in the specified
format.
get__NewEnum The IADsAccessControlList::get__NewEnum method is used to
obtain an enumerator object for the ACL to enumerate ACEs.
get__NewEnum The IADsCollection::get__NewEnum method gets a dependent
enumerator object that implements IEnumVARIANT for this
ADSI collection object. Be aware that there are two underscore
characters in the function name (get__NewEnum).
get__NewEnum Retrieves an enumerator object for the container.
get__NewEnum The IADsMembers::get__NewEnum method gets a dependent
enumerator object that implements IEnumVARIANT for this
ADSI collection object. Be aware that there are two underscore
characters in the function name (get__NewEnum).
get_SecurityMask Determines which elements of the security descriptor to
retrieve or set.
GetAnyDCName Retrieves the DNS name of a domain controller in the local
computer's domain.
GetColumn The IDirectorySearch::GetColumn method gets data from a
named column of the search result.
GetDCSiteName Retrieves the name of the Active Directory site that contains
the local computer.
GetElement Retrieves an element of a directory path.
GetEscapedElement Used to escape special characters in the input path.
GetEx Retrieves, from the property cache, property values of a given
attribute.
GetEx Gets the object names in the specified format.
T IT L E DESC RIP T IO N
GetFirstRow The GetFirstRow method gets the first row of a search result.
This method will issue or reissue a new search, even if this
method has been called before.
GetInfo Loads into the property cache values of the supported
properties of this ADSI object from the underlying directory
store.
GetInfoEx The IADs::GetInfoEx method loads the values of specified
properties of the ADSI object from the underlying directory
store into the property cache.
GetNextColumnName The IDirectorySearch::GetNextColumnName method gets the
name of the next column in the search result that contains
data.
GetNextRow Gets the next row of the search result.
GetNumElements Retrieves the number of elements in the path.
GetObject Retrieves an item of the collection.
GetObject Retrieves an interface for a directory object in the container.
GetObjectAttributes Retrieves one or more specified attributes of the directory
service object.
GetObjectInformation The IDirectoryObject::GetObjectInformation method retrieves
a pointer to an ADS_OBJECT_INFO structure that contains
data regarding the identity and location of a directory service
object.
GetObjectProperty Retrieves an attribute value.
GetOption Gets a provider-specific option for a directory object.
GetPreviousRow The IDirectorySearch::GetPreviousRow method gets the
previous row of the search result. If the provider does not
provide cursor support, it should return E_NOTIMPL.
GetPropertyItem Retrieves the item that matches the name from the list.
GetSecurityDescriptor Retrieves a security descriptor for the specified file, fileshare, or
registry key.
GetTrees Retrieves the DNS names of all the directory trees in the local
computer's forest.
Groups Obtains a collection of the ADSI group objects to which this
user belongs.
Init Initializes a name translate object by binding to a specified
directory server, domain, or global catalog, using the
credentials of the current user.
T IT L E DESC RIP T IO N
InitEx Initializes a name translate object by binding to a specified
directory server, domain, or global catalog, using the specified
user credential.
IsMember Determines if a directory service object is an immediate
member of the group.
Item The IADsPropertyList::Item method retrieves the specified
property item from the list.
Members Retrieves a collection of the immediate members of the group.
MoveHere Moves a specified object to the container that implements this
interface.
Next The IADsPropertyList::Next method gets the next item in the
property list. The returned item is a Property Entry object.
OpenDSObject Binds to an ADSI object, using the given credentials, and
retrieves an IDispatch pointer to the specified object.
Operate Interprets the control code and input parameters according to
the specifications of the provider.
Pause The IADsPrintJobOperations::Pause method halts the
processing of the current print job. Call the
IADsPrintJobOperations::Resume method to continue the
processing.
Pause The IADsPrintQueueOperations::Pause method suspends the
processing of print jobs within a print queue service.
Pause The IADsServiceOperations::Pause method pauses a service
started with the IADsServiceOperations::Start method.
PrintJobs The IADsPrintQueueOperations::PrintJobs method gets an
IADsCollection interface pointer on the collection of the print
jobs processed in this print queue.
PrivateGetIDsOfNames The IADsExtension::PrivateGetIDsOfNames method is called by
the aggregator, ADSI, after ADSI determines that the
extension is used to support a dual or dispatch interface. The
method can use the type data to get DISPID using
IDispatch::GetIDsOfNames.
PrivateInvoke The IADsExtension::PrivateInvoke method is normally called by
ADSI after the IADsExtension::PrivateGetIDsOfNames method.
This method can either have a custom implementation or it
can delegate the operation to IDispatch::DispInvoke method.
Purge The IADsPrintQueueOperations::Purge method clears the print
queue of all print jobs without processing them.
PurgePropertyList Deletes all items from the property list.
T IT L E DESC RIP T IO N
Put Sets the values of an attribute in the ADSI attribute cache.
put_SecurityMask Determines which elements of the security descriptor to
retrieve or set.
PutEx Modifies the values of an attribute in the ADSI attribute cache.
PutObjectProperty Sets an attribute value.
PutPropertyItem Updates the values for an item in the property list.
Qualifiers Returns a collection of ADSI objects that describe additional
qualifiers for this schema class.
Qualifiers Returns a collection of ADSI objects that describe additional
qualifiers of this property.
ReallocADsMem Reallocates and copies an existing memory block.
ReallocADsStr Creates a copy of a Unicode string.
RefreshSchemaCache The IADsADSystemInfo::RefreshSchemaCache method
refreshes the Active Directory schema cache.
Remove The IADsCollection::Remove method removes the named item
from this ADSI collection object.
Remove The IADsGroup::Remove method removes the specified user
object from this group. The operation does not remove the
group object itself even when there is no member remaining
in the group.
RemoveAce Removes an access-control entry (ACE) from the access-
control list (ACL).
RemoveLeafElement Removes the last element from the directory path that has
been set on the Pathname object.
Reset Resets the list to the first item.
ResetPropertyItem Removes the specified item from the list; that is, from the
cache.
Resources The IADsFileServiceOperations::Resources method gets a
pointer to a pointer to the IADsCollection interface on a
collection of the resource objects representing the current
open resources on this file service.
Resume The IADsPrintJobOperations::Resume method continues the
print job halted by the IADsPrintJobOperations::Pause
method.
T IT L E DESC RIP T IO N
Resume The IADsPrintQueueOperations::Resume method resumes
processing of suspended print jobs in the print queue.
Retrieve The IADsPathname::Retrieve method retrieves the path of the
object with different format types.
SecurityDescriptorToBinarySD Converts an IADsSecurityDescriptor object to the binary
security descriptor format.
Sessions The IADsFileServiceOperations::Sessions method gets a
pointer to a pointer to the IADsCollection interface on a
collection of the session objects that represent the current
open sessions for this file service.
Set Directs the directory service to set up a specified object for
name translation.
Set Sets up the Pathname object for parsing a directory path.
SetDisplayType Specifies how to display the path of an object.
SetEx Establishes an array of objects for name translation.
SetInfo The IADs::SetInfo method saves the cached property values of
the ADSI object to the underlying directory store.
SetObjectAttributes The IDirectoryObject::SetObjectAttributes method modifies
data in one or more specified object attributes defined in the
ADS_ATTR_INFO structure.
SetOption Sets a provider-specific option for manipulating a directory
object.
SetPassword The IADsServiceOperations::SetPassword method sets the
password for the account used by the service manager. This
method is called when the security context for this service is
created.
SetPassword Sets the user password to a specified value.
SetSearchPreference Specifies a search preference for obtaining data in a
subsequent search.
SetSecurityDescriptor Sets the security descriptor for the specified file, file share, or
registry key.
Shutdown The IADsComputerOperations::Shutdown method causes a
computer under ADSI control to execute the shutdown
operation with an optional reboot.
Skip Skips a specified number of items, counting from the current
cursor position, in the property list.
T IT L E DESC RIP T IO N
Start The IADsServiceOperations::Start method starts a network
service.
Status The IADsComputerOperations::Status method retrieves the
status of a computer.
Stop The IADsServiceOperations::Stop method stops a currently
active network service.
Interfaces
T IT L E DESC RIP T IO N
IADs The IADs interface defines the basic object features, that is,
properties and methods, of any ADSI object.
IADsAccessControlEntry The IADsAccessControlEntry interface is a dual interface that
enables directory clients to access and manipulate individual
access-control entries (ACEs) of the owning object.
IADsAccessControlList The IADsAccessControlList interface is a dual interface that
manages individual access-control entries (ACEs).
IADsAcl The IADsAcl interface provides methods for an ADSI client to
access and manipulate the ACL or Inherited ACL attribute
values. This interface manipulates the attributes.
IADsADSystemInfo The IADsADSystemInfo interface retrieves data about the local
computer if it is running a Windows operating system in a
Windows domain. For example, you can get the domain, site,
and distinguished name of the local computer.
IADsBackLink The IADsBackLink interface provides methods for an ADSI
client to access the Back Link attribute. You can call the
property methods of this interface to obtain and modify the
attribute.
IADsCaseIgnoreList The IADsCaseIgnoreList interface provides methods for an
ADSI client to access the Case Ignore List attribute. You can
call the property methods of this interface to obtain and
modify the attribute.
IADsClass The IADsClass interface is designed for managing schema class
objects that provide class definitions for any ADSI object.
Other schema management interfaces include IADsProperty
for attribute definitions and IADsSyntax for attribute syntax.
IADsCollection The IADsCollection interface is a dual interface that enables its
hosting ADSI object to define and manage an arbitrary set of
named data elements for a directory service.
IADsComputer The IADsComputer interface is a dual interface that inherits
from IADs.
T IT L E DESC RIP T IO N
IADsComputerOperations The IADsComputerOperations interface is a dual interface that
inherits from IADs.
IADsContainer The IADsContainer interface enables an ADSI container object
to create, delete, and manage contained ADSI objects.
Container objects represent hierarchical directory trees, such
as in a file system, and to organize the directory hierarchy.
IADsDeleteOps The IADsDeleteOps interface specifies a method an object can
use to delete itself from the underlying directory. For a
container object, the method deletes its children and the
entire subtree.
IADsDNWithBinary The IADsDNWithBinary interface provides methods for an
ADSI client to associate a distinguished name (DN) with the
GUID of an object.
IADsDNWithString The IADsDNWithString interface provides methods for an ADSI
client to associate a distinguished name (DN) to a string value.
IADsDomain The IADsDomain interface is a dual interface that inherits from
IADs.
IADsEmail The IADsEmail interface provides methods for an ADSI client
to access the Email Address attribute.
IADsExtension The IADsExtension interface forms the basis of the ADSI
application extension model.
IADsFaxNumber The IADsFaxNumber interface provides methods for an ADSI
client to access the Facsimile Telephone Number attribute.
IADsFileService The IADsFileService interface is a dual interface that inherits
from IADsService.
IADsFileServiceOperations The IADsFileServiceOperations interface is a dual interface that
inherits from IADsServiceOperations.
IADsFileShare The IADsFileShare interface is a dual interface that inherits
from IADs. It is designed for representing a published file
share across the network. Call the methods on IADsFileShare
to access or publish data about a file share point.
IADsGroup Manages group membership data in a directory service.
IADsHold The IADsHold interface provides methods for an ADSI client to
access the Hold attribute.
IADsLargeInteger Used to manipulate 64-bit integers of the LargeInteger type.
IADsLocality The IADsLocality interface is a dual interface that inherits from
IADs.
IADsMembers The IADsMembers interface is a dual interface.
T IT L E DESC RIP T IO N
IADsNamespaces The IADsNamespaces interface is implemented by the ADs
provider and is used for managing namespace objects.
IADsNameTranslate The IADsNameTranslateinterface translates distinguished
names (DNs) among various formats as defined in the
ADS_NAME_TYPE_ENUM enumeration. The feature is available
to objects in Active Directory.
IADsNetAddress The IADsNetAddress interface provides methods for an ADSI
client to access the Net Address attribute.
IADsO The IADsO interface is a dual interface that inherits from IADs.
IADsObjectOptions Provides a direct mechanism to specify and obtain provider-
specific options for manipulating an ADSI object.
IADsOctetList The IADsOctetList interface provides methods for an ADSI
client to access the Octet List attribute.
IADsOpenDSObject The IADsOpenDSObject interface is designed to supply a
security context for binding to an object in the underlying
directory store.
IADsOU Used to manage organizationalUnit objects.
IADsPath The IADsPath interface provides methods for an ADSI client to
access the Path attribute.
IADsPathname Parses the X.500 and Windows path in ADSI.
IADsPostalAddress The IADsPostalAddress interface provides methods for an
ADSI client to access the Postal Address attribute.
IADsPrintJob The IADsPrintJob interface is a dual interface that inherits from
IADs.
IADsPrintJobOperations The IADsPrintJobOperations interface is a dual interface that
inherits from IADs.
IADsPrintQueue The IADsPrintQueue interface represents a printer on a
network.
IADsPrintQueueOperations Used to control a printer from across a network.
IADsProperty The IADsProperty interface is designed to manage a single
attribute definition for a schema class object.
IADsPropertyEntry The IADsPropertyEntry interface is used to manage a property
entry in the property cache.
IADsPropertyList The IADsPropertyList interface is used to modify, read, and
update a list of property entries in the property cache of an
object.
T IT L E DESC RIP T IO N
IADsPropertyValue Used to represent the value of an IADsPropertyEntry object in
a predefined data type.
IADsPropertyValue2 Used to represent the value of an IADsPropertyEntry object in
any data format.
IADsReplicaPointer The IADsReplicaPointer interface provides methods for an ADSI
client to access the Replica Pointer attribute.
IADsResource The IADsResource interface is a dual interface that inherits
from IADs. It is designed to manage an open resource for a file
service across a network.
IADsSecurityDescriptor Provides access to properties on an ADSI security descriptor
object.
IADsSecurityUtility The IADsSecurityUtility interface is used to get, set, or retrieve
the security descriptor on a file, fileshare, or registry key.
IADsService The IADsService interface is a dual interface that inherits from
IADs.
IADsServiceOperations The IADsServiceOperations interface is a dual interface that
inherits from IADs.
IADsSession The IADsSession interface is a dual interface that inherits from
IADs. It is designed to represent an active session for file
service across a network.
IADsSyntax The IADsSyntax interface specifies methods to identify and
modify the available Automation data types used to represent
its data.
IADsTimestamp The IADsTimestamp interface provides methods for an ADSI
client to access the Timestamp attribute.
IADsTypedName The IADsTypedName interface provides methods for an ADSI
client to access the Typed Name attribute.
IADsUser The IADsUser interface is a dual interface that inherits from
IADs.
IADsWinNTSystemInfo The IADsWinNTSystemInfo interface retrieves the WinNT
system information about a computer. Such system
information includes user account name, user domain, host
name, and the primary domain controller of the host
computer.
IDirectoryObject The IDirectoryObject interface is a non-Automation COM
interface that provides clients with direct access to directory
service objects.
IDirectorySchemaMgmt Not currently implemented and should not be used.
T IT L E DESC RIP T IO N
IDirectorySearch The IDirectorySearch interface is a pure COM interface that
provides a low overhead method that non-Automation clients
can use to perform queries in the underlying directory.
Structures
T IT L E DESC RIP T IO N
ADS_ATTR_DEF The ADS_ATTR_DEF structure is used only as a part of
IDirectorySchemaMgmt, which is an obsolete interface.
ADS_ATTR_INFO Used to contain one or more attribute values for use with the
IDirectoryObject::CreateDSObject,
IDirectoryObject::GetObjectAttributes, or
IDirectoryObject::SetObjectAttributes method.
ADS_BACKLINK The ADS_BACKLINK structure is an ADSI representation of the
Back Link attribute syntax.
ADS_CASEIGNORE_LIST The ADS_CASEIGNORE_LIST structure is an ADSI
representation of the Case Ignore List attribute syntax.
ADS_CLASS_DEF The ADS_CLASS_DEF structure is used only as a part of
IDirectorySchemaMgmt, which is an obsolete interface. The
information that follows is provided for legacy purposes only.
The ADS_CLASS_DEF structure holds the definitions of an
object class.
ADS_DN_WITH_BINARY Used with the ADSVALUE structure to contain a distinguished
name attribute value that also contains binary data.
ADS_DN_WITH_STRING Used with the ADSVALUE structure to contain a distinguished
name attribute value that also contains string data.
ADS_EMAIL The ADS_EMAIL structure is an ADSI representation of the
EMail Address attribute syntax.
ADS_FAXNUMBER The ADS_FAXNUMBER structure is an ADSI representation of
the Facsimile Telephone Number attribute syntax.
ADS_HOLD The ADS_HOLD structure is an ADSI representation of the
Hold attribute syntax.
ADS_NETADDRESS The ADS_NETADDRESS structure is an ADSI representation of
the Net Address attribute syntax.
ADS_NT_SECURITY_DESCRIPTOR The ADS_NT_SECURITY_DESCRIPTOR structure defines the
data type of the security descriptor for Windows.
ADS_OBJECT_INFO The ADS_OBJECT_INFO structure specifies the data, including
the identity and location, of a directory service object.
T IT L E DESC RIP T IO N
ADS_OCTET_LIST The ADS_OCTET_LIST structure is an ADSI representation of an
ordered sequence of single-byte strings.
ADS_OCTET_STRING The ADS_OCTET_STRING structure is an ADSI representation
of the Octet String attribute syntax used in Active Directory.
ADS_PATH The ADS_PATH structure is an ADSI representation of the Path
attribute syntax.
ADS_POSTALADDRESS The ADS_POSTALADDRESS structure is an ADSI representation
of the Postal Address attribute.
ADS_PROV_SPECIFIC The ADS_PROV_SPECIFIC structure contains provider-specific
data represented as a binary large object (BLOB).
ADS_REPLICAPOINTER Represents an ADSI representation of the Replica Pointer
attribute syntax.
ADS_SEARCH_COLUMN The ADS_SEARCH_COLUMN structure specifies the contents
of a search column in the query returned from the directory
service database.
ADS_SEARCHPREF_INFO The ADS_SEARCHPREF_INFO structure specifies the query
preferences.
ADS_SORTKEY The ADS_SORTKEY structure specifies how to sort a query.
ADS_TIMESTAMP The ADS_TIMESTAMP structure is an ADSI representation of
the Timestamp attribute syntax.
ADS_TYPEDNAME Represents an ADSI representation of Typed Name attribute
syntax.
ADS_VLV Contains metadata used to conduct virtual list view (VLV)
searches.
ADSVALUE Contains a value specified as an ADSI data type.
AllJoyn API
2/7/2020 • 2 minutes to read • Edit Online
Overview of the AllJoyn API technology.
To develop AllJoyn API, you need these headers:
msajtransport.h
windows.devices.alljoyn.interop.h
For programming guidance for this technology, see:
AllJoyn API
Functions
T IT L E DESC RIP T IO N
AllJoynCloseBusHandle Closes the Named Pipe handle.
AllJoynConnectToBus Opens the AllJoyn Router Node Service named pipe, and sets
it to PIPE_NOWAIT.
AllJoynEnumEvents Provides AllJoyn transport functionality similar to the TCP
socket WSAEnumNetworkEvents functionality.
AllJoynEventSelect Provides AllJoyn transport functionality similar to the TCP
socket WSAEventSelect functionality.
AllJoynReceiveFromBus Receives data from the bus via named pipe.
AllJoynSendToBus Sends data to the bus via named pipe. The caller of this API is
responsible to check if the bytesTransferred is less than the
requested bytes and call this API again to resend the rest of
the data.
CreateFromWin32Handle Constructs an AllJoynBusAttachment over an existing
alljoyn_busattachment instance without taking ownership.
get_Win32Handle Classic COM interface that simply returns a pointer to the
underlying alljoyn_busattachment instance, so the app can use
it directly with the AllJoyn Core C API.
Interfaces
T IT L E DESC RIP T IO N
IWindowsDevicesAllJoynBusAttachmentFactoryInterop This interface allows for the creation of alljoyn_busattachment
without taking ownership of the reference.
T IT L E DESC RIP T IO N
IWindowsDevicesAllJoynBusAttachmentInterop This interface allows for retrieval of the underlying
alljoyn_busattachment object.
Antimalware Scan Interface
2/7/2020 • 2 minutes to read • Edit Online
Overview of the Antimalware Scan Interface technology.
To develop with Antimalware Scan Interface, you need to include this header.
amsi.h
For programming guidance for this technology, see
Antimalware Scan Interface (AMSI)
Enumerations
T IT L E DESC RIP T IO N
AMSI_ATTRIBUTE Specifies the types of attributes that can be requested by
IAmsiStream::GetAttribute.
AMSI_RESULT Specifies the types of results returned by scans.
Functions
T IT L E DESC RIP T IO N
AmsiCloseSession Close a session that was opened by AmsiOpenSession.
AmsiInitialize Initialize the AMSI API.
AmsiOpenSession Opens a session within which multiple scan requests can be
correlated.
AmsiResultIsMalware Determines if the result of a scan indicates that the content
should be blocked.
AmsiScanBuffer Scans a buffer-full of content for malware.
AmsiScanString Scans a string for malware.
AmsiUninitialize Remove the instance of the AMSI API that was originally
opened by AmsiInitialize.
CloseSession Closes the session.
CloseSession Closes the session.
DisplayName The name of the antimalware provider to be displayed.
GetAttribute Returns a requested attribute from the stream.
T IT L E DESC RIP T IO N
Read Requests a buffer-full of content to be read.
Scan Scan a stream of content.
Scan Scan a stream of content.
Interfaces
T IT L E DESC RIP T IO N
IAmsiStream Represents a stream to be scanned.
IAntimalware Represents the antimalware product.
IAntimalwareProvider Represents the provider of the antimalware product.
Application Installation and Servicing
2/7/2020 • 2 minutes to read • Edit Online
Overview of the Application Installation and Servicing technology.
To develop Application Installation and Servicing, you need these headers:
evalcom2.h
mergemod.h
msi.h
msiquery.h
setupapi.h
sfc.h
winsxs.h
For programming guidance for this technology, see:
Setup API
Windows Installer
Isolated Applications and Side-by-side Assemblies
Windows Resource Protection
Application Recovery and Restart
2/7/2020 • 2 minutes to read • Edit Online
Overview of the Application Recovery and Restart technology.
The Application Recovery and Restart technology is not associated with any headers.
For programming guidance for this technology, see:
Application Recovery and Restart
Functions
T IT L E DESC RIP T IO N
ApplicationRecoveryFinished Indicates that the calling application has completed its data
recovery.
ApplicationRecoveryInProgress Indicates that the calling application is continuing to recover
data.
GetApplicationRecoveryCallback Retrieves a pointer to the callback routine registered for the
specified process. The address returned is in the virtual
address space of the process.
GetApplicationRestartSettings Retrieves the restart information registered for the specified
process.
RegisterApplicationRecoveryCallback Registers the active instance of an application for recovery.
RegisterApplicationRestart Registers the active instance of an application for restart.
UnregisterApplicationRecoveryCallback Removes the active instance of an application from the
recovery list.
UnregisterApplicationRestart Removes the active instance of an application from the restart
list.
Audio Devices DDI Reference
2/7/2020 • 7 minutes to read • Edit Online
Overview of the Audio Devices DDI Reference technology.
To develop Audio Devices DDI Reference, you need these headers:
audiomediatype.h
baseaudioprocessingobject.h
dmusics.h
msapofxproxy.h
For programming guidance for this technology, see:
Audio Devices DDI Reference
Enumerations
T IT L E DESC RIP T IO N
APO_FLAG The APO_FLAG enumeration defines constants that are used
as flags by an audio processing object (APO).
KSPROPERTY_AUDIOEFFECTSDISCOVERY The KSPROPERTY_AUDIOEFFECTSDISCOVERY enumeration
defines a constant that is used by the list of audio processing
objects (APOs).
Functions
T IT L E DESC RIP T IO N
Activate The Activate method enables or disables the audio device
under program control.
Activate The Activate method activates or deactivates the synthesizer
sink.
AERT_Allocate The AERT_Allocate utility function allocates and locks a
segment of memory for use by audio processing objects.
AERT_Free The AERT_Free utility function releases (frees) memory that
was locked by the AERT_Allocate function, for use by audio
processing objects to process audio data.
APOProcess The APOProcess method causes the APO to make a
processing pass.
AssignChannelToBuses AssignChannelToBuses is unsupported and may be altered or
unavailable in the future.
T IT L E DESC RIP T IO N
CalcInputFrames The CalcInputFrames method returns the number of input
frames that an APO requires to generate a given number of
output frames.
CalcOutputFrames The CalcOutputFrames method returns the number of output
frames that an APO requires for a given number of input
frames.
Close The Close method closes a DirectMusic "port", which is a
DirectMusic term for a device that sends or receives music
data.
Commit After a change has been made, this method saves the
changes.
CreateAudioMediaType The CreateAudioMediaType function uses the format specified
by the caller to create a media type object that describes the
audio format.
CreateAudioMediaTypeFromUncompressedAudioFormat The CreateAudioMediaTypeFromUncompressedAudioFormat
function uses the information provided in the
UNCOMPRESSEDAUDIOFORMAT structure to create a media
type object that describes the audio format.
Download The Download method downloads a wave or instrument
definition to the synthesizer.
GetAppend The GetAppend method outputs the number of additional
wave samples that the DirectMusic "port" needs to have
appended to the end of a download buffer.
GetAt Gets a property key from the property array of an item.
GetAudioFormat The GetAudioFormat method returns the WAVEFORMATEX
structure for the audio data format.
GetChannelPriority The GetChannelPriority method outputs the priority of a MIDI
channel.
GetCount This method returns a count of the number of properties that
are attached to the file.
GetDesiredBufferSize The GetDesiredBufferSize method retrieves the synthesizer's
preferred buffer size, expressed in samples.
GetEffectsList The GetEffectsList method is used for retrieving the list of
audio processing effects that are currently active, and stores
an event to be signaled if the list changes.
GetFormat The GetFormat method retrieves an IAudioMediaType
representation of a custom format.
GetFormat The GetFormat method retrieves information about the wave
format.
T IT L E DESC RIP T IO N
GetFormatCount The GetFormatCount method retrieves the number of custom
formats supported by the system effects audio processing
object (sAPO).
GetFormatRepresentation The GetFormatRepresentation method retrieves a string
representation of the custom format so that it can be
displayed on a user-interface.
GetInputChannelCount GetInputChannelCount returns the input channel count
(samples-per-frame) for this APO.
GetLatency The GetLatency method returns the latency for this APO.
Latency is the amount of time it takes a frame to traverse the
processing pass of an APO.
GetLatencyClock The GetLatencyClock method retrieves a reference to the
IReferenceClock interface (described in the Microsoft Windows
SDK documentation) of the reference-clock object that tracks
the current mix time.
GetLatencyClock The GetLatencyClock method retrieves the latency clock,
which measures the progress of the output audio stream.
GetPortCaps The GetPortCaps method retrieves the capabilities of a
DirectMusic "port", which is a DirectMusic term for a device
that sends or receives music data.
GetRegistrationProperties GetRegistrationProperties returns the registration properties
of the audio processing object (APO).
GetRunningStats The GetRunningStats method retrieves current information
about the state of the synthesizer so that an application can
tell how the synth is performing.
GetUncompressedAudioFormat The IAudioMediaType::GetUncompressedAudioFormat returns
information about the audio data format.
GetValue This method retrieves the data for a specific property.
GetVoiceState GetVoiceState is unsupported and may be altered or
unavailable in the future.
Init The Init method initializes the synth-sink object.
Initialize The Initialize method initializes the APO and supports data of
variable length.
IsCompressedFormat The IsCompressedFormat method determines whether the
audio data format is a compressed format.
IsEqual The IsEqual method compares two media types and
determines whether they are identical.
T IT L E DESC RIP T IO N
IsInputFormatSupported This method negotiates with the Windows Vista audio engine
to establish a data format for the stream of audio data.
IsOutputFormatSupported The IsOutputFormatSupported method is used to verify that
a specific output format is supported.
LockForProcess The LockForProcess method is used to verify that the APO is
locked and ready to process data.
Open The Open method opens a DirectMusic synthesizer "port".
PlayBuffer The PlayBuffer method downloads a stream of MIDI messages
to the synthesizer.
PlayVoice PlayVoice is unsupported and may be altered or unavailable in
the future.
Refresh Refresh is unsupported and may be altered or unavailable in
the future.
RefTimeToSample The RefTimeToSample method converts a reference time to a
sample time.
Render The Render method is called by the synth sink to render to a
buffer in the audio stream.
Reset The Reset method resets the APO to its original state. This
method does not cause any changes in the connection objects
that are attached to the input or the output of the APO.
SampleToRefTime The SampleToRefTime method converts a sample time to a
reference time.
SetChannelPriority The SetChannelPriority method sets the priority of a MIDI
channel.
SetDirectSound The SetDirectSound method connects the synthesizer sink
with an existing DirectSound object and a DirectSound buffer.
SetMasterClock The SetMasterClock method provides the synthesizer with a
master time source, which the synthesizer requires to
synchronize itself with the rest of DirectMusic.
SetMasterClock The SetMasterClock method provides the synth sink with a
master time source, which is required for synchronization with
the rest of DirectMusic.
SetNumChannelGroups The SetNumChannelGroups method instructs the synthesizer
to set its number of channel groups to a new value.
SetSynthSink The SetSynthSink method establishes the connection of the
synth to the wave sink.
T IT L E DESC RIP T IO N
SetValue This method sets a property value or replaces or removes an
existing value.
StopVoice StopVoice is unsupported and may be altered or unavailable
in the future.
Unload The Unload method unloads a DLS resource (waveform or
articulation data for a MIDI instrument) that was previously
downloaded by a call to IDirectMusicSynth::Download.
UnlockForProcess The UnlockForProcess method releases the lock that was
imposed on the APO by the LockForProcess method.
Interfaces
T IT L E DESC RIP T IO N
IAudioMediaType The IAudioMediaType interface exposes methods that allow an
sAPO to get information that is used to negotiate with the
audio engine for the appropriate audio data format.
IAudioProcessingObject System Effects Audio Processing Objects (sAPOs) are typically
used in or called from real-time process threads.
IAudioProcessingObjectConfiguration The IAudioProcessingObjectConfiguration interface is used to
configure the APO. This interface uses its methods to lock and
unlock the APO for processing.
IAudioProcessingObjectRT This interface can operate in real-time mode and its methods
can be called form real-time processing threads.
IAudioSystemEffects The IAudioSystemEffects interface uses the basic methods that
are inherited from IUnknown, and must implement an
Initialize method.
IAudioSystemEffects2 The IAudioSystemEffects2 interface was introduced with
Windows 8.1 for retrieving information about the processing
objects in a given mode.
IAudioSystemEffectsCustomFormats The IAudioSystemEffectsCustomFormats interface is
supported in Windows Vista and later versions of Windows.
IDirectMusicSynth The IDirectMusicSynth interface is used by DirectMusic to
communicate with user-mode synthesizers.
IDirectMusicSynth8 IDirectMusicSynth8is unsupported and may be altered or
unavailable in the future.
IDirectMusicSynthSink The IDirectMusicSynthSink interface is now largely obsolete
and is supported only by versions of DirectMusic before
DirectX 8.
T IT L E DESC RIP T IO N
IPropertyStore This interface exposes methods used to enumerate and
manipulate property values.
Structures
T IT L E DESC RIP T IO N
APO_REG_PROPERTIES The APO_REG_PROPERTIES structure is used by
IAudioProcessingObject::GetRegistrationProperties for
returning the registration properties of an audio processing
object (APO).
APOInitBaseStruct The APOInitBaseStruct structure is the base initialization
header that must precede other initialization data in
IAudioProcessingObject::Initialize.
APOInitSystemEffects The APOInitSystemEffects structure gets passed to the system
effects APO for initialization.
APOInitSystemEffects2 The APOInitSystemEffects2 structure was introduced with
Windows 8.1, to make it possible to provide additional
initialization context to the audio processing object (APO) for
initialization.
AudioFXExtensionParams The AudioFXExtensionParams structure is passed to the
system effects ControlPanel Extension PropertyPage via
IShellPropSheetExt::AddPages.
DMUS_VOICE_STATE DMUS_VOICE_STATE is not supported and may be altered or
unavailable in the future.
KSP_PINMODE The KSP_PINMODE structure specifies the pin property and
the supported audio processing modes for a pin factory.
MDEVICECAPSEX The MDEVICECAPSEX structure contains device capability
information for Plug and Play (PnP) device drivers.
MIDIOPENDESC The MIDIOPENDESC structure is a client-filled structure that
provides information about how to open a MIDI device.
UNCOMPRESSEDAUDIOFORMAT The UNCOMPRESSEDAUDIOFORMAT structure specifies the
frame rate, channel mask, and other attributes of the
uncompressed audio data format.
WAVEFORMATEX The WAVEFORMATEX structure specifies the data format of a
wave audio stream.
Automation
2/7/2020 • 33 minutes to read • Edit Online
Overview of the Automation technology.
To develop Automation, you need these headers:
oaidl.h
oleauto.h
olectl.h
wia_xp.h
wtypes.h
For programming guidance for this technology, see:
Automation
Enumerations
T IT L E DESC RIP T IO N
CALLCONV Identifies the calling convention used by a member function
described in the METHODDATA structure.
DESCKIND Identifies the type description being bound to.
FUNCFLAGS Specifies function flags.
FUNCKIND Specifies the function type.
INVOKEKIND Specifies the way a function is invoked.
LIBFLAGS Defines flags that apply to type libraries.
REGKIND Controls how a type library is registered.
SYSKIND Identifies the target operating system platform.
TYPEFLAGS The type flags.
TYPEKIND Specifies a type.
VARENUM Specifies the variant types.
VARFLAGS Specifies variable flags.
VARKIND Specifies the variable type.
Functions
T IT L E DESC RIP T IO N
AddFuncDesc Adds a function description to the type description.
AddImplType Specifies an inherited interface, or an interface implemented
by a component object class (coclass).
AddRefTypeInfo Adds a type description to those referenced by the type
description being created.
AddressOfMember Retrieves the addresses of static functions or variables, such as
those defined in a DLL.
AddVarDesc Adds a variable or data member description to the type
description.
AfterTypeChange Raised after a type has been changed.
Bind Maps a name to a member of a type, or binds global variables
and functions contained in a type library.
BindType Binds to the type descriptions contained within a type library.
BSTR_UserFree Frees resources on the server side when called by RPC stub
files.
BSTR_UserFree64 Frees resources on the server side when called by RPC stub
files.
BSTR_UserMarshal Marshals a BSTR object into the RPC buffer.
BSTR_UserMarshal64 Marshals a BSTR object into the RPC buffer.
BSTR_UserSize Calculates the wire size of the BSTR object, and gets its handle
and data.
BSTR_UserSize64 Calculates the wire size of the BSTR object, and gets its handle
and data.
BSTR_UserUnmarshal Unmarshals a BSTR object from the RPC buffer.
BSTR_UserUnmarshal64 Unmarshals a BSTR object from the RPC buffer.
BstrFromVector Returns a BSTR, assigning each element of the vector to a
character in the BSTR.
ClearCustData Releases memory used to hold the custom data item.
Clone Creates a copy of the current state of enumeration.
CreateDispTypeInfo Creates simplified type information for use in an
implementation of IDispatch.
CreateErrorInfo Creates an instance of a generic error object.
T IT L E DESC RIP T IO N
CreateInstance Creates a new instance of a type that describes a component
object class (coclass).
CreateStdDispatch Creates a standard implementation of the IDispatch interface
through a single function call. This simplifies exposing objects
through Automation.
CreateTypeInfo Creates a new type description instance within the type
library.
CreateTypeLib Provides access to a new object instance that supports the
ICreateTypeLib interface.
CreateTypeLib2 Creates a type library in the current file format.
DefineFuncAsDllEntry Associates a DLL entry point with the function that has the
specified index.
DeleteFuncDesc Deletes a function description specified by the index number.
DeleteFuncDescByMemId Deletes the specified function description (FUNCDESC).
DeleteImplType Deletes the IMPLTYPE flags for the indexed interface.
DeleteTypeInfo Deletes a specified type information from the type library.
DeleteVarDesc Deletes the specified VARDESC structure.
DeleteVarDescByMemId Deletes the specified VARDESC structure.
DispCallFunc Low-level helper for Invoke that provides machine
independence for customized Invoke.
DispGetIDsOfNames Low-level helper for Invoke that provides machine
independence for customized Invoke.
DispGetParam Retrieves a parameter from the DISPPARAMS structure,
checking both named parameters and positional parameters,
and coerces the parameter to the specified type.
DispInvoke Automatically calls member functions on an interface, given
the type information for the interface.
DosDateTimeToVariantTime Converts the MS-DOS representation of time to the date and
time representation stored in a variant.
FindName Finds occurrences of a type description in a type library. This
may be used to quickly verify that a name exists in a type
library.
GetActiveObject Retrieves a pointer to a running object that has been
registered with OLE.
T IT L E DESC RIP T IO N
GetAllCustData Gets all custom data items for the library.
GetAllCustData Gets all custom data items for the library.
GetAllFuncCustData Gets all custom data from the specified function.
GetAllImplTypeCustData Gets all custom data for the specified implementation type.
GetAllParamCustData Gets all of the custom data for the specified function
parameter.
GetAllVarCustData Gets the variable for the custom data.
GetAltMonthNames Retrieves the secondary (alternate) month names.
GetContainingTypeLib Retrieves the containing type library and the index of the type
description within that type library.
GetCustData Gets the custom data.
GetCustData Gets the custom data.
GetDescription Returns a textual description of the error.
GetDllEntry Retrieves a description or specification of an entry point for a
function in a DLL.
GetDocumentation Retrieves the documentation string, the complete Help file
name and path, and the context ID for the Help topic for a
specified type description.
GetDocumentation Retrieves the documentation string for the library, the
complete Help file name and path, and the context identifier
for the library Help topic in the Help file.
GetDocumentation2 Retrieves the documentation string, the complete Help file
name and path, the localization context to use, and the
context ID for the library Help topic in the Help file.
GetDocumentation2 Retrieves the library's documentation string, the complete
Help file name and path, the localization context to use, and
the context ID for the library Help topic in the Help file.
GetErrorInfo Obtains the error information pointer set by the previous call
to SetErrorInfo in the current logical thread.
GetField Returns a pointer to the VARIANT containing the value of a
given field name.
GetFieldNames Gets the names of the fields of the record.
GetFieldNoCopy Returns a pointer to the value of a given field name without
copying the value and allocating resources.
T IT L E DESC RIP T IO N
GetFuncCustData Gets the custom data from the specified function.
GetFuncDesc Retrieves the FUNCDESC structure that contains information
about a specified function.
GetFuncIndexOfMemId Binds to a specific member based on a known DISPID, where
the member name is not known (for example, when binding
to a default member).
GetGuid Gets the GUID of the record type.
GetGUID Returns the globally unique identifier (GUID) of the interface
that defined the error.
GetHelpContext Returns the Help context identifier (ID) for the error.
GetHelpFile Returns the path of the Help file that describes the error.
GetIDsOfNames Maps a single member and an optional set of argument
names to a corresponding set of integer DISPIDs, which can
be used on subsequent calls to Invoke.
GetIDsOfNames Maps between member names and member IDs, and
parameter names and parameter IDs.
GetImplTypeCustData Gets the custom data of the implementation type.
GetImplTypeFlags Retrieves the IMPLTYPEFLAGS enumeration for one
implemented interface or base interface in a type description.
GetLibAttr Retrieves the structure that contains the library's attributes.
GetLibStatistics Returns statistics about a type library that are required for
efficient sizing of hash tables.
GetMops Retrieves marshaling information.
GetName Gets the name of the record type.
GetNames Retrieves the variable with the specified member ID or the
name of the property or method and the parameters that
correspond to the specified function ID.
GetParamCustData Gets the custom data of the specified parameter.
GetRecordInfoFromGuids Returns a pointer to the IRecordInfo interface for a UDT by
passing the GUID of the type information without having to
load the type library.
GetRecordInfoFromTypeInfo Returns a pointer to the IRecordInfo interface of the UDT by
passing its type information.
T IT L E DESC RIP T IO N
GetRefTypeInfo If a type description references other type descriptions, it
retrieves the referenced type descriptions.
GetRefTypeOfImplType If a type description describes a COM class, it retrieves the
type description of the implemented interface types.
GetSize Gets the number of bytes of memory necessary to hold the
record instance.
GetSource Returns the language-dependent programmatic ID (ProgID)
for the class or application that raised the error.
GetTypeAttr Retrieves a TYPEATTR structure that contains the attributes of
the type description.
GetTypeComp Retrieves the ITypeComp interface for the type description,
which enables a client compiler to bind to the type
description's members.
GetTypeComp Enables a client compiler to bind to the types, variables,
constants, and global functions for a library.
GetTypeFlags Returns the type flags without any allocations. This returns a
flag that expands the type flags without growing the
TYPEATTR (type attribute).
GetTypeInfo Retrieves the type information for an object, which can then
be used to get the type information for an interface.
GetTypeInfo Retrieves the type information that describes a UDT or
safearray of UDTs.
GetTypeInfo Retrieves the specified type description in the library.
GetTypeInfoCount Retrieves the number of type information interfaces that an
object provides (either 0 or 1).
GetTypeInfoCount Provides the number of type descriptions that are in a type
library.
GetTypeInfoOfGuid Retrieves the type description that corresponds to the
specified GUID.
GetTypeInfoType Retrieves the type of a type description.
GetTypeKind Returns the TYPEKIND enumeration quickly, without doing
any allocations.
GetVarCustData Gets the custom data of the specified variable.
GetVarDesc Retrieves a VARDESC structure that describes the specified
variable.
T IT L E DESC RIP T IO N
GetVarIndexOfMemId Binds to a specific member based on a known DISPID, where
the member name is not known (for example, when binding
to a default member).
InterfaceSupportsErrorInfo Indicates whether an interface supports the IErrorInfo
interface.
Invoke Provides access to properties and methods exposed by an
object.
Invoke Invokes a method, or accesses a property of an object, that
implements the interface described by the type description.
IsMatchingType Determines whether the record that is passed in matches that
of the current record information.
IsName Indicates whether a passed-in string contains the name of a
type or member described in the library.
LayOut Assigns VTBL offsets for virtual functions and instance offsets
for per-instance data members, and creates the two type
descriptions for dual interfaces.
LHashValOfName Computes a hash value for a name.
LHashValOfNameSys Computes a hash value for a name.
LHashValOfNameSysA Computes a hash value for the specified name.
LoadRegTypeLib Uses registry information to load a type library.
LoadTypeLib Loads and registers a type library.
LoadTypeLibEx Loads a type library and (optionally) registers it in the system
registry. .
LPSAFEARRAY_UserFree Frees resources on the server side when called by RPC stub
files.
LPSAFEARRAY_UserFree64 Frees resources on the server side when called by RPC stub
files.
LPSAFEARRAY_UserMarshal Marshals data from the specified SAFEARRAY object to the
user's RPC buffer on the client or server side.
LPSAFEARRAY_UserMarshal64 Marshals data from the specified SAFEARRAY object to the
user's RPC buffer on the client or server side.
LPSAFEARRAY_UserSize Calculates the wire size of the SAFEARRAY object, and gets its
handle and data.
LPSAFEARRAY_UserSize64 Calculates the wire size of the SAFEARRAY object, and gets its
handle and data.
T IT L E DESC RIP T IO N
LPSAFEARRAY_UserUnmarshal Unmarshals a SAFEARRAY object from the RPC buffer.
LPSAFEARRAY_UserUnmarshal64 Unmarshals a SAFEARRAY object from the RPC buffer.
Next Retrieves the specified items in the enumeration sequence.
OaBuildVersion Retrieves the build version of OLE Automation.
OaEnablePerUserTLibRegistration Enables the RegisterTypeLib function to override default
registry mappings under Windows Vista Service Pack 1 (SP1),
Windows Server 2008, and later operating system versions.
OleLoadPictureFile Creates an IPictureDisp object from a picture file on disk.
OleLoadPictureFileEx Loads a picture from a file.
OleSavePictureFile Saves a picture to a file.
PutField Puts a variant into a field.
PutFieldNoCopy Passes ownership of the data to the assigned field by placing
the actual data into the field.
QueryPathOfRegTypeLib Retrieves the path of a registered type library.
RecordClear Releases object references and other values of a record
without deallocating the record.
RecordCopy Copies an existing record into the passed in buffer.
RecordCreate Allocates memory for a new record, initializes the instance and
returns a pointer to the record.
RecordCreateCopy Creates a copy of an instance of a record to the specified
location.
RecordDestroy Releases the resources and deallocates the memory of the
record.
RecordInit Initializes a new instance of a record.
RegisterActiveObject Registers an object as the active object for its class.
RegisterTypeLib Adds information about a type library to the system registry.
RegisterTypeLibForUser Registers a type library for use by the calling user.
ReleaseFuncDesc Releases a FUNCDESC previously returned by
ITypeInfo::GetFuncDesc.
ReleaseTLibAttr Releases the TLIBATTR originally obtained from GetLibAttr.
T IT L E DESC RIP T IO N
ReleaseTypeAttr Releases a TYPEATTR previously returned by
ITypeInfo::GetTypeAttr.
ReleaseVarDesc Releases a VARDESC previously returned by
ITypeInfo::GetVarDesc.
RequestTypeChange Raised when a request has been made to change a type. The
change can be disallowed.
Reset Resets the enumeration sequence to the beginning.
RevokeActiveObject Ends an object's status as active.
SafeArrayAccessData Increments the lock count of an array, and retrieves a pointer
to the array data.
SafeArrayAddRef Increases the pinning reference count of the descriptor for the
specified safe array by one, and may increase the pinning
reference count of the data for the specified safe array by one
if that data was dynamically allocated, as determined by the
descriptor of the safe array.
SafeArrayAllocData Allocates memory for a safe array, based on a descriptor
created with SafeArrayAllocDescriptor.
SafeArrayAllocDescriptor Allocates memory for a safe array descriptor.
SafeArrayAllocDescriptorEx Creates a safe array descriptor for an array of any valid variant
type, including VT_RECORD, without allocating the array data.
SafeArrayCopy Creates a copy of an existing safe array.
SafeArrayCopyData Copies the source array to the specified target array after
releasing any resources in the target array.
SafeArrayCreate Creates a new array descriptor, allocates and initializes the
data for the array, and returns a pointer to the new array
descriptor.
SafeArrayCreateEx Creates and returns a safe array descriptor from the specified
VARTYPE, number of dimensions and bounds.
SafeArrayCreateVector Creates a one-dimensional array. A safe array created with
SafeArrayCreateVector is a fixed size, so the constant
FADF_FIXEDSIZE is always set.
SafeArrayCreateVectorEx Creates and returns a one-dimensional safe array of the
specified VARTYPE and bounds.
SafeArrayDestroy Destroys an existing array descriptor and all of the data in the
array.
SafeArrayDestroyData Destroys all the data in the specified safe array.
T IT L E DESC RIP T IO N
SafeArrayDestroyDescriptor Destroys the descriptor of the specified safe array.
SafeArrayGetDim Gets the number of dimensions in the array.
SafeArrayGetElement Retrieves a single element of the array.
SafeArrayGetElemsize Gets the size of an element.
SafeArrayGetIID Gets the GUID of the interface contained within the specified
safe array.
SafeArrayGetLBound Gets the lower bound for any dimension of the specified safe
array.
SafeArrayGetRecordInfo Retrieves the IRecordInfo interface of the UDT contained in the
specified safe array.
SafeArrayGetUBound Gets the upper bound for any dimension of the specified safe
array.
SafeArrayGetVartype Gets the VARTYPE stored in the specified safe array.
SafeArrayLock Increments the lock count of an array, and places a pointer to
the array data in pvData of the array descriptor.
SafeArrayPtrOfIndex Gets a pointer to an array element.
SafeArrayPutElement Stores the data element at the specified location in the array.
SafeArrayRedim Changes the right-most (least significant) bound of the
specified safe array.
SafeArrayReleaseData Decreases the pinning reference count for the specified safe
array data by one. When that count reaches 0, the memory
for that data is no longer prevented from being freed.
SafeArrayReleaseDescriptor Decreases the pinning reference count for the descriptor of
the specified safe array by one. When that count reaches 0,
the memory for that descriptor is no longer prevented from
being freed.
SafeArraySetIID Sets the GUID of the interface for the specified safe array.
SafeArraySetRecordInfo Sets the record info in the specified safe array.
SafeArrayUnaccessData Decrements the lock count of an array, and invalidates the
pointer retrieved by SafeArrayAccessData.
SafeArrayUnlock Decrements the lock count of an array so it can be freed or
resized.
SaveAllChanges Saves the ICreateTypeLib instance following the layout of type
information.
T IT L E DESC RIP T IO N
SetAlignment Specifies the data alignment for an item of
TYPEKIND=TKIND_RECORD.
SetCustData Sets a value for custom data.
SetCustData Sets a value to custom data.
SetDescription Sets the textual description of the error.
SetDocString Sets the documentation string displayed by type browsers.
SetDocString Sets the documentation string associated with the library.
SetErrorInfo Sets the error information object for the current logical thread
of execution.
SetFuncAndParamNames Sets the name of a function and the names of its parameters
to the specified names.
SetFuncCustData Sets a value for custom data for the specified function.
SetFuncDocString Sets the documentation string for the function with the
specified index.
SetFuncHelpContext Sets the Help context ID for the function with the specified
index.
SetFuncHelpStringContext Sets a Help context value for a specified function.
SetGuid Sets the globally unique identifier (GUID) associated with the
type description.
SetGuid Sets the universal unique identifier (UUID) associated with the
type library.
SetGUID Sets the globally unique identifier (GUID) of the interface that
defined the error.
SetHelpContext Sets the Help context identifier (ID) for the error.
SetHelpContext Sets the Help context ID of the type information.
SetHelpContext Sets the Help context ID for retrieving general Help
information for the type library.
SetHelpFile Sets the path of the Help file that describes the error.
SetHelpFileName Sets the name of the Help file.
SetHelpStringContext Sets the context number for the specified Help string.
SetHelpStringContext Sets the Help string context number.
T IT L E DESC RIP T IO N
SetHelpStringDll Sets the DLL name to be used for Help string lookup (for
localization purposes).
SetImplTypeCustData Sets a value for custom data for the specified implementation
type.
SetImplTypeFlags Sets the attributes for an implemented or inherited interface
of a type.
SetLcid Sets the binary Microsoft national language ID associated
with the library.
SetLibFlags Sets library flags.
SetMops Sets the marshaling opcode string associated with the type
description or the function.
SetName Sets the name of the typeinfo.
SetName Sets the name of the type library.
SetParamCustData Sets a value for the custom data for the specified parameter.
SetSource Sets the language-dependent programmatic identifier
(ProgID) for the class or application that raised the error.
SetTypeDescAlias Sets the type description for which this type description is an
alias, if TYPEKIND=TKIND_ALIAS.
SetTypeFlags Sets type flags of the type description being created.
SetVarCustData Sets a value for custom data for the specified variable.
SetVarDocString Sets the documentation string for the variable with the
specified index.
SetVarHelpContext Sets the Help context ID for the variable with the specified
index.
SetVarHelpStringContext Sets a Help context value for a specified variable.
SetVarName Sets the name of a variable.
SetVersion Sets the major and minor version number of the type
information.
SetVersion Sets the major and minor version numbers of the type library.
Skip Attempts to skip over the next celt elements in the
enumeration sequence.
T IT L E DESC RIP T IO N
SysAddRefString Increases the pinning reference count for the specified string
by one.
SysAllocString Allocates a new string and copies the passed string into it.
SysAllocStringByteLen Takes an ANSI string as input, and returns a BSTR that
contains an ANSI string. Does not perform any ANSI-to-
Unicode translation.
SysAllocStringLen Allocates a new string, copies the specified number of
characters from the passed string, and appends a null-
terminating character.
SysFreeString Deallocates a string allocated previously by SysAllocString,
SysAllocStringByteLen, SysReAllocString, SysAllocStringLen, or
SysReAllocStringLen.
SysReAllocString Reallocates a previously allocated string to be the size of a
second string and copies the second string into the
reallocated memory.
SysReAllocStringLen Creates a new BSTR containing a specified number of
characters from an old BSTR, and frees the old BSTR.
SysReleaseString Decreases the pinning reference count for the specified string
by one. When that count reaches 0, the memory for that
string is no longer prevented from being freed.
SysStringByteLen Returns the length (in bytes) of a BSTR.
SysStringLen Returns the length of a BSTR.
SystemTimeToVariantTime Converts a system time to a variant representation.
UnRegisterTypeLib Removes type library information from the system registry.
Use this API to allow applications to properly uninstall
themselves.
UnRegisterTypeLibForUser Removes type library information that was registered by using
RegisterTypeLibForUser.
VarAbs Returns the absolute value of a variant.
VarAdd Returns the sum of two variants.
VarAnd Performs a bitwise And operation between two variants of any
integral type.
VarBoolFromCy Converts a currency value to a Boolean value.
VarBoolFromDate Converts a date value to a Boolean value.
VarBoolFromDec Converts a decimal value to a Boolean value.
T IT L E DESC RIP T IO N
VarBoolFromDisp Converts the default property of an IDispatch instance to a
Boolean value.
VarBoolFromI1 Converts a char value to a Boolean value.
VarBoolFromI2 Converts a short value to a Boolean value.
VarBoolFromI4 Converts a long value to a Boolean value.
VarBoolFromI8 Converts an 8-byte integer value to a Boolean value.
VarBoolFromR4 Converts a float value to a Boolean value.
VarBoolFromR8 Converts a double value to a Boolean value.
VarBoolFromStr Converts an OLECHAR string to a Boolean value.
VarBoolFromUI1 Converts an unsigned char value to a Boolean value.
VarBoolFromUI2 Converts an unsigned short value to a Boolean value.
VarBoolFromUI4 Converts an unsigned long value to a Boolean value.
VarBoolFromUI8 Converts an 8-byte unsigned integer value to a Boolean
value.
VarBstrCat Concatenates two variants of type BSTR and returns the
resulting BSTR.
VarBstrCmp Compares two variants of type BSTR.
VarBstrFromBool Converts a Boolean value to a BSTR value.
VarBstrFromCy Converts a currency value to a BSTR value.
VarBstrFromDate Converts a date value to a BSTR value.
VarBstrFromDec Converts a decimal value to a BSTR value.
VarBstrFromDisp Converts the default property of an IDispatch instance to a
BSTR value.
VarBstrFromI1 Converts a char value to a BSTR value.
VarBstrFromI2 Converts a short value to a BSTR value.
VarBstrFromI4 Converts a long value to a BSTR value.
VarBstrFromI8 Converts an 8-byte unsigned integer value to a BSTR value.
VarBstrFromR4 Converts a float value to a BSTR value.
T IT L E DESC RIP T IO N
VarBstrFromR8 Converts a double value to a BSTR value.
VarBstrFromUI1 Converts an unsigned char value to a BSTR value.
VarBstrFromUI2 Converts an unsigned short value to a BSTR value.
VarBstrFromUI4 Converts an unsigned long value to a BSTR value.
VarBstrFromUI8 Converts an 8-byte unsigned integer value to a BSTR value.
VarCat Concatenates two variants and returns the result.
VarCmp Compares two variants.
VarCyAbs Retrieves the absolute value of a variant of type currency.
VarCyAdd Adds two variants of type currency.
VarCyCmp Compares two variants of type currency.
VarCyCmpR8 Compares a variant of type currency with a value of type
double.
VarCyFix Retrieves the integer portion of a variant of type currency.
VarCyFromBool Converts a Boolean value to a currency value.
VarCyFromDate Converts a date value to a currency value.
VarCyFromDec Converts a decimal value to a currency value.
VarCyFromDisp Converts the default property of an IDispatch instance to a
currency value.
VarCyFromI1 Converts a char value to a currency value.
VarCyFromI2 Converts a short value to a currency value.
VarCyFromI4 Converts a long value to a currency value.
VarCyFromI8 Converts an 8-byte integer value to a currency value.
VarCyFromR4 Converts a float value to a currency value.
VarCyFromR8 Converts a double value to a currency value.
VarCyFromStr Converts an OLECHAR string to a currency value.
VarCyFromUI1 Converts an unsigned char value to a currency value.
T IT L E DESC RIP T IO N
VarCyFromUI2 Converts an unsigned short value to a currency value.
VarCyFromUI4 Converts an unsigned long value to a currency value.
VarCyFromUI8 Converts an 8-byte unsigned integer value to a currency
value.
VarCyInt Retrieves the integer portion of a variant of type currency.
VarCyMul Multiplies two variants of type currency.
VarCyMulI4 Multiplies a currency value by a 32-bit integer.
VarCyMulI8 Multiplies a currency value by a 64-bit integer.
VarCyNeg Performs a logical negation on a variant of type currency.
VarCyRound Rounds a variant of type currency to the specified number of
decimal places.
VarCySub Subtracts two variants of type currency.
VarDateFromBool Converts a Boolean value to a date value.
VarDateFromCy Converts a currency value to a date value.
VarDateFromDec Converts a decimal value to a date value.
VarDateFromDisp Converts the default property of an IDispatch instance to a
date value.
VarDateFromI1 Converts a char value to a date value.
VarDateFromI2 Converts a short value to a date value.
VarDateFromI4 Converts a long value to a date value.
VarDateFromI8 Converts an 8-byte unsigned integer value to a date value.
VarDateFromR4 Converts a float value to a date value.
VarDateFromR8 Converts a double value to a date value.
VarDateFromStr Converts an OLECHAR string to a date value.
VarDateFromUdate Converts a time and date converted from MS-DOS format to
variant format.
VarDateFromUdateEx Converts a time and date converted from MS-DOS format to
variant format.
T IT L E DESC RIP T IO N
VarDateFromUI1 Converts an unsigned char value to a date value.
VarDateFromUI2 Converts an unsigned short value to a date value.
VarDateFromUI4 Converts an unsigned long value to a date value.
VarDateFromUI8 Converts an 8-byte unsigned value to a date value.
VarDecAbs Retrieves the absolute value of a variant of type decimal.
VarDecAdd Adds two variants of type decimal.
VarDecCmp Compares two variants of type decimal.
VarDecCmpR8 Compares a variant of type decimal with the a value of type
double.
VarDecDiv Divides two variants of type decimal.
VarDecFix Retrieves the integer portion of a variant of type decimal.
VarDecFromBool Converts a Boolean value to a decimal value.
VarDecFromCy Converts a currency value to a decimal value.
VarDecFromDate Converts a date value to a decimal value.
VarDecFromDisp Converts the default property of an IDispatch instance to a
decimal value.
VarDecFromI1 Converts a char value to a decimal value.
VarDecFromI2 Converts a short value to a decimal value.
VarDecFromI4 Converts a long value to a decimal value.
VarDecFromI8 Converts an 8-byte integer value to a decimal value.
VarDecFromR4 Converts a float value to a decimal value.
VarDecFromR8 Converts a double value to a decimal value.
VarDecFromStr Converts an OLECHAR string to a decimal value.
VarDecFromUI1 Converts an unsigned char value to a decimal value.
VarDecFromUI2 Converts an unsigned short value to a decimal value.
VarDecFromUI4 Converts an unsigned long value to a decimal value.
T IT L E DESC RIP T IO N
VarDecFromUI8 Converts an 8-byte unsigned integer value to a decimal value.
VarDecInt Retrieves the integer portion of a variant of type decimal.
VarDecMul Multiplies two variants of type decimal.
VarDecNeg Performs logical negation on a variant of type decimal.
VarDecRound Rounds a variant of type decimal to the specified number of
decimal places.
VarDecSub Subtracts two variants of type decimal.
VarDiv Returns the result from dividing two variants.
VarEqv Performs a bitwise equivalence on two variants.
VarFix Returns the integer portion of a variant.
VarFormat Formats a variant into string form by parsing a format string.
VarFormatCurrency Formats a variant containing currency values into a string
form.
VarFormatDateTime Formats a variant containing named date and time
information into a string.
VarFormatFromTokens Takes a tokenized format string and applies it to a variant to
produce a formatted output string.
VarFormatNumber Formats a variant containing numbers into a string form.
VarFormatPercent Formats a variant containing percentages into a string form.
VarI1FromBool Converts a Boolean value to a char value.
VarI1FromCy Converts a currency value to a char value.
VarI1FromDate Converts a date value to a char value.
VarI1FromDec Converts a decimal value to a char value.
VarI1FromDisp Converts the default property of an IDispatch instance to a
char value.
VarI1FromI2 Converts a short value to a char value.
VarI1FromI4 Converts a long value to a char value.
VarI1FromI8 Converts an 8-byte integer value to a char value.
T IT L E DESC RIP T IO N
VarI1FromR4 Converts a float value to a char value.
VarI1FromR8 Converts a double value to a char value.
VarI1FromStr Converts an OLECHAR string to a char value.
VarI1FromUI1 Converts an unsigned char value to a char value.
VarI1FromUI2 Converts an unsigned short value to a char value.
VarI1FromUI4 Converts an unsigned long value to a char value.
VarI1FromUI8 Converts an 8-byte unsigned integer value to a char value.
VarI2FromBool Converts a Boolean value to a short value.
VarI2FromCy Converts a currency value to a short value.
VarI2FromDate Converts a date value to a short value.
VarI2FromDec Converts a decimal value to a short value.
VarI2FromDisp Converts the default property of an IDispatch instance to a
short value.
VarI2FromI1 Converts a char value to a short value.
VarI2FromI4 Converts a long value to a short value.
VarI2FromI8 Converts an 8-byte integer value to a short value.
VarI2FromR4 Converts a float value to a short value.
VarI2FromR8 Converts a double value to a short value.
VarI2FromStr Converts an OLECHAR string to a short value.
VarI2FromUI1 Converts an unsigned char value to a short value.
VarI2FromUI2 Converts an unsigned short value to a short value.
VarI2FromUI4 Converts an unsigned long value to a short value.
VarI2FromUI8 Converts an 8-byte unsigned integer value to a short value.
VarI4FromBool Converts a Boolean value to a long value.
VarI4FromCy Converts a currency value to a long value.
VarI4FromDate Converts a date value to a long value.
T IT L E DESC RIP T IO N
VarI4FromDec Converts a decimal value to a long value.
VarI4FromDisp Converts the default property of an IDispatch instance to a
long value.
VarI4FromI1 Converts a char value to a long value.
VarI4FromI2 Converts a short value to a long value.
VarI4FromI4 Converts an int value to a long value.
VarI4FromI8 Converts an 8-byte integer value to a long value.
VarI4FromR4 Converts a float value to a long value.
VarI4FromR8 Converts a double value to a long value.
VarI4FromStr Converts an OLECHAR string to a long value.
VarI4FromUI1 Converts an unsigned char value to a long value.
VarI4FromUI2 Converts an unsigned short value to a long value.
VarI4FromUI4 Converts an unsigned long value to a long value.
VarI4FromUI8 Converts an 8-byte unsigned integer value to a long.
VarI8FromBool Converts a Boolean value to an 8-byte integer value.
VarI8FromCy Converts a currency value to an 8-byte integer value.
VarI8FromDate Converts a date value to an 8-byte integer value.
VarI8FromDec Converts a decimal value to an 8-byte integer value.
VarI8FromDisp Converts the default property of an IDispatch instance to an
8-byte integer value.
VarI8FromI1 Converts a char value to an 8-byte integer value.
VarI8FromI2 Converts a short value to an 8-byte integer value.
VarI8FromR4 Converts a float value to an 8-byte integer value.
VarI8FromR8 Converts a double value to an 8-byte integer value.
VarI8FromStr Converts an OLECHAR string to an 8-byte integer value.
VarI8FromUI1 Onverts an unsigned byte value to an 8-byte integer value.
T IT L E DESC RIP T IO N
VarI8FromUI2 Converts an unsigned short value to an 8-byte integer value.
VarI8FromUI4 Converts an unsigned long value to an 8-byte integer value.
VarI8FromUI8 Converts an unsigned 8-byte integer value to an 8-byte
integer value.
VARIANT_UserFree Frees resources on the server side when called by RPC stub
files.
VARIANT_UserFree64 Frees resources on the server side when called by RPC stub
files.
VARIANT_UserMarshal Marshals a VARIANT object into the RPC buffer.
VARIANT_UserMarshal64 Marshals a VARIANT object into the RPC buffer.
VARIANT_UserSize Calculates the wire size of the VARIANT object, and gets its
handle and data.
VARIANT_UserSize64 Calculates the wire size of the VARIANT object, and gets its
handle and data.
VARIANT_UserUnmarshal Unmarshals a VARIANT object from the RPC buffer.
VARIANT_UserUnmarshal64 Unmarshals a VARIANT object from the RPC buffer.
VariantChangeType Converts a variant from one type to another.
VariantChangeTypeEx Converts a variant from one type to another, using an LCID.
VariantClear Clears a variant.
VariantCopy Frees the destination variant and makes a copy of the source
variant.
VariantCopyInd Frees the destination variant and makes a copy of the source
variant, performing the necessary indirection if the source is
specified to be VT_BYREF.
VariantInit Initializes a variant.
VariantTimeToDosDateTime Converts the variant representation of a date and time to
MS-DOS date and time values.
VariantTimeToSystemTime Converts the variant representation of time to system time
values.
VarIdiv Converts two variants of any type to integers then returns
the result from dividing them.
VarImp Performs a bitwise implication on two variants.
T IT L E DESC RIP T IO N
VarInt Returns the integer portion of a variant.
VarMod Divides two variants and returns only the remainder.
VarMonthName Returns a string containing the localized month name.
VarMul Returns the result from multiplying two variants.
VarNeg Performs logical negation on a variant.
VarNot Performs the bitwise not negation operation on a variant.
VarNumFromParseNum Converts parsed results to a variant.
VarOr Performs a logical disjunction on two variants.
VarParseNumFromStr Parses a string, and creates a type-independent description of
the number it represents.
VarPow Returns the result of performing the power function with two
variants.
VarR4CmpR8 Compares two variants of types float and double.
VarR4FromBool Converts a Boolean value to a float value.
VarR4FromCy Converts a currency value to a float value.
VarR4FromDate Converts a date value to a float value.
VarR4FromDec Converts a decimal value to a float value.
VarR4FromDisp Converts the default property of an IDispatch instance to a
float value.
VarR4FromI1 Onverts a char value to a float value.
VarR4FromI2 Converts a short value to a float value.
VarR4FromI4 Converts a long value to a float value.
VarR4FromI8 Converts an 8-byte integer value to a float value.
VarR4FromR8 Converts a double value to a float value.
VarR4FromStr Converts an OLECHAR string to a float value.
VarR4FromUI1 Converts an unsigned char value to a float value.
VarR4FromUI2 Converts an unsigned short value to a float value.
T IT L E DESC RIP T IO N
VarR4FromUI4 Converts an unsigned long value to a float value.
VarR4FromUI8 Converts an unsigned 8-byte integer value to a float value.
VarR8FromBool Converts a Boolean value to a double value.
VarR8FromCy Converts a currency value to a double value.
VarR8FromDate Converts a date value to a double value.
VarR8FromDec Converts a decimal value to a double value.
VarR8FromDisp Converts the default property of an IDispatch instance to a
double value.
VarR8FromI1 Converts a char value to a double value.
VarR8FromI2 Converts a short value to a double value.
VarR8FromI4 Converts a long value to a double value.
VarR8FromI8 Converts an 8-byte integer value to a double value.
VarR8FromR4 Converts a float value to a double value.
VarR8FromStr Converts an OLECHAR string to a double value.
VarR8FromUI1 Converts an unsigned char value to a double value.
VarR8FromUI2 Converts an unsigned short value to a double value.
VarR8FromUI4 Converts an unsigned long value to a double value.
VarR8FromUI8 Converts an 8-byte unsigned integer value to a double value.
VarR8Pow Performs the power function for variants of type double.
VarR8Round Rounds a variant of type double to the specified number of
decimal places.
VarRound Rounds a variant to the specified number of decimal places.
VarSub Subtracts two variants.
VarTokenizeFormatString Parses the actual format string into a series of tokens which
can be used to format variants using VarFormatFromTokens.
VarUdateFromDate Converts a time and date converted from variant format to
MS-DOS format.
VarUI1FromBool Converts a Boolean value to an unsigned char value.
T IT L E DESC RIP T IO N
VarUI1FromCy Converts a currency value to an unsigned char value.
VarUI1FromDate Converts a date value to an unsigned char value.
VarUI1FromDec Converts a decimal value to an unsigned char value.
VarUI1FromDisp Converts the default property of an IDispatch instance to an
unsigned char value.
VarUI1FromI1 Converts a char value to an unsigned char value.
VarUI1FromI2 Converts a short value to an unsigned char value.
VarUI1FromI4 Converts a long value to an unsigned char value.
VarUI1FromI8 Converts an 8-byte integer value to a byte value.
VarUI1FromR4 Converts a float value to an unsigned char value.
VarUI1FromR8 Converts a double value to an unsigned char value.
VarUI1FromStr Converts an OLECHAR string to an unsigned char string.
VarUI1FromUI2 Converts an unsigned short value to an unsigned char value.
VarUI1FromUI4 Converts an unsigned long value to an unsigned char value.
VarUI1FromUI8 Converts an 8-byte unsigned integer value to a byte value.
VarUI2FromBool Converts a Boolean value to an unsigned short value.
VarUI2FromCy Converts a currency value to an unsigned short value.
VarUI2FromDate Converts a date value to an unsigned short value.
VarUI2FromDec Converts a decimal value to an unsigned short value.
VarUI2FromDisp Converts the default property of an IDispatch instance to an
unsigned short value.
VarUI2FromI1 Converts a char value to an unsigned short value.
VarUI2FromI2 Converts a short value to an unsigned short value.
VarUI2FromI4 Converts a long value to an unsigned short value.
VarUI2FromI8 Converts an 8-byte integer value to an unsigned short value.
VarUI2FromR4 Converts a float value to an unsigned short value.
T IT L E DESC RIP T IO N
VarUI2FromR8 Converts a double value to an unsigned short value.
VarUI2FromStr Converts an OLECHAR string to an unsigned short value.
VarUI2FromUI1 Converts an unsigned char value to an unsigned short value.
VarUI2FromUI4 Converts an unsigned long value to an unsigned short value.
VarUI2FromUI8 Converts an 8-byte unsigned integer value to an unsigned
short value.
VarUI4FromBool Converts a Boolean value to an unsigned long value.
VarUI4FromCy Converts a currency value to an unsigned long value.
VarUI4FromDate Converts a date value to an unsigned long value.
VarUI4FromDec Converts a decimal value to an unsigned long value.
VarUI4FromDisp Converts the default property of an IDispatch instance to an
unsigned long value.
VarUI4FromI1 Converts a char value to an unsigned long value.
VarUI4FromI2 Converts a short value to an unsigned long value.
VarUI4FromI4 Converts a long value to an unsigned long value.
VarUI4FromI8 Converts an 8-byte integer value to an unsigned long value.
VarUI4FromR4 Converts a float value to an unsigned long value.
VarUI4FromR8 Converts a double value to an unsigned long value.
VarUI4FromStr Converts an OLECHAR string to an unsigned long value.
VarUI4FromUI1 Converts an unsigned char value to an unsigned long value.
VarUI4FromUI2 Converts an unsigned short value to an unsigned long value.
VarUI4FromUI8 Converts an 8-byte unsigned integer value to an unsigned
long value.
VarUI8FromBool Converts a VARIANT_BOOL value to an 8-byte unsigned
integer value.
VarUI8FromCy Converts a currency value to an 8-byte unsigned integer
value.
VarUI8FromDate Converts a date value to an 8-byte unsigned integer value.
T IT L E DESC RIP T IO N
VarUI8FromDec Converts a decimal value to an 8-byte unsigned integer value.
VarUI8FromDisp Converts the default property of an IDispatch instance to an
8-byte unsigned integer value.
VarUI8FromI1 Converts a char value to an 8-byte unsigned integer value.
VarUI8FromI2 Converts a short value to an 8-byte unsigned integer value.
VarUI8FromI8 Converts an 8-byte integer value to an 8-byte unsigned
integer value.
VarUI8FromR4 Converts a float value to an 8-byte unsigned integer value.
VarUI8FromR8 Converts a double value to an 8-byte unsigned integer value.
VarUI8FromStr Converts an OLECHAR string to an 8-byte unsigned integer
value.
VarUI8FromUI1 Converts a byte value to an 8-byte unsigned integer value.
VarUI8FromUI2 Converts an unsigned short value to an 8-byte unsigned
integer value.
VarUI8FromUI4 Converts an unsigned long value to an 8-byte unsigned
integer value.
VarWeekdayName Returns a string containing the localized name of the weekday.
VarXor Performs a logical exclusion on two variants.
VectorFromBstr Returns a vector, assigning each character in the BSTR to an
element of the vector.
Interfaces
T IT L E DESC RIP T IO N
ICreateErrorInfo Returns error information.
ICreateTypeInfo Provides the tools for creating and administering the type
information defined through the type description.
ICreateTypeInfo2 Provides the tools for creating and administering the type
information defined through the type description.
ICreateTypeLib Provides the methods for creating and managing the
component or file that contains type information.
ICreateTypeLib2 Provides the methods for creating and managing the
component or file that contains type information.
T IT L E DESC RIP T IO N
IDispatch Exposes objects, methods and properties to programming
tools and other applications that support Automation.
IEnumVARIANT Provides a method for enumerating a collection of variants,
including heterogeneous collections of objects and intrinsic
types.
IErrorInfo Provides detailed contextual error information.
IRecordInfo Describes the structure of a particular UDT.
ISupportErrorInfo Ensures that error information can be propagated up the call
chain correctly. Automation objects that use the error
handling interfaces must implement ISupportErrorInfo.
ITypeChangeEvents Enables clients to subscribe to type change notifications on
objects that implement the ITypeInfo, ITypeInfo2,
ICreateTypeInfo, and ICreateTypeInfo2 interfaces.
ITypeComp The ITypeComp interface provides a fast way to access
information that compilers need when binding to and
instantiating structures and interfaces.
ITypeInfo Used for reading information about objects.
ITypeInfo2 Used for reading information about objects.
ITypeLib Represents a type library, the data that describes a set of
objects.
ITypeLib2 Represents a type library, the data that describes a set of
objects.
Structures
T IT L E DESC RIP T IO N
ARRAYDESC Describes an array, its element type, and its dimension.
BINDPTR Describes a pointer.
CUSTDATA Represents custom data.
CUSTDATAITEM Represents a custom data item.
DISPPARAMS Contains the arguments passed to a method or property.
EXCEPINFO Describes an exception that occurred during IDispatch::Invoke.
FUNCDESC Describes a function.
T IT L E DESC RIP T IO N
INTERFACEDATA Describes the object's properties and methods.
METHODDATA Describes a method or property.
NUMPARSE Specifies numeric parsing information.
PARAMDATA Describes a parameter accepted by a method or property.
PARAMDESC Contains information needed for transferring a structure
element, parameter, or function return value between
processes.
PARAMDESCEX Contains information about the default value of a parameter.
SAFEARRAY Represents a safe array.
SAFEARRAYBOUND Represents the bounds of one dimension of the array.
TLIBATTR Contains information about a type library. Information from
this structure is used to identify the type library and to
provide national language support for member names.
TYPEATTR Contains attributes of a type.
TYPEDESC Describes the type of a variable, the return type of a function,
or the type of a function parameter.
VARDESC Describes a variable, constant, or data member.
VARIANT VARIANTARG describes arguments passed within
DISPPARAMS, and VARIANT to specify variant data that
cannot be passed by reference.
Background Intelligent Transfer Service
2/7/2020 • 21 minutes to read • Edit Online
Overview of the Background Intelligent Transfer Service technology.
To develop Background Intelligent Transfer Service, you need these headers:
bits.h
bits10_1.h
bits10_2.h
bits10_3.h
bits1_5.h
bits2_0.h
bits2_5.h
bits3_0.h
bits4_0.h
bits5_0.h
bitscfg.h
qmgr.h
For programming guidance for this technology, see:
Background Intelligent Transfer Service
Enumerations
T IT L E DESC RIP T IO N
BG_AUTH_SCHEME Defines constants that specify the authentication scheme to
use when a proxy or server requests user authentication.
BG_AUTH_TARGET Defines constants that specify whether the credentials are
used for proxy or server user authentication requests.
BG_CERT_STORE_LOCATION Defines constants that specify the location of the certificate
store.
BG_ERROR_CONTEXT Defines constants that specify the context in which the error
occurred.
BG_JOB_PRIORITY Defines constants that specify the priority level of a job.
BG_JOB_PROXY_USAGE Defines constants that specify which proxy to use for file
transfers. You can define different proxy settings for each job.
BG_JOB_STATE Defines constants that specify the different states of a job.
BG_JOB_TYPE Defines constants that specify the type of transfer job, such
as download.
T IT L E DESC RIP T IO N
BITS_FILE_PROPERTY_ID Defines constants that specify ID values corresponding to
background copy file properties.
BITS_JOB_PROPERTY_ID Defines constants that specify the ID of the property for the
BITS job.
BITS_JOB_TRANSFER_POLICY Defines constants that specify ID values corresponding to
BITS properties.
GROUPPROP The GROUPPROP enumeration defines the constant values
for retrieving and setting group property values.
Functions
T IT L E DESC RIP T IO N
AddFile Adds a single file to the job.
AddFiles Use the AddFiles method to add one or more files to
download to the job.
AddFileSet Adds multiple files to a job.
AddFileWithRanges Adds a file to a download job and specifies the ranges of the
file you want to download.
Cancel Deletes the job from the transfer queue and removes related
temporary files from the client (downloads) and server
(uploads).
CancelGroup Use the CancelGroup method to remove the group from the
queue. Files completely downloaded before calling this
method are available to the client. You can cancel a group at
anytime; however, the group cannot be recovered once it is
canceled.
ClearHelperToken Discards the helper token, and does not change the usage
flags.
ClearPeers Removes all peers from the list of peers that can serve
content.
ClearRecords Removes all the records and files from the cache.
Clone Creates another IEnumBackgroundCopyFiles enumerator that
contains the same enumeration state as the current one.
Clone Creates another IEnumBackgroundCopyJobs enumerator that
contains the same enumeration state as the current one.
Clone Creates another IEnumBitsPeerCacheRecords enumerator that
contains the same enumeration state as the current one.
T IT L E DESC RIP T IO N
Clone Creates another IEnumBitsPeers enumerator that contains
the same enumeration state as the current one.
Clone Use the Clone method to create another
IEnumBackgroundCopyGroups enumerator that contains the
same enumeration state as the current one.
Clone Use the Clone method to create another
IEnumBackgroundCopyJobs1 enumerator that contains the
same enumeration state as the current one.
Complete Ends the job and saves the transferred files on the client.
CreateGroup Use the CreateGroup method to create a new group and add
it to the download queue.
CreateJob Creates a job.
CreateJob Use the CreateJob method to add a new job to the group. A
group can contain only one job.
DeleteRecord Deletes a record and file from the cache. This method uses
the record's identifier to identify the record to delete.
DeleteUrl Deletes all cache records and the file from the cache for the
given URL.
DisableBITSUploads Use the DisableBITSUploads method to disable BITS upload
on the virtual directory to which the ADSI object points. This
method sets the BITSUploadEnabled IIS extension property.
DiscoverPeers Generates a list of peers that can serve content.
EnableBITSUploads Use the EnableBITSUploads method to enable BITS upload on
the virtual directory to which the ADSI object points. This
method sets the BITSUploadEnabled IIS extension property.
EnumFiles Retrieves an IEnumBackgroundCopyFiles interface pointer
that you use to enumerate the files in a job.
EnumGroups Use the EnumGroups method to retrieve a list of groups that
the current user owns. If the current user has Administrator
privileges, the method returns all groups in the queue.
EnumJobs Retrieves an interface pointer to an enumerator object that
you use to enumerate the jobs in the transfer queue. The
order of the jobs in the enumerator is arbitrary.
EnumJobs Use the EnumJobs method to retrieve a list of jobs in the
group. The list contains only one job.
EnumPeers Gets an IEnumBitsPeers interface pointer that you use to
enumerate the peers that can serve content. The
enumeration is a snapshot of the records in the cache.
T IT L E DESC RIP T IO N
EnumRecords Gets an IEnumBitsPeerCacheRecords interface pointer that
you use to enumerate the records in the cache. The
enumeration is a snapshot of the records in the cache.
FileRangesTransferred BITS calls your implementation of the FileRangesTransferred
method when one or more file ranges have been
downloaded. File ranges are added to the job using the
IBackgroundCopyFile6::RequestFileRanges method.
FileTransferred BITS calls your implementation of the FileTransferred method
when BITS successfully finishes transferring a file.
get_GroupID Use the get_GroupID method to retrieve the group's
identifier.
get_JobID Use the get_JobID method to retrieve the job's identifier.
get_Size Use the get_Size method to retrieve the size of all files in the
group to download.
GetCleanupTask Use the GetCleanupTask method to retrieve an interface
pointer to the cleanup task associated with the virtual
directory.
GetCleanupTaskName Use the GetCleanupTaskName method to retrieve the name
of the cleanup task associated with the virtual directory.
GetClientCertificate Retrieves the client certificate from the job.
GetConfigurationFlags Gets the configuration flags that determine if the computer
serves content to peers and can download content from
peers.
GetCount Retrieves a count of the number of files in the enumeration.
GetCount Retrieves a count of the number of jobs in the enumeration.
GetCount Retrieves a count of the number of cache records in the
enumeration.
GetCount Retrieves a count of the number of peers in the enumeration.
GetCount Use the GetCount method to retrieve a count of the number
of groups in the enumeration.
GetCount Use the GetCount method to retrieve a count of the number
of jobs in the enumeration.
GetCustomHeaders Retrieves the custom headers set by an earlier call to
IBackgroundCopyJobHttpOptions::SetCustomHeaders (that
is, headers which BITS will be sending to the remote, not
headers which BITS receives from the remote).
GetDescription Retrieves the description of the job.
T IT L E DESC RIP T IO N
GetDisplayName Retrieves the display name for the job. Typically, you use the
display name to identify the job in a user interface.
GetError Retrieves the error code and identify the context in which the
error occurred.
GetError Retrieves the error interface after an error occurs.
GetErrorContextDescription Retrieves the description of the context in which the error
occurred.
GetErrorCount Retrieves the number of times BITS tried to transfer the job
and an error occurred.
GetErrorDescription Retrieves the error text associated with the error.
GetErrorDescription Retrieves a description for the specified error code.
GetFile Retrieves an interface pointer to the file object associated with
the error.
GetFile Use the GetFile method to retrieve the remote and local file
names for the given file in the job.
GetFileACLFlags Retrieves the flags that identify the owner and ACL
information to maintain when transferring a file using SMB.
GetFileCount Use the GetFileCount method to retrieve the number of files
in the job.
GetFileModificationTime Gets the date and time that the file was last modified on the
server.
GetFileRanges Gets the ranges of the file that are in the cache.
GetFileRanges Retrieves the ranges that you want to download from the
remote file.
GetFileSize Gets the size of the file.
GetFilledFileRanges Returns the set of file ranges that have been downloaded.
GetGroup Use the GetGroup method to retrieve a group from the
download queue.
GetHelperTokenFlags Returns the usage flags for a token that is associated with a
BITS transfer job.
GetHelperTokenSid Returns the SID of the helper token if one is set.
GetHttpMethod Retrieves a wide string containing the HTTP method name for
the BITS transfer. By default, download jobs will be "GET", and
upload and upload-reply jobs will be "BITS_POST".
T IT L E DESC RIP T IO N
GetId Retrieves the identifier used to identify the job in the queue.
GetId Gets the identifier that uniquely identifies the record in the
cache.
GetJob Retrieves a specified job from the transfer queue. Typically,
your application persists the job identifier, so you can later
retrieve the job from the queue.
GetJob Use the GetJob method to retrieve a job from the group.
GetLastAccessTime Gets the date and time that the file was last accessed.
GetLocalName Retrieves the local name of the file.
GetMaximumCacheSize Gets the maximum size of the cache.
GetMaximumContentAge Gets the age by when files are removed from the cache.
GetMaximumDownloadTime Retrieves the maximum time that BITS will spend transferring
the files in the job.
GetMinimumRetryDelay Retrieves the minimum length of time that the service waits
after encountering a transient error condition before trying to
transfer the file.
GetNoProgressTimeout Retrieves the length of time that the service tries to transfer
the file after a transient error condition occurs. If there is
progress, the timer is reset.
GetNotifyCmdLine Retrieves the program to execute when the job enters the
error or transferred state.
GetNotifyFlags Retrieves the event notification flags for the job.
GetNotifyInterface Retrieves the interface pointer to your implementation of the
IBackgroundCopyCallback interface.
GetObject Use the GetObject method to retrieve a pointer to the
IBITSExtensionSetup interface. This method performs the
same binding that the ADsGetObject ADSI function performs.
GetOriginUrl Gets the origin URL of the cached file.
GetOwner Retrieves the identity of the job's owner.
GetOwnerElevationState Gets a value that determines if the token of the owner was
elevated at the time they created or took ownership of the
job.
GetOwnerIntegrityLevel Gets the integrity level of the token of the owner that created
or took ownership of the job.
T IT L E DESC RIP T IO N
GetPeerCachingFlags Retrieves flags that determine if the files of the job can be
cached and served to peers and if BITS can download content
for the job from peers.
GetPeerDownloadStats Specifies statistics about the amount of data downloaded
from peers and origin servers.
GetPeerName Gets the server principal name that uniquely identifies the
peer.
GetPriority Retrieves the priority level for the job. The priority level
determines when the job is processed relative to other jobs in
the transfer queue.
GetProgress Retrieves information on the progress of the file transfer.
GetProgress Retrieves job-related progress information, such as the
number of bytes and files transferred.
GetProgress Use the GetProgress method to retrieve the progress of the
download.
GetProgress Use the GetProgress method to retrieve the job's progress.
GetProp Use the GetProp method to retrieve a property value from
the group.
GetProperty Gets a generic property of a BITS file transfer.
GetProperty A generic method for getting BITS job properties.
GetProtocol Retrieves the protocol used to transfer the file. The remote file
name identifies the protocol to use to transfer the file.
GetProxySettings Retrieves the proxy information that the job uses to transfer
the files.
GetRecord Gets a record from the cache.
GetRemoteName Retrieves the remote name of the file.
GetReplyData Retrieves an in-memory copy of the reply data from the
server application. Call this method only if the job's type is
BG_JOB_TYPE_UPLOAD_REPLY and its state is
BG_JOB_STATE_TRANSFERRED.
GetReplyFileName Retrieves the name of the file that contains the reply data
from the server application. Call this method only if the job
type is BG_JOB_TYPE_UPLOAD_REPLY.
GetReplyProgress Retrieves progress information related to the transfer of the
reply data from an upload-reply job.
T IT L E DESC RIP T IO N
GetSecurityFlags Retrieves the flags for HTTP that determine whether the
certificate revocation list is checked and certain certificate
errors are ignored, and the policy to use when a server
redirects the HTTP request.
GetState Retrieves the state of the job.
GetStatus Use the GetStatus method to retrieve the state of the group.
GetStatus Use the GetStatus method to retrieve the state of the job.
GetTemporaryName Gets the full path of the temporary file that contains the
content of the download.
GetTimes Retrieves job-related time stamps, such as the time that the
job was created or last modified.
GetType Retrieves the type of transfer being performed, such as a file
download or upload.
GetValidationState Gets the current validation state of this file.
IsAuthenticated Determines whether the peer is authenticated.
IsAvailable Determines whether the peer is available (online) to serve
content.
IsDownloadedFromPeer Gets a value that determines if any part of the file was
downloaded from a peer.
IsFileValidated Determines whether the file has been validated.
JobError BITS calls your implementation of the JobError method when
the state of the job changes to BG_JOB_STATE_ERROR.
JobModification BITS calls your implementation of the JobModification
method when the job has been modified.
JobTransferred BITS calls your implementation of the JobTransferred method
when all of the files in the job have been successfully
transferred.
MakeCustomHeadersWriteOnly Sets the HTTP custom headers for this job to be write-only.
Next Retrieves a specified number of items in the enumeration
sequence. If there are fewer than the requested number of
elements left in the sequence, it retrieves the remaining
elements.
Next Retrieves a specified number of items in the enumeration
sequence. If there are fewer than the requested number of
elements left in the sequence, it retrieves the remaining
elements.
T IT L E DESC RIP T IO N
Next Retrieves a specified number of items in the enumeration
sequence. If there are fewer than the requested number of
elements left in the sequence, it retrieves the remaining
elements.
Next Retrieves a specified number of items in the enumeration
sequence. If there are fewer than the requested number of
elements left in the sequence, it retrieves the remaining
elements.
Next Use the Next method to retrieve the specified number of
items in the enumeration sequence. If there are fewer than
the requested number of elements left in the sequence, it
retrieves the remaining elements.
Next Use the Next method to retrieve the specified number of
items in the enumeration sequence. If there are fewer than
the requested number of elements left in the sequence, it
retrieves the remaining elements.
OnStatus Implement the OnStatus method to receive notification when
the group is complete or an error occurs.
RemoveClientCertificate Removes the client certificate from the job.
RemoveCredentials Removes credentials from use. The credentials must match an
existing target and scheme pair that you specified using the
IBackgroundCopyJob2::SetCredentials method. There is no
method to retrieve the credentials you have set.
ReplaceRemotePrefix Replaces the beginning text of all remote names in the
download job with the specified string.
RequestFileRanges Adds a new set of file ranges to be prioritized for download.
Reset Resets the enumeration sequence to the beginning.
Reset Resets the enumeration sequence to the beginning.
Reset Resets the enumeration sequence to the beginning.
Reset Resets the enumeration sequence to the beginning.
Reset Use the Reset method to reset the enumeration sequence to
the beginning.
Reset Use the Reset method to reset the enumeration sequence to
the beginning.
Resume Activates a new job or restarts a job that has been
suspended.
ResumeGroup Use the ResumeGroup method to start a group that has
been suspended in the download queue.
T IT L E DESC RIP T IO N
SetClientCertificateByID Specifies the identifier of the client certificate to use for client
authentication in an HTTPS (SSL) request.
SetClientCertificateByName Specifies the subject name of the client certificate to use for
client authentication in an HTTPS (SSL) request.
SetConfigurationFlags Sets the configuration flags that determine if the computer
can serve content to peers and can download content from
peers.
SetCredentials Specifies the credentials to use for a proxy or remote server
user authentication request.
SetCustomHeaders Specifies one or more custom HTTP headers to include in
HTTP requests.
SetDescription Provides a description of the job.
SetDisplayName Specifies a display name for the job. Typically, you use the
display name to identify the job in a user interface.
SetFileACLFlags Specifies the owner and ACL information to maintain when
using SMB to download or upload a file.
SetHelperToken Sets the helper token to impersonate the token of the COM
client.
SetHelperTokenFlags Sets the usage flags for a token that is associated with a BITS
transfer job.
SetHttpMethod Overrides the default HTTP method used for a BITS transfer.
SetMaximumCacheSize Specifies the maximum size of the cache.
SetMaximumContentAge Specifies when files are removed from the cache based on
age.
SetMaximumDownloadTime Sets the maximum time that BITS will spend transferring the
files in the job.
SetMinimumRetryDelay Sets the minimum length of time that BITS waits after
encountering a transient error condition before trying to
transfer the file.
SetNoProgressTimeout Sets the length of time that BITS tries to transfer the file after
a transient error condition occurs. If there is progress, the
timer is reset.
SetNotifyCmdLine Specifies a program to execute if the job enters the
BG_JOB_STATE_ERROR or BG_JOB_STATE_TRANSFERRED state.
BITS executes the program in the context of the user who
called this method.
T IT L E DESC RIP T IO N
SetNotifyFlags Specifies the type of event notification you want to receive,
such as job transferred events.
SetNotifyInterface Identifies your implementation of the
IBackgroundCopyCallback interface to BITS. Use the
IBackgroundCopyCallback interface to receive notification of
job-related events.
SetPeerCachingFlags Sets flags that determine if the files of the job can be cached
and served to peers and if the job can download content
from peers.
SetPriority Specifies the priority level of your job. The priority level
determines when your job is processed relative to other jobs
in the transfer queue.
SetProp Use the SetProp method to set the property value for a
group property.
SetProperty Sets a generic property of a BITS file transfer.
SetProperty A generic method for setting BITS job properties.
SetProxySettings Specifies which proxy to use to transfer files.
SetRemoteName Changes the remote name to a new URL in a download job.
SetReplyFileName Specifies the name of the file to contain the reply data from
the server application. Call this method only if the job's type
is BG_JOB_TYPE_UPLOAD_REPLY.
SetSecurityFlags Sets flags for HTTP that determine whether the certificate
revocation list is checked and certain certificate errors are
ignored, and the policy to use when a server redirects the
HTTP request.
SetServerCertificateValidationInterface Server certificates are sent when an HTTPS connection is
opened. Use this method to set a callback to be called to
validate those server certificates.
SetValidationState Sets the validation state of this file.
Skip Skips the next specified number of elements in the
enumeration sequence. If there are fewer elements left in the
sequence than the requested number of elements to skip, it
skips past the last element in the sequence.
Skip Skips the next specified number of elements in the
enumeration sequence. If there are fewer elements left in the
sequence than the requested number of elements to skip, it
skips past the last element in the sequence.
T IT L E DESC RIP T IO N
Skip Skips the next specified number of elements in the
enumeration sequence. If there are fewer elements left in the
sequence than the requested number of elements to skip, it
skips past the last element in the sequence.
Skip Skips the next specified number of elements in the
enumeration sequence. If there are fewer elements left in the
sequence than the requested number of elements to skip, it
skips past the last element in the sequence.
Skip Use the Skip method to skip the next specified number of
elements in the enumeration sequence. If there are fewer
elements left in the sequence than the requested number of
elements to skip, it skips past the last element in the
sequence.
Skip Use the Skip method to skip the next specified number of
elements in the enumeration sequence. If there are fewer
elements left in the sequence than the requested number of
elements to skip, it skips past the last element in the
sequence.
Suspend Suspends a job. New jobs, jobs that are in error, and jobs that
have finished transferring files are automatically suspended.
SuspendGroup Use the SuspendGroup method to pause a group in the
download queue. New groups, groups that are in error, or
groups that have finished downloading are automatically
suspended.
SwitchToForeground Use the SwitchToForeground method to download the group
in the foreground instead of the background.
TakeOwnership Changes ownership of the job to the current user.
UpdateDownloadPosition Specifies a position to prioritize downloading missing data
from.
ValidateServerCertificate A callback method that you implement that will be called so
that you can validate the server certificates sent when an
HTTPS connection is opened.
Interfaces
T IT L E DESC RIP T IO N
IBackgroundCopyCallback Implement the IBackgroundCopyCallback interface to receive
notification that a job is complete, has been modified, or is in
error. Clients use this interface instead of polling for the status
of the job.
IBackgroundCopyCallback1 Implement the IBackgroundCopyCallback1 interface to
receive notification when events occur.
T IT L E DESC RIP T IO N
IBackgroundCopyCallback2 Implement this interface to receive notification that a file has
completed downloading.
IBackgroundCopyCallback3 Clients implement the IBackgroundCopyCallback3 interface to
receive notification that ranges of a file have completed
downloading.
IBackgroundCopyError Use the IBackgroundCopyError interface to determine the
cause of an error and if the transfer process can proceed.
IBackgroundCopyFile IBackgroundCopyFile contains information about a file that is
part of a job. For example, you can use IBackgroundCopyFile
methods to retrieve the local and remote names of the file
and transfer progress information.
IBackgroundCopyFile2 Use the IBackgroundCopyFile2 interface to specify a new
remote name for the file and retrieve the list of ranges to
download.
IBackgroundCopyFile3 Use this interface to retrieve the name of the temporary file
that contains the downloaded content and to validate the file
so that peers can request its content.
IBackgroundCopyFile4 Use this interface to retrieve download statistics for peers and
origin servers.
IBackgroundCopyFile5 Use this interface to get or set generic properties of BITS file
transfers.
IBackgroundCopyFile6 Use this interface to request file ranges for On Demand
download jobs.
IBackgroundCopyGroup Use the IBackgroundCopyGroup interface to manage a
group. A group contains download jobs. For example, add a
job to the group, set the properties of the group, and start
and stop the group in the download queue.
IBackgroundCopyJob Use the IBackgroundCopyJob interface to add files to the job,
set the priority level of the job, determine the state of the job,
and to start and stop the job.
IBackgroundCopyJob1 Use the IBackgroundCopyJob1 interface to add files to the
job and retrieve the job's status.
IBackgroundCopyJob2 Retrieve reply data from an upload-reply job, determine the
progress of the reply data transfer to the client, request
command line execution, and provide credentials for proxy
and remote server authentication requests.
IBackgroundCopyJob3 Use the IBackgroundCopyJob3 interface to download ranges
of a file and change the prefix of a remote file name.
IBackgroundCopyJob4 Use this interface to enable peer caching, restrict download
time, and inspect user token characteristics.
T IT L E DESC RIP T IO N
IBackgroundCopyJob5 Use this interface to query or set several optional behaviors
of a job.
IBackgroundCopyJobHttpOptions Use this interface to specify client certificates for certificate-
based client authentication and custom headers for HTTP
requests.
IBackgroundCopyJobHttpOptions2 Use this interface to retrieve and/or to override the HTTP
method used for a BITS transfer.
IBackgroundCopyJobHttpOptions3 Use this interface to set HTTP customer headers to write-only,
or to set a server certificate validation callback method that
you've implemented.
IBackgroundCopyManager Creates transfer jobs, retrieves an enumerator object that
contains the jobs in the queue, and retrieves individual jobs
from the queue.
IBackgroundCopyQMgr Use the IBackgroundCopyQMgr interface to create a new
group, retrieve an existing group, or enumerate all groups in
the queue. A group contains a download job.
IBackgroundCopyServerCertificateValidationCallback Server certificates are sent when an HTTPS connection is
opened. Use this method to implement a callback to be called
to validate those server certificates.
IBITSExtensionSetup Use the IBITSExtensionSetup interface to enable or disable
BITS uploads to a virtual directory.
IBITSExtensionSetupFactory Use the IBITSExtensionSetupFactory interface to get a pointer
to the IBITSExtensionSetup interface.
IBitsPeer Use IBitsPeer to get information about a peer in the
neighborhood.
IBitsPeerCacheAdministration Use IBitsPeerCacheAdministration to manage the pool of
peers from which you can download content.
IBitsPeerCacheRecord Use IBitsPeerCacheRecord to get information about a file in
the cache.
IBitsTokenOptions Use IBitsTokenOptions to associate and manage a pair of
security tokens for a Background Intelligent Transfer Service
(BITS) transfer job.
IEnumBackgroundCopyFiles Use the IEnumBackgroundCopyFiles interface to enumerate
the files that a job contains. To get an
IEnumBackgroundCopyFiles interface pointer, call the
IBackgroundCopyJob::EnumFiles method.
IEnumBackgroundCopyGroups Use the IEnumBackgroundCopyGroups interface to
enumerate the list of groups in the download queue. To get
an IEnumBackgroundCopyGroups interface pointer, call the
IBackgroundCopyQMgr::EnumGroups method.
T IT L E DESC RIP T IO N
IEnumBackgroundCopyJobs Use the IEnumBackgroundCopyJobs interface to enumerate
the list of jobs in the transfer queue. To get an
IEnumBackgroundCopyJobs interface pointer, call the
IBackgroundCopyManager::EnumJobs method.
IEnumBackgroundCopyJobs1 Use the IEnumBackgroundCopyJobs1 interface to enumerate
the list of jobs in a group. To get an
IEnumBackgroundCopyJobs1 interface pointer, call the
IBackgroundCopyGroup::EnumJobs method.
IEnumBitsPeerCacheRecords Use IEnumBitsPeerCacheRecords to enumerate the records of
the cache.
IEnumBitsPeers Use IEnumBitsPeers to enumerate the list of peers that BITS
has discovered.
Structures
T IT L E DESC RIP T IO N
BG_AUTH_CREDENTIALS Identifies the target (proxy or server), authentication scheme,
and the user's credentials to use for user authentication
requests. The structure is passed to the
IBackgroundCopyJob2::SetCredentials method.
BG_AUTH_CREDENTIALS_UNION Identifies the credentials to use for the authentication scheme
specified in the BG_AUTH_CREDENTIALS structure.
BG_BASIC_CREDENTIALS The BG_BASIC_CREDENTIALS structure identifies the user
name and password to authenticate.
BG_FILE_INFO Provides the local and remote names of the file to transfer.
BG_FILE_PROGRESS Provides file-related progress information, such as the
number of bytes transferred.
BG_FILE_RANGE Identifies a range of bytes to download from a file.
BG_JOB_PROGRESS Provides job-related progress information, such as the
number of bytes and files transferred.
BG_JOB_REPLY_PROGRESS Provides progress information related to the reply portion of
an upload-reply job.
BG_JOB_TIMES Provides job-related time stamps.
BITS_FILE_PROPERTY_VALUE Provides the property value of a BITS file.
BITS_JOB_PROPERTY_VALUE Provides the property value of the BITS job based on the
value of the BITS_JOB_PROPERTY_ID enumeration.
FILESETINFO The FILESETINFO structure identifies the remote and local
names of the file to download.
Backup
2/7/2020 • 2 minutes to read • Edit Online
Overview of the Backup technology.
To develop Backup, you need these headers:
winbase.h
winnt.h
For programming guidance for this technology, see:
Backup
Functions
T IT L E DESC RIP T IO N
BackupRead Back up a file or directory, including the security information.
BackupSeek Seeks forward in a data stream initially accessed by using the
BackupRead or BackupWrite function.
BackupWrite Restore a file or directory that was backed up using
BackupRead.
CreateTapePartition Reformats a tape.
EraseTape Erases all or part of a tape.
GetTapeParameters Retrieves information that describes the tape or the tape drive.
GetTapePosition Retrieves the current address of the tape, in logical or absolute
blocks.
GetTapeStatus Determines whether the tape device is ready to process tape
commands.
PrepareTape Prepares the tape to be accessed or removed.
SetTapeParameters Specifies the block size of a tape or configures the tape device.
SetTapePosition Sets the tape position on the specified device.
WriteTapemark Writes a specified number of filemarks, setmarks, short
filemarks, or long filemarks to a tape device.
Structures
T IT L E DESC RIP T IO N
TAPE_ERASE Describes the partition to be erased.
TAPE_GET_DRIVE_PARAMETERS Describes the tape drive. It is used by the GetTapeParameters
function.
TAPE_GET_MEDIA_PARAMETERS Describes the tape in the tape drive. It is used by the
GetTapeParametersfunction.
TAPE_GET_POSITION Describes the position of the tape.
TAPE_PREPARE Describes how to prepare the tape.
TAPE_SET_DRIVE_PARAMETERS Describes the tape drive. It is used by the
SetTapeParametersfunction.
TAPE_SET_MEDIA_PARAMETERS Describes the tape in the tape drive. It is used by the
SetTapeParametersfunction.
TAPE_SET_POSITION Describes how and where to position the tape.
TAPE_WRITE_MARKS Describes the type and number of tapemarks to write.
WIN32_STREAM_ID Contains stream data.
Battery Devices Reference
2/7/2020 • 2 minutes to read • Edit Online
Overview of the Battery Devices Reference technology.
To develop Battery Devices Reference, you need these headers:
batclass.h
For programming guidance for this technology, see:
Battery Devices Reference
Functions
T IT L E DESC RIP T IO N
BatteryClassInitializeDevice The BatteryClassInitializeDevice routine initializes a new
battery device for the class driver.
BatteryClassIoctl BatteryClassIoctl handles system-defined battery IOCTLs.
BatteryClassQueryWmiDataBlock The BatteryClassQueryWmiDataBlock routine is used by
battery miniclass drivers inside their DpWmiQueryDataBlock
routines to allow the battery class driver to process the WMI
data block query requests it handles on behalf of the driver.
BatteryClassStatusNotify BatteryClassStatusNotify notifies the battery class driver of
changes in battery status.
BatteryClassSystemControl The BatteryClassSystemControl routine processes WMI IRPs
on behalf of a battery miniclass driver.
BatteryClassUnload BatteryClassUnload frees resources for a battery device that is
no longer in use.
BCLASS_DISABLE_STATUS_NOTIFY_CALLBACK BatteryMiniDisableStatusNotify disables status notification for
a battery device.
BCLASS_QUERY_INFORMATION_CALLBACK BatteryMiniQueryInformation returns information about the
given battery device.
BCLASS_QUERY_STATUS_CALLBACK BatteryMiniQueryStatus returns status information about the
given battery device.
BCLASS_QUERY_TAG_CALLBACK BatteryMiniQueryTag returns the current battery tag.
BCLASS_SET_INFORMATION_CALLBACK BatteryMiniSetInformation requests that a battery enter the
charging or discharging state, or sets a critical bias value for
the battery.
T IT L E DESC RIP T IO N
BCLASS_SET_STATUS_NOTIFY_CALLBACK BatteryMiniSetStatusNotify sets the battery capacity and
power state levels at which the class driver requires
notification.
Structures
T IT L E DESC RIP T IO N
BATTERY_MINIPORT_INFO Battery miniclass drivers fill in this structure before calling the
battery class driver's BatteryClassInitializeDevice routine.
BATTERY_MINIPORT_INFO_V1_1 Battery miniclass drivers fill in the
BATTERY_MINIPORT_INFO_V1_1 structure before calling the
battery class driver's BatteryClassInitializeDevice routine.
BATTERY_MINIPORT_INFO_V1_1 is an updated version of the
previous structure BATTERY_MINIPORT_INFO.
BATTERY_NOTIFY A battery miniclass driver receives a BATTERY_NOTIFY
structure when its BatteryMiniSetStatusNotify routine is called.
BATTERY_TAG_CHANGE This structure is reserved for system use.
BATTERY_WMI_CYCLE_COUNT Defines information about number of charge cycles of a
battery for use with the BatteryClassQueryWmiDataBlock
function.
BATTERY_WMI_FULL_CHARGED_CAPACITY Defines information about the capacity of a battery for use
with the BatteryClassQueryWmiDataBlock).
BATTERY_WMI_RUNTIME Defines information about the estimated runtime of a battery
for use with the BatteryClassQueryWmiDataBlock function.
BATTERY_WMI_STATIC_DATA Defines static data about a battery.
BATTERY_WMI_STATUS Defines battery status information.
BATTERY_WMI_STATUS_CHANGE This structure is reserved for system use.
BATTERY_WMI_TEMPERATURE Defines information about temperature of the battery for use
with the BatteryClassQueryWmiDataBlock function.
Bluetooth Devices Reference
3/13/2020 • 2 minutes to read • Edit Online
Overview of the Bluetooth Devices Reference technology.
To develop Bluetooth Devices Reference, you need these headers:
bluetoothleapis.h
bthledef.h
For programming guidance for this technology, see:
Bluetooth Devices Reference
Enumerations
T IT L E DESC RIP T IO N
BTH_LE_GATT_DESCRIPTOR_TYPE The BTH_LE_GATT_DESCRIPTOR_TYPE enumeration describes
the different types of Bluetooth LE generic attributes (GATT).
BTH_LE_GATT_EVENT_TYPE The BTH_LE_GATT_EVENT_TYPE enumeration describes the
different types of Bluetooth Low Energy (LE) generic attribute
(GATT) profile events.
Functions
T IT L E DESC RIP T IO N
BluetoothGATTAbortReliableWrite Specifies the end of reliable write procedures, and the writes
should be aborted.
BluetoothGATTBeginReliableWrite The BluetoothGATTBeginReliableWrite function specifies that
reliable writes are about to begin.
BluetoothGATTEndReliableWrite Specifies the end of reliable writes, and the writes should be
committed.
BluetoothGATTGetCharacteristics Gets all the characteristics available for the specified service.
BluetoothGATTGetCharacteristicValue Gets the value of the specified characteristic.
BluetoothGATTGetDescriptors Gets all the descriptors available for the specified
characteristic.
BluetoothGATTGetDescriptorValue Gets the value of the specified descriptor.
BluetoothGATTGetIncludedServices Gets all the included services available for a given service.
BluetoothGATTGetServices The BluetoothGATTGetServices function gets all the primary
services available for a server.
T IT L E DESC RIP T IO N
BluetoothGATTRegisterEvent Registers a routine to be called back during a characteristic
value change event on the given characteristic identified by its
characteristic handle.
BluetoothGATTSetCharacteristicValue Writes the specified characteristic value to the Bluetooth
device.
BluetoothGATTSetDescriptorValue Writes the specified descriptor value to the Bluetooth device.
BluetoothGATTUnregisterEvent Unregisters the given characteristic value change event.
BluetoothSetLocalServiceInfo Sets local service information for a specific Bluetooth radio.
PFNBLUETOOTH_GATT_EVENT_CALLBACK Profile drivers implement a Bluetooth GATT event callback to
be called whenever the value of a specific characteristic
changes.
Structures
T IT L E DESC RIP T IO N
BLUETOOTH_GATT_VALUE_CHANGED_EVENT The BLUETOOTH_GATT_VALUE_CHANGED_EVENT structure
describes a changed attribute value.
BLUETOOTH_GATT_VALUE_CHANGED_EVENT_REGISTRATION The
BLUETOOTH_GATT_VALUE_CHANGED_EVENT_REGISTRATION
structure describes one or more characteristics that have
changed.
BTH_LE_GATT_CHARACTERISTIC The BTH_LE_GATT_CHARACTERISTIC structure describes a
Bluetooth Low Energy (LE) generic attribute (GATT) profile
characteristic.
BTH_LE_GATT_CHARACTERISTIC_VALUE The BTH_LE_GATT_CHARACTERISTIC_VALUE structure
describes a Bluetooth Low Energy (LE) generic attribute (GATT)
profile characteristic value.
BTH_LE_GATT_DESCRIPTOR The BTH_LE_GATT_DESCRIPTOR structure describes a
Bluetooth Low Energy (LE) generic attribute (GATT) profile
descriptor.
BTH_LE_GATT_DESCRIPTOR_VALUE The BTH_LE_GATT_DESCRIPTOR_VALUE structure describes a
parent characteristic.
BTH_LE_GATT_SERVICE The BTH_LE_GATT_SERVICE structure describes a Bluetooth
Low Energy (LE) generic attribute (GATT) profile service.
BTH_LE_UUID The BTH_LE_UUID structure contains information about a
Bluetooth Low Energy (LE) Universally Unique Identifier
(UUID).
Bluetooth
2/7/2020 • 4 minutes to read • Edit Online
Overview of the Bluetooth technology.
To develop Bluetooth, you need these headers:
bluetoothapis.h
bthdef.h
bthsdpdef.h
ws2bth.h
For programming guidance for this technology, see:
Bluetooth
Enumerations
T IT L E DESC RIP T IO N
BLUETOOTH_AUTHENTICATION_METHOD BLUETOOTH_AUTHENTICATION_METHOD enumeration
defines the supported authentication types during device
pairing.
BLUETOOTH_AUTHENTICATION_REQUIREMENTS BLUETOOTH_AUTHENTICATION_REQUIREMENTS
enumeration specifies the 'Man in the Middle' protection
required for authentication.
BLUETOOTH_IO_CAPABILITY BLUETOOTH_IO_CAPABILITY enumeration defines the
input/output capabilities of a Bluetooth Device.
Functions
T IT L E DESC RIP T IO N
BluetoothAuthenticateDevice Sends an authentication request to a remote Bluetooth
device.
BluetoothAuthenticateDeviceEx The BluetoothAuthenticateDeviceEx function sends an
authentication request to a remote Bluetooth device.
BluetoothAuthenticateMultipleDevices Enables the caller to prompt for multiple devices to be
authenticated during a single instance of the Bluetooth
Connection wizard.
BluetoothDisplayDeviceProperties Starts Control Panel device information property sheet.
BluetoothEnableDiscovery The BluetoothEnableDiscovery function changes the discovery
state of a local Bluetooth radio or radios.
T IT L E DESC RIP T IO N
BluetoothEnableIncomingConnections The BluetoothEnableIncomingConnections function modifies
whether a local Bluetooth radio accepts incoming connections.
BluetoothEnumerateInstalledServices The BluetoothEnumerateInstalledServices function
enumerates the services GUIDs (Globally Unique Identifiers)
enabled on a Bluetooth device.
BluetoothFindDeviceClose The BluetoothFindDeviceClose function closes an enumeration
handle associated with a device query.
BluetoothFindFirstDevice The BluetoothFindFirstDevice function begins the
enumeration Bluetooth devices.
BluetoothFindFirstRadio The BluetoothFindFirstRadio function begins the enumeration
of local Bluetooth radios.
BluetoothFindNextDevice The BluetoothFindNextDevice function finds the next
Bluetooth device.
BluetoothFindNextRadio The BluetoothFindNextRadio function finds the next Bluetooth
radio.
BluetoothFindRadioClose The BluetoothFindRadioClose function closes the enumeration
handle associated with finding Bluetooth radios.
BluetoothGetDeviceInfo Retrieves information about a remote Bluetooth device.
BluetoothGetRadioInfo Obtains information about a Bluetooth radio.
BluetoothIsConnectable The BluetoothIsConnectable function determines whether a
Bluetooth radio or radios is connectable.
BluetoothIsDiscoverable The BluetoothIsDiscoverable function determines whether a
Bluetooth radio or radios is discoverable.
BluetoothIsVersionAvailable BluetoothIsVersionAvailable function indicates if the installed
Bluetooth binary set supports the requested version.
BluetoothRegisterForAuthentication The BluetoothRegisterForAuthentication function registers a
callback function that is called when a particular Bluetooth
device requests authentication.
BluetoothRegisterForAuthenticationEx The BluetoothRegisterForAuthenticationEx function registers
an application for a pin request, numeric comparison and
callback function.
BluetoothRemoveDevice Removes authentication between a Bluetooth device and the
computer and clears cached service information for the device.
BluetoothSdpEnumAttributes The BluetoothSdpEnumAttributes function enumerates
through the SDP record stream, and calls the callback function
for each attribute in the record.
T IT L E DESC RIP T IO N
BluetoothSdpGetAttributeValue The BluetoothSdpGetAttributeValue function retrieves the
attribute value for an attribute identifier.
BluetoothSdpGetContainerElementData Iterates a container stream and returns each element
contained within the container element.
BluetoothSdpGetElementData Retrieves and parses a single element from an SDP stream.
BluetoothSdpGetString Converts a raw string embedded in the SDP record into a
Unicode string.
BluetoothSelectDevices Enables Bluetooth device selection.
BluetoothSelectDevicesFree Frees resources associated with a previous call to
BluetoothSelectDevices.
BluetoothSendAuthenticationResponse The BluetoothSendAuthenticationResponse function is called
when an authentication request to send the passkey response
is received.
BluetoothSendAuthenticationResponseEx The BluetoothSendAuthenticationResponseEx function is called
when an authentication request to send the passkey or a
Numeric Comparison response is made.
BluetoothSetServiceState Enables or disables services for a Bluetooth device.
BluetoothUnregisterAuthentication The BluetoothUnregisterAuthentication function removes
registration for a callback routine that was previously
registered with a call to the
BluetoothRegisterForAuthentication function.
BluetoothUpdateDeviceRecord Updates the local computer cache about a Bluetooth device.
PFN_AUTHENTICATION_CALLBACK Used in conjunction with the
BluetoothRegisterForAuthentication function.
PFN_AUTHENTICATION_CALLBACK_EX PFN_AUTHENTICATION_CALLBACK_EX function is a callback
function prototype used in conjunction with the
BluetoothRegisterForAuthenticationEx function.
PFN_BLUETOOTH_ENUM_ATTRIBUTES_CALLBACK A callback function prototype that is called once for each
attribute found in the pSDPStream parameter passed to the
BluetoothSdpEnumAttributes function call.
PFN_DEVICE_CALLBACK A callback prototype used in association with selecting
Bluetooth devices.
Structures
T IT L E DESC RIP T IO N
BLUETOOTH_ADDRESS_STRUCT The BLUETOOTH_ADDRESS structure provides the address of
a Bluetooth device.
T IT L E DESC RIP T IO N
BLUETOOTH_AUTHENTICATE_RESPONSE BLUETOOTH_AUTHENTICATE_RESPONSE structure contains
information passed in response to a
BTH_REMOTE_AUTHENTICATE_REQUEST event.
BLUETOOTH_AUTHENTICATION_CALLBACK_PARAMS BLUETOOTH_AUTHENTICATION_CALLBACK_PARAMS
structure contains specific configuration information about the
Bluetooth device responding to an authentication request.
BLUETOOTH_COD_PAIRS The BLUETOOTH_COD_PAIRS structure provides for
specification and retrieval of Bluetooth Class Of Device (COD)
information.
BLUETOOTH_DEVICE_INFO_STRUCT The BLUETOOTH_DEVICE_INFO structure provides
information about a Bluetooth device.
BLUETOOTH_DEVICE_SEARCH_PARAMS Specifies search criteria for Bluetooth device searches.
BLUETOOTH_FIND_RADIO_PARAMS The BLUETOOTH_FIND_RADIO_PARAMS structure facilitates
enumerating installed Bluetooth radios.
BLUETOOTH_LOCAL_SERVICE_INFO_STRUCT Contains local service information for a Bluetooth device.
BLUETOOTH_NUMERIC_COMPARISON_INFO BLUETOOTH_NUMERIC_COMPARISON_INFO structure
contains the numeric value used for authentication via
numeric comparison.
BLUETOOTH_OOB_DATA_INFO BLUETOOTH_OOB_DATA_INFO structure contains data used
to authenticate prior to establishing an Out-of-Band device
pairing.
BLUETOOTH_PASSKEY_INFO BLUETOOTH_PASSKEY_INFO structure contains a passkey
value used for authentication. A passkey is similar to a
password, except that a passkey value is used for
authentication only once.
BLUETOOTH_PIN_INFO BLUETOOTH_PIN_INFO structure contains information used
for authentication via PIN.
BLUETOOTH_RADIO_INFO Contains information about a Bluetooth radio.
BLUETOOTH_SELECT_DEVICE_PARAMS Facilitates and manages the visibility, authentication, and
selection of Bluetooth devices and services.
BTH_DEVICE_INFO Stores information about a Bluetooth device.
BTH_HCI_EVENT_INFO Used in connection with obtaining WM_DEVICECHANGE
messages for Bluetooth.
BTH_L2CAP_EVENT_INFO Contains data about events associated with an L2CAP
channel.
BTH_QUERY_DEVICE The BTH_QUERY_DEVICE structure is used when querying for
the presence of a Bluetooth device.
T IT L E DESC RIP T IO N
BTH_QUERY_SERVICE The BTH_QUERY_SERVICE structure is used to query a
Bluetooth service.
BTH_RADIO_IN_RANGE Stores data about Bluetooth devices within communication
range.
BTH_SET_SERVICE Provides service information for the specified Bluetooth
service.
SDP_ELEMENT_DATA The SDP_ELEMENT_DATA structure stores SDP element data.
SDP_STRING_TYPE_DATA The SDP_STRING_TYPE_DATA structure stores information
about SDP string types.
SdpAttributeRange The SdpAttributeRange structure is used in a Bluetooth query
to constrain the set of attributes to return in the query.
SdpQueryUuid The SdpQueryUuid structure facilitates searching for UUIDs.
SdpQueryUuidUnion The SdpQueryUuidUnion union contains the UUID on which
to perform an SDP query. Used in conjunction with the
SdpQueryUuid structure.
SOCKADDR_BTH The SOCKADDR_BTH structure is used in conjunction with
Bluetooth socket operations, defined by address family
AF_BTH.
CIMWin32 WMI Providers
2/7/2020 • 2 minutes to read • Edit Online
Overview of the CIMWin32 WMI Providers technology.
To develop CIMWin32 WMI Providers, you need these headers:
sdoias.h
For programming guidance for this technology, see:
CIMWin32 WMI Providers
Cloud Filter API
2/7/2020 • 2 minutes to read • Edit Online
Overview of the Cloud Filter API technology.
To develop Cloud Filter API, you need these headers:
cfapi.h
For programming guidance for this technology, see:
Cloud Filter API
COM+ (Component Services)
2/7/2020 • 2 minutes to read • Edit Online
Overview of the COM+ (Component Services) technology.
To develop COM+ (Component Services), you need these headers:
comadmin.h
mtxdm.h
For programming guidance for this technology, see:
COM+ (Component Services)
Component Object Model (COM)
2/7/2020 • 98 minutes to read • Edit Online
Overview of the Component Object Model (COM) technology.
To develop Component Object Model (COM), you need these headers:
accctrl.h
callobj.h
combaseapi.h
comcat.h
ctxtcall.h
dmerror.h
docobj.h
eventsys.h
guiddef.h
iaccess.h
imessagedispatcher.h
messagedispatcherapi.h
objbase.h
objidl.h
objidlbase.h
ocidl.h
ole.h
ole2.h
oledlg.h
oleidl.h
roapi.h
rpcdce.h
shobjidl.h
txlogpub.h
unknwn.h
unknwnbase.h
urlmon.h
vbinterf.h
winddi.h
winerror.h
wtypesbase.h
For programming guidance for this technology, see:
Component Object Model (COM)
Enumerations
T IT L E DESC RIP T IO N
ACTIVATEFLAGS Indicates whether an object is activated as a windowless
object. It is used in IOleInPlaceSiteEx::OnInPlaceActivateEx.
ADVF Flags that control caching and notification of changes in
data.
APTTYPE Specifies different types of apartments.
APTTYPE Specifies different types of apartments.
APTTYPEQUALIFIER Specifies the set of possible COM apartment type qualifiers.
APTTYPEQUALIFIER Specifies the set of possible COM apartment type qualifiers.
BIND_FLAGS Controls aspects of moniker binding operations.
BINDSPEED Indicates approximately how long the caller will wait to bind
to an object.
CALLFRAME_COPY Determines whether the copied call frame data can be
shared with data in the parent frame by determining its
lifetime dependency on the parent frame.
CALLFRAME_FREE Determines the parameter type to be freed.
CALLFRAME_NULL Determines the parameter type to be freed.
CALLFRAME_WALK Determines the parameter type to be walked.
CALLTYPE Specifies the call types used by
IMessageFilter::HandleInComingCall.
CLSCTX Values that are used in activation calls to indicate the
execution contexts in which an object is to be run.
CO_MARSHALING_CONTEXT_ATTRIBUTES Identifies one of the marshaling context attributes that you
can query by using the GetMarshalingContextAttribute
method.
CO_MARSHALING_CONTEXT_ATTRIBUTES Identifies one of the marshaling context attributes that you
can query by using the GetMarshalingContextAttribute
method.
COINIT Determines the concurrency model used for incoming calls
to objects created by this thread. This concurrency model
can be either apartment-threaded or multithreaded.
COMSD Determines the type of COM security descriptor to get
when calling CoGetSystemSecurityPermissions.
COWAIT_FLAGS Specifies the behavior of the CoWaitForMultipleHandles
function.
T IT L E DESC RIP T IO N
CWMO_FLAGS Provides flags for the CoWaitForMultipleObjects function.
DATADIR Specifies the direction of the data flow. This determines the
formats that the resulting enumerator can enumerate.
DISCARDCACHE Specifies what to do with caches that are to be discarded
from memory if their dirty bit has been set.
DOCMISC Provides miscellaneous property information about a
document object.
DVASPECT Specifies the desired data or view aspect of the object when
drawing or getting data.
DVASPECT2 Specifies new drawing aspects used to optimize the drawing
process.
DVASPECTINFOFLAG Indicates whether an object can support optimized drawing
of itself.
DVEXTENTMODE Indicates whether the sizing mode is content or integral
sizing.
EOC_ChangeType Indicates the nature of the change to an event object.
EOLE_AUTHENTICATION_CAPABILITIES Specifies various capabilities in CoInitializeSecurity and
IClientSecurity::SetBlanket (or its helper function
CoSetProxyBlanket).
EOLE_AUTHENTICATION_CAPABILITIES Specifies various capabilities in CoInitializeSecurity and
IClientSecurity::SetBlanket (or its helper function
CoSetProxyBlanket).
EXTCONN Specifies the type of external connection existing on an
embedded object.
EXTCONN Specifies the type of external connection existing on an
embedded object.
GLOBALOPT_PROPERTIES Identifies process-global options that you can set or query
by using the IGlobalOptions interface.
GLOBALOPT_PROPERTIES Identifies process-global options that you can set or query
by using the IGlobalOptions interface.
GLOBALOPT_UNMARSHALING_POLICY_VALUES Provides values for the COM unmarshaling policy global
option.
GLOBALOPT_UNMARSHALING_POLICY_VALUES Provides values for the COM unmarshaling policy global
option.
GUIDKIND Flags used to specify the kind of information requested from
an object in the IProvideClassInfo2.
T IT L E DESC RIP T IO N
HITRESULT Indicates whether a location is within the image of an object.
MKRREDUCE Specifies how far a moniker should be reduced.
MKSYS Indicates the moniker's class.
MSHCTX Specifies the destination context, which is the process in
which the unmarshaling is to be done.
MSHLFLAGS Specifies why the marshaling is to be done.
OLECLOSE Indicates whether an object should be saved before closing.
OLECMDEXECOPT Specifies command execution options.
OLECMDF Specifies the type of support provided by an object for the
command specified in an OLECMD structure.
OLECMDID Specifies which standard command is to be executed. A
single value from this enumeration is passed in the nCmdID
argument of IOleCommandTarget::Exec.
OLECMDID_WINDOWSTATE_FLAG Specifies the window state.
OLECMDTEXTF Specifies the type of information that an object should store
in the OLECMDTEXT structure passed in
IOleCommandTarget::QueryStatus.
OLECONTF Indicates the type of objects to be enumerated.
OLEDCFLAGS Specifies additional information to the container about the
device context that the object has requested.
OLEGETMONIKER Controls aspects of the behavior of the
IOleObject::GetMoniker and IOleClientSite::GetMoniker
methods.
OLELINKBIND Controls binding operations to a link source.
OLEMISC Describes miscellaneous characteristics of an object or class
of objects.
OLERENDER Indicates the type of caching requested for newly created
objects.
OLEUIPASTEFLAG Indicates the user options that are available to the user
when pasting this format, and within which group or list of
choices (Paste, Paste Link, etc.).
T IT L E DESC RIP T IO N
OLEUPDATE Indicates whether the linked object updates the cached data
for the linked object automatically or only when the
container calls either the IOleObject::Update or
IOleLink::Update methods. The constants are used in the
IOleLink interface.
OLEVERBATTRIB Describes the attributes of a specified verb for an object.
OLEWHICHMK Indicates which part of an object's moniker is being set or
retrieved.
PENDINGMSG Specifies the return values for the
IMessageFilter::MessagePending method.
PENDINGTYPE Indicates the level of nesting in the
IMessageFilter::MessagePending method.
PICTUREATTRIBUTES Specifies attributes of a picture object as returned through
the IPicture::get_Attributes method.
POINTERINACTIVE Indicate the activation policy of the object and are used in
the IPointerInactive::GetActivationPolicy method.
QACONTAINERFLAGS Indicates ambient properties supplied by the container. It is
used in the dwAmbientFlags member of the QACONTAINER
structure.
RECORD_READING_POLICY Specifies a hint about the order in which records are to be
read from a log.
REGCLS Controls the type of connections to a class object.
SERVERCALL Indicates the status of server call.
THDTYPE Indicates whether a particular thread supports a message
loop.
THDTYPE Indicates whether a particular thread supports a message
loop.
TYMED Indicates the type of storage medium being used in a data
transfer. They are used in the STGMEDIUM or FORMATETC
structures.
TYSPEC Specifies a mapping for a class ID.
UASFLAGS Provides information about the parent undo unit.
USERCLASSTYPE Indicates the different variants of the display name
associated with a class of objects.
VIEWSTATUS Specifies the opacity of the object and the drawing aspects
supported by the object.
Functions
T IT L E DESC RIP T IO N
Activate Creates the dialog box window for the property page.
ActivateMe Asks a document site to activate the document making the
call as a document object rather than an in-place-active
object and, optionally, specifies which view of the object
document to activate.
Add Adds a simple undo unit to the collection.
Add Adds a simple undo unit to the collection. While a parent
undo unit is open, the undo manager adds undo units to it
by calling IOleParentUndoUnit::Add.
AddConnection Increments the count of an object's strong external
connections.
AddConnection Increments the count of an object's strong external
connections.
AddRef Increments the reference count for an interface pointer to a
COM object. You should call this method whenever you
make a copy of an interface pointer.
AddRefHfont Notifies the font object that the previously realized font
identified with hFont should remain valid until ReleaseHfont
is called or the font object itself is released completely.
AddRefOnProcess Increments the reference count of the process.
AddSynchronize Adds a synchronization object to the container.
AddSynchronize Adds a synchronization object to the container.
AdjustRect Adjusts a specified rectangle if it is entirely or partially
covered by overlapping, opaque objects.
Advise Establishes a connection between a connection point object
and the client's sink.
Advise Establishes an advisory connection between an OLE object
and the calling object's advise sink. Through that sink, the
calling object can receive notification when the OLE object is
renamed, saved, or closed.
Advise Establishes an advisory connection between a compound
document object and the calling object's advise sink,
through which the calling object receives notification when
the compound document object is renamed, saved, or
closed.
Advise Creates a connection between an advise sink and a data
object for receiving notifications.
T IT L E DESC RIP T IO N
Alloc Allocates a block of memory.
AllowForegroundTransfer Yields the foreground window to the COM server process.
AppendRecord Write a new record to the end of the log.
ApplicationFree Releases the application.
ApplicationLaunch Launches the application.
Apply Applies the current values to the underlying objects
associated with the property page as previously passed to
IPropertyPage::SetObjects.
ApplyViewState Initializes a view with view state previously saved in call to
IOleDocumentView::SaveViewState.
BindIfRunning Activates the connection between the linked object and the
link source if the link source is already running.
BindMoniker Locates an object by means of its moniker, activates the
object if it is inactive, and retrieves a pointer to the specified
interface on that object.
BindToObject Binds to the specified object. The binding process involves
finding the object, putting it into the running state if
necessary, and providing the caller with a pointer to a
specified interface on the identified object.
BindToSource Activates the connection to the link source by binding the
moniker stored within the linked object.
BindToStorage Binds to the storage for the specified object. Unlike the
IMoniker::BindToObject method, this method does not
activate the object identified by the moniker.
Cache Specifies the format and other data to be cached inside an
embedded object.
CallIndirect Invokes one of the methods in the interface with an indirect
reference to the arguments of the invocation.
Cancel Requests that a method call be canceled.
Cancel Requests that a method call be canceled.
CancelLink Disconnects the selected links.
CancelLink Disconnects the selected links.
CanInPlaceActivate Determines whether the container can activate the object in
place.
T IT L E DESC RIP T IO N
CanWindowlessActivate Informs an object if its container can support it as a
windowless object that can be in-place activated.
CatalogRefresh Refreshes the catalog.
Clone Creates a new enumerator that contains the same
enumeration state as the current one.
Clone Creates a new enumerator that contains the same
enumeration state as the current one.
Clone Creates a new enumerator that contains the same
enumeration state as the current one.
Clone Creates a duplicate font object.
Clone Creates a new enumerator that contains the same
enumeration state as the current one.
Clone Creates a duplicate view object with an internal state
identical to that of the current view.
Clone Creates a new enumerator that contains the same
enumeration state as the current one.
Clone Creates a new enumerator that contains the same
enumeration state as the current one.
Clone Creates a new enumerator that contains the same
enumeration state as the current one.
Clone Creates a new enumerator that contains the same
enumeration state as the current one.
Clone Creates a new enumerator that contains the same
enumeration state as the current one.
Clone Creates a new enumerator that contains the same
enumeration state as the current one.
Clone Creates a new enumerator that contains the same
enumeration state as the current one.
Clone Creates a new enumerator that contains the same
enumeration state as the current one.
Clone Creates a new enumerator that contains the same
enumeration state as the current one.
Clone Creates a new enumerator that contains the same
enumeration state as the current one.
T IT L E DESC RIP T IO N
Clone Creates a new enumerator that contains the same
enumeration state as the current one.
Clone Creates a new enumerator that contains the same
enumeration state as the current one.
Close Closes the specified parent undo unit.
Close Closes the specified parent undo unit.
Close Changes an embedded object from the running to the
loaded state. Disconnects a linked object from its link source.
CloseView Instructs a document view to close itself and release its
IOleInPlaceSite pointer.
CLSIDFromProgID Looks up a CLSID in the registry, given a ProgID.
CLSIDFromProgIDEx Triggers automatic installation if the COMClassStore policy is
enabled.
CLSIDFromProgIDEx Triggers automatic installation if the COMClassStore policy is
enabled.
CLSIDFromString Converts a string generated by the StringFromCLSID
function back into the original CLSID.
CoAddRefServerProcess Increments a global per-process reference count.
CoAllowSetForegroundWindow This function passes the foreground privilege (the privilege
to set the foreground window) from one process to another.
The process that has the foreground privilege can call this
function to pass that privilege on to a local COM server
process.
CoAllowUnmarshalerCLSID Adds an unmarshaler CLSID to the allowed list for the calling
process only.
CoCancelCall Requests cancellation of an outbound DCOM method call
pending on a specified thread.
CoCopyProxy Makes a private copy of the specified proxy.
CoCreateFreeThreadedMarshaler Creates an aggregatable object capable of context-
dependent marshaling.
CoCreateGuid Creates a GUID, a unique 128-bit integer used for CLSIDs
and interface identifiers.
CoCreateInstance Creates a single uninitialized object of the class associated
with a specified CLSID.
CoCreateInstanceEx Creates an instance of a specific class on a specific computer.
T IT L E DESC RIP T IO N
CoCreateInstanceFromApp Creates an instance of a specific class on a specific computer
from within an app container.
CoDecrementMTAUsage Releases the increment made by a previous call to the
CoIncrementMTAUsage function.
CoDisableCallCancellation Undoes the action of a call to CoEnableCallCancellation.
Disables cancellation of synchronous calls on the calling
thread when all calls to CoEnableCallCancellation are
balanced by calls to CoDisableCallCancellation.
CoDisconnectContext Disconnects all proxy connections that are being maintained
on behalf of all interface pointers that point to objects in the
current context.
CoDisconnectObject Disconnects all remote process connections being
maintained on behalf of all the interface pointers that point
to a specified object.
CoDosDateTimeToFileTime Converts the MS-DOS representation of the time and date
to a FILETIME structure used by Windows.
CoEnableCallCancellation Enables cancellation of synchronous calls on the calling
thread.
CoFileTimeNow Returns the current time as a FILETIME structure.
CoFileTimeNow Returns the current time as a FILETIME structure.
CoFileTimeToDosDateTime Converts a FILETIME into MS-DOS date and time values.
CoFreeAllLibraries Frees all the DLLs that have been loaded with the
CoLoadLibrary function (called internally by
CoGetClassObject), regardless of whether they are currently
in use.
CoFreeLibrary Frees a library that, when loaded, was specified to be freed
explicitly.
CoFreeUnusedLibraries Unloads any DLLs that are no longer in use, probably
because the DLL no longer has any instantiated COM
objects outstanding.
CoFreeUnusedLibrariesEx Unloads any DLLs that are no longer in use and whose
unload delay has expired.
CoGetApartmentType Returns the current apartment type and type qualifier.
CoGetCallContext Retrieves the context of the current call on the current
thread.
CoGetCallerTID Returns a pointer to a DWORD that contains the apartment
ID of the caller's thread.
T IT L E DESC RIP T IO N
CoGetCancelObject Obtains a pointer to a call control interface, normally
ICancelMethodCalls, on the cancel object corresponding to
an outbound COM method call pending on the same or
another client thread.
CoGetClassObject Provides a pointer to an interface on a class object
associated with a specified CLSID.
CoGetContextToken Returns a pointer to an implementation of IObjContext for
the current context.
CoGetCurrentLogicalThreadId Returns the logical thread identifier of the current physical
thread.
CoGetCurrentProcess Returns a value that is unique to the current thread.
CoGetCurrentProcess can be used to avoid thread ID reuse
problems.
CoGetInstanceFromFile Creates a new object and initializes it from a file using
IPersistFile::Load.
CoGetInstanceFromIStorage Creates a new object and initializes it from a storage object
through an internal call to IPersistFile::Load.
CoGetInterceptor Instantiates the appropriate interceptor for the specified
interface to be intercepted and returns the newly created
interceptor.
CoGetInterfaceAndReleaseStream Unmarshals a buffer containing an interface pointer and
releases the stream when an interface pointer has been
marshaled from another thread to the calling thread.
CoGetMalloc Retrieves a pointer to the default OLE task memory allocator
(which supports the system implementation of the IMalloc
interface) so applications can call its methods to manage
memory.
CoGetMarshalSizeMax Returns an upper bound on the number of bytes needed to
marshal the specified interface pointer to the specified
object.
CoGetObject Converts a display name into a moniker that identifies the
object named, and then binds to the object identified by the
moniker.
CoGetObjectContext Returns the context for the current object.
CoGetPSClsid Returns the CLSID of the DLL that implements the proxy
and stub for the specified interface.
CoGetStandardMarshal Creates a default, or standard, marshaling object in either
the client process or the server process, depending on the
caller, and returns a pointer to that object's IMarshal
implementation.
T IT L E DESC RIP T IO N
CoGetStdMarshalEx Creates an aggregated standard marshaler for use with
lightweight client-side handlers.
CoGetSystemSecurityPermissions Returns the default values of the Security Descriptors of the
machine-wide launch and access permissions, as well as
launch and access limits.
CoGetTreatAsClass Returns the CLSID of an object that can emulate the
specified object.
CoHandlePriorityEventsFromMessagePump Called by message dispatchers on an ASTA thread after
dispatching a windows message to provide an opportunity
for short-running infrastructural COM calls and other high-
priority or short-running COM work to be dispatched
between messages.
CoImpersonateClient Enables the server to impersonate the client of the current
call for the duration of the call.
CoIncrementMTAUsage Keeps MTA support active when no MTA threads are
running.
CoInitialize Initializes the COM library on the current thread and
identifies the concurrency model as single-thread apartment
(STA).
CoInitializeEx Initializes the COM library for use by the calling thread, sets
the thread's concurrency model, and creates a new
apartment for the thread if one is required.
CoInitializeSecurity Registers security and sets the default security values for the
process.
CoInvalidateRemoteMachineBindings Tells the service control manager to flush any cached RPC
binding handles for the specified computer.
CoIsHandlerConnected Determines whether a remote object is connected to the
corresponding in-process object.
CoIsOle1Class Determines whether the specified CLSID represents an OLE
1 object.
CoLoadLibrary Loads a specific DLL into the caller's process.
CoLockObjectExternal Called either to lock an object to ensure that it stays in
memory, or to release such a lock.
CoMarshalHresult Marshals an HRESULT to the specified stream, from which it
can be unmarshaled using the CoUnmarshalHresult
function.
CoMarshalInterface Writes into a stream the data required to initialize a proxy
object in some client process.
T IT L E DESC RIP T IO N
CoMarshalInterThreadInterfaceInStream Marshals an interface pointer from one thread to another
thread in the same process.
CommonPrefixWith Creates a new moniker based on the prefix that this moniker
has in common with the specified moniker.
ComposeWith Creates a new composite moniker by combining the current
moniker with the specified moniker.
Connect Initializes a client proxy, binding it to the specified RPC
channel.
Connect Initializes a server stub, binding it to the specified interface.
Connect Initializes a client proxy, binding it to the specified RPC
channel.
Connect Initializes a server stub, binding it to the specified interface.
ContextCallback Enters the object context, executes the specified function,
and returns.
ContextSensitiveHelp Determines whether context-sensitive help mode should be
entered during an in-place activation session.
ConvertObject Converts the object to the type of the specified CLSID.
ConvertObject Converts the object to the type of the specified CLSID.
Copy Creates a copy of this call frame and all of its associated
data.
CopyProxy Makes a private copy of the proxy for the specified interface.
CoQueryAuthenticationServices Retrieves a list of the authentication services registered
when the process called CoInitializeSecurity.
CoQueryClientBlanket Called by the server to find out about the client that
invoked the method executing on the current thread.
CoQueryProxyBlanket Retrieves the authentication information the client uses to
make calls on the specified proxy.
CoRegisterActivationFilter Registers a process-wide filter to process activation requests.
CoRegisterChannelHook Registers a channel hook.
CoRegisterClassObject Registers an EXE class object with OLE so other applications
can connect to it.
CoRegisterInitializeSpy Registers an implementation of the IInitializeSpy interface.
The IInitializeSpy interface is defied to allow developers to
perform initialization and cleanup on COM apartments.
T IT L E DESC RIP T IO N
CoRegisterMallocSpy Registers an implementation of the IMallocSpy interface,
thereafter requiring OLE to call its wrapper methods around
every call to the corresponding IMalloc method.
CoRegisterMessageFilter Registers with OLE the instance of an IMessageFilter
interface, which is to be used for handling concurrency
issues on the current thread.
CoRegisterPSClsid Enables a downloaded DLL to register its custom interfaces
within its running process so that the marshaling code will
be able to marshal those interfaces.
CoRegisterSurrogate Registers the surrogate process through its ISurrogate
interface pointer.
CoReleaseMarshalData Destroys a previously marshaled data packet.
CoReleaseServerProcess Decrements the global per-process reference count.
CoResumeClassObjects Called by a server that can register multiple class objects to
inform the SCM about all registered classes, and permits
activation requests for those class objects.
CoRevertToSelf Restores the authentication information on a thread of
execution.
CoRevokeClassObject Informs OLE that a class object, previously registered with
the CoRegisterClassObject function, is no longer available for
use.
CoRevokeInitializeSpy Revokes a registered implementation of the IInitializeSpy
interface.
CoRevokeMallocSpy Revokes a registered IMallocSpy object.
CoSetCancelObject Sets (registers) or resets (unregisters) a cancel object for use
during subsequent cancel operations on the current thread.
CoSetMessageDispatcher Registers or unregisters the per-thread message dispatcher
that is to be invoked when there are window messages
available to dispatch within COM wait APIs on an ASTA
thread.
CoSetProxyBlanket Sets the authentication information that will be used to
make calls on the specified proxy.
CoSuspendClassObjects Prevents any new activation requests from the SCM on all
class objects registered within the process.
CoSwitchCallContext Switches the call context object used by CoGetCallContext.
CoTaskMemAlloc Allocates a block of task memory in the same way that
IMalloc::Alloc does.
T IT L E DESC RIP T IO N
CoTaskMemFree Frees a block of task memory previously allocated through a
call to the CoTaskMemAlloc or CoTaskMemRealloc function.
CoTaskMemRealloc Changes the size of a previously allocated block of task
memory.
CoTestCancel Determines whether the call being executed on the server
has been canceled by the client.
CoTreatAsClass Establishes or removes an emulation, in which objects of one
class are treated as objects of a different class.
CoUninitialize Closes the COM library on the current thread, unloads all
DLLs loaded by the thread, frees any other resources that
the thread maintains, and forces all RPC connections on the
thread to close.
CoUnmarshalHresult Unmarshals an HRESULT type from the specified stream.
CoUnmarshalInterface Initializes a newly created proxy using data written into the
stream by a previous call to the CoMarshalInterface
function, and returns an interface pointer to that proxy.
Count Retrieves the number of context properties in the context.
Count Retrieves the number of context properties in the context.
CountRefs Retrieves the total number of references that a stub has on
the server object to which it is connected.
CountRefs Retrieves the total number of references that a stub has on
the server object to which it is connected.
CoWaitForMultipleHandles Waits for specified handles to be signaled or for a specified
timeout period to elapse.
CoWaitForMultipleObjects A replacement for CoWaitForMultipleHandles. This
replacement API hides the options for
CoWaitForMultipleHandles that are not supported in ASTA.
CreateAntiMoniker Creates and returns a new anti-moniker.
CreateAsyncBindCtx Creates an asynchronous bind context for use with
asynchronous monikers.
CreateBindCtx Returns a pointer to an implementation of IBindCtx (a bind
context object). This object stores information about a
particular moniker-binding operation.
CreateCall Creates an instance of the call object that corresponds to a
specified asynchronous interface.
CreateCall Creates an instance of the call object that corresponds to a
specified asynchronous interface.
T IT L E DESC RIP T IO N
CreateClassMoniker Creates a class moniker that refers to the specified class.
CreateDataAdviseHolder Retrieves a pointer to the OLE implementation of
IDataAdviseHolder on the data advise holder object.
CreateDataAdviseHolder Retrieves a pointer to the OLE implementation of
IDataAdviseHolder on the data advise holder object.
CreateDataCache Retrieves a pointer to a new instance of an OLE-provided
implementation of a data cache.
CreateFileMoniker Creates a file moniker based on the specified path.
CreateFormatEnumerator Creates an object that implements IEnumFORMATETC over a
static array of FORMATETC structures.
CreateGenericComposite Performs a generic composition of two monikers and
supplies a pointer to the resulting composite moniker.
CreateInstance Creates an uninitialized object.
CreateInstanceLic Creates an instance of the licensed object for the specified
license key. This method is the only possible means to create
an object on an otherwise unlicensed machine.
CreateItemMoniker Creates an item moniker that identifies an object within a
containing object (typically a compound document).
CreateObjrefMoniker Creates an OBJREF moniker based on a pointer to an object.
CreateOleAdviseHolder Creates an advise holder object for managing compound
document notifications. It returns a pointer to the object's
OLE implementation of the IOleAdviseHolder interface.
CreatePointerMoniker Creates a pointer moniker based on a pointer to an object.
CreateProxy Creates a proxy for the specified remote interface.
CreateProxy Creates a proxy for the specified remote interface.
CreateStub Creates a stub for the remote use of the specified interface.
CreateStub Creates a stub for the remote use of the specified interface.
CreateView Creates a document view object in the caller's process and
obtains a pointer to that object's IOleDocumentView
interface.
DAdvise Called by an object supporting an advise sink to create a
connection between a data object and the advise sink. This
enables the advise sink to be notified of changes in the data
of the object.
T IT L E DESC RIP T IO N
Deactivate Destroys the window created in IPropertyPage::Activate.
DeactivateAndUndo Deactivates the object, ends the in-place session, and
reverts to the container's saved undo state.
DebugServerQueryInterface Retrieves a pointer to the interface that a stub represents.
DebugServerQueryInterface Retrieves a pointer to the interface that a stub represents.
DebugServerRelease Releases an interface pointer that was previously returned by
DebugServerQueryInterface.
DebugServerRelease Releases an interface pointer that was previously returned by
DebugServerQueryInterface.
DidAlloc Determines whether this allocator was used to allocate the
specified block of memory.
DidAlloc Determines whether this allocator was used to allocate the
specified block of memory.
DiscardCache Discards the caches found in memory.
DiscardFrom Instructs the undo manager to discard the specified undo
unit and all undo units below it on the undo or redo stack.
DiscardUndoState Instructs the container to discard its undo state. The
container should not call
IOleInPlaceObject::ReActivateAndUndo.
Disconnect Disconnects a client proxy from any RPC channel to which it
is connected.
Disconnect Disconnects a server stub from any interface to which it is
connected.
Disconnect Disconnects a client proxy from any RPC channel to which it
is connected.
Disconnect Disconnects a server stub from any interface to which it is
connected.
DisconnectObject Releases all connections to an object. The object's server calls
the object's implementation of this method prior to shutting
down.
DisconnectObject Releases all connections to an object. The object's server calls
the object's implementation of this method prior to shutting
down.
DllCanUnloadNow Determines whether the DLL that implements this function
is in use. If not, the caller can unload the DLL from memory.
T IT L E DESC RIP T IO N
DllGetClassObject Retrieves the class object from a DLL object handler or
object application.
DllRegisterServer Instructs an in-process server to create its registry entries
for all classes supported in this server module.
DllUnregisterServer Instructs an in-process server to remove only those entries
created through DllRegisterServer.
Do Instructs the undo unit to carry out its action. Note that if it
contains child undo units, it must call their Do methods as
well.
DockWindow Docks the specified window handle to the specified monitor
handle.
DoDragDrop Carries out an OLE drag and drop operation.
DoVerb Requests that an object perform an action in response to an
end-user's action. The possible actions are enumerated for
the object in IOleObject::EnumVerbs.
DragEnter Indicates whether a drop can be accepted, and, if so, the
effect of the drop.
DragEnterTarget OLE calls this method when the user drags the mouse
cursor into a potential drop target window.
DragLeave Removes target feedback and releases the data object.
DragLeaveTarget OLE calls this method when the user drags the mouse
cursor out of a potential drop target window.
DragOver Provides target feedback to the user and communicates the
drop's effect to the DoDragDrop function so it can
communicate the effect of the drop back to the source.
Draw Draws a representation of an object onto the specified
device context.
Drop Incorporates the source data into the target window,
removes target feedback, and releases the data object.
DUnadvise Destroys a notification connection that had been previously
set up.
EditProperty Specifies which field is to receive the focus when the
property page is activated.
Enable Enables or disables the undo manager.
EnableModeless Enables or disables modeless dialog boxes when the
container creates or destroys a modal dialog box.
T IT L E DESC RIP T IO N
EnableModeless Enables or disables a frame's modeless dialog boxes.
Enum Retrieves a pointer to an enumerator for the components of
a composite moniker.
EnumAdvise Creates an enumerator that can be used to enumerate the
advisory connections currently established for an object.
EnumAdvise Retrieves a pointer to an enumerator that can be used to
enumerate the advisory connections registered for an
object, so a container can know what to release prior to
closing down.
EnumAdvise Returns an object that can be used to enumerate the current
advisory connections.
EnumCache Creates an enumerator that can be used to enumerate the
current cache connections.
EnumCategories Retrieves an enumerator for the component categories
registered on the system.
EnumClassesOfCategories Retrieves an enumerator for the classes that implement one
or more specified category identifiers.
EnumConnectionPoints Creates an enumerator object to iterate through all the
connection points supported in the connectable object, one
connection point per outgoing IID.
EnumConnections Creates an enumerator object to iterate through the current
connections for this connection point.
EnumContextProps Returns an IEnumContextProps interface pointer that can be
used to enumerate the context properties in this context.
EnumContextProps Returns an IEnumContextProps interface pointer that can be
used to enumerate the context properties in this context.
EnumControls Enumerates the controls on the form.
EnumDAdvise Creates an object that can be used to enumerate the current
advisory connections.
EnumFormatEtc Creates an object to enumerate the formats supported by a
data object.
EnumImplCategoriesOfClass Retrieves an enumerator for the CATIDs implemented by the
specified class.
EnumObjectParam Retrieves a pointer to an interface that can be used to
enumerate the keys of the bind context's string-keyed table
of pointers.
EnumObjects Enumerates the objects in the current container.
T IT L E DESC RIP T IO N
EnumRedoable Creates an enumerator object that the caller can use to
iterate through a series of top-level undo units from the
redo stack.
EnumReqCategoriesOfClass Retrieves an enumerator for the CATIDs required by the
specified class.
EnumRunning Creates and returns a pointer to an enumerator that can list
the monikers of all the objects currently registered in the
running object table (ROT).
EnumUndoable Creates an enumerator object that the caller can use to
iterate through a series of top-level undo units from the
undo stack.
EnumVerbs Exposes a pull-down menu listing the verbs available for an
object in ascending order by verb number.
EnumViews Creates an object that enumerates the views supported by a
document object, or if only one view is supported, returns a
pointer to that view.
Exec Executes the specified command or displays help for the
command.
FAILED Provides a generic test for failure on any status value.
FContinue Indicates whether a generic operation should continue.
FContinuePrinting Indicates whether a lengthy printing operation should
continue.
FindConnectionPoint Returns a pointer to the IConnectionPoint interface of a
connection point for a specified IID, if that IID describes a
supported outgoing interface.
FindUnit Indicates whether the specified unit is a child of this undo
unit or one of its children, that is if the specified unit is part
of the hierarchy in this parent unit.
Force Forces the contents of the log to disk, at least up through
the specified LSN.
Format Formats a string according to a pattern.
Free Frees a previously allocated block of memory.
Free Frees a previously allocated block of memory.
Free Frees the frame copy to avoid a memory leak.
FreeBuffer Frees a previously allocated RPC channel buffer.
T IT L E DESC RIP T IO N
FreeBuffer Frees a previously allocated RPC channel buffer.
FreeParam Frees the specified parameter in the frame.
FreeSurrogate Unloads a DLL server.
FreeSurrogate Unloads a DLL server.
Freeze Freezes the drawn representation of an object so that it will
not change until the IViewObject::Unfreeze method is called.
The most common use of this method is for banded
printing.
FreezeEvents Indicates whether the container is ignoring or accepting
events from the control.
get_Attributes Retrieves the current set of the picture's bit attributes.
get_Bold Gets the font's current Bold property.
get_Charset Retrieves the character set used in the font.
get_CurDC Retrieves the handle of the current device context. This
property is valid only for bitmap pictures.
get_Description The display text for the event publisher.
get_Handle Retrieves the handle to the picture managed within this
picture object to a specified location.
get_Height Retrieves the current height of the picture in the picture
object.
get_hFont Retrieves a handle to the font described by this font object.
get_hPal Retrieves a copy of the palette currently used by the picture
object.
get_Italic Gets the font's current Italic property.
get_KeepOriginalFormat Retrieves the current value of the picture's
KeepOriginalFormat property.
get_Name Retrieves the name of the font family.
get_Name The name of the event property.
get_OwnerSID The security identifier of the creator of the event publisher.
get_PublisherName The display name for the event publisher.
get_PublisherType The optional administrative group for the event publisher.
T IT L E DESC RIP T IO N
get_Size Retrieves the point size of the font.
get_Strikethrough Gets the font's current Strikethrough property.
get_Type Retrieves the current type of the picture contained in the
picture object.
get_Underline Gets the font's current Underline property.
get_Value The value of the event property.
get_Weight Gets the font's current Weight property.
get_Width Retrieves the current width of the picture in the picture
object.
GetActivationPolicy Retrieves the current activation policy for the object. This
method is called by the container on receipt of a
WM_SETCURSOR or WM_MOUSEMOVE message when an
inactive object is under the mouse pointer.
GetAdvise Retrieves the advisory connection on the object that was
used in the most recent call to IViewObject::SetAdvise.
GetAllAccessRights Gets the entire list of access rights and/or the owner and
group for the specified object.
GetBindOptions Retrieves the binding options stored in this bind context.
GetBorder Retrieves the outer rectange for toolbars and controls while
the object is active in place.
GetBoundSource Retrieves a pointer to the link source if the connection is
active.
GetBuffer Retrieves a buffer into which data can be marshaled for
transmission.
GetBuffer Retrieves a buffer into which data can be marshaled for
transmission.
GetCanonicalFormatEtc Provides a potentially different but logically equivalent
FORMATETC structure. You use this method to determine
whether two different FORMATETC structures would return
the same data, removing the need for duplicate rendering.
GetCapture Called by an in-place active, windowless object to determine
whether it still has the mouse capture.
GetCategoryDesc Retrieves the localized description string for a specific
category ID.
GetClassFile Returns the CLSID associated with the specified file name.
T IT L E DESC RIP T IO N
GetClassForHandler Retrieves the CLSID of the object handler to be used in the
destination process during standard marshaling.
GetClassForHandler Retrieves the CLSID of the object handler to be used in the
destination process during standard marshaling.
GetClassID Retrieves the class identifier (CLSID) of the object.
GetClassInfo Retrieves a pointer to the ITypeInfo interface for the object's
type information. The type information for an object
corresponds to the object's coclass entry in a type library.
GetClassObject Retrieves a class object.
GetClientSite Retrieves a pointer to an embedded object's client site.
GetClipboardData Retrieves a data object containing the current contents of
the embedded object on which this method is called. Using
the pointer to this data object, it is possible to create a new
embedded object with the same data as the original.
GetColorSet Returns the logical palette that the object will use for
drawing in its IViewObject::Draw method with the
corresponding parameters.
GetComparisonData Retrieves data from a moniker that can be used to test the
moniker for equality against another moniker.
GetConnectionInterface Retrieves the IID of the outgoing interface managed by this
connection point.
GetConnectionPointContainer Retrieves the IConnectionPointContainer interface pointer
for the parent connectable object.
GetContainer Retrieves a pointer to the object's container.
GetContentExtent Gets the content extent of a control.
GetControlInfo Retrieves information about the control's keyboard
mnemonics and behavior.
GetConvertInfo Gets the conversion information associated with the
specified object.
GetConvertInfo Gets the conversion information associated with the
specified object.
GetCurFile Retrieves the current name of the file associated with the
object. If there is no current working file, this method
retrieves the default save prompt for the object.
GetCurrentApartmentType Retrieves the type of apartment in which the caller is
executing.
T IT L E DESC RIP T IO N
GetCurrentApartmentType Retrieves the type of apartment in which the caller is
executing.
GetCurrentLogicalThreadId Retrieves the GUID of the thread in which the caller is
executing.
GetCurrentLogicalThreadId Retrieves the GUID of the thread in which the caller is
executing.
GetCurrentThreadType Retrieves the type of thread in which the caller is executing.
GetCurrentThreadType Retrieves the type of thread in which the caller is executing.
GetData Called by a data consumer to obtain data from a source
data object.
GetDataHere Called by a data consumer to obtain data from a source
data object. This method differs from the GetData method in
that the caller must allocate and free the specified storage
medium.
GetDC Provides an object with a handle to a device context for a
screen or compatible device from its container.
GetDefaultProperty Retrieves a named property and its value from the property
bag associated with the event publisher.
GetDefaultPropertyCollection Creates a collection object that enumerates the properties
contained in the property bag associated with the event
publisher object.
GetDescription Retrieves a description of the undo unit that can be used in
the undo or redo user interface.
GetDestCtx Retrieves the destination context for the RPC channel.
GetDestCtx Retrieves the destination context for the RPC channel.
GetDisplayName Retrieves the display name for the moniker.
GetDisplayString Retrieves a text string describing the specified property.
GetDocMiscStatus Retrieves status information about the document object.
GetDocument Obtains the IUnknown interface pointer on the document
object that owns this view.
GetDropTarget Retrieves the IDropTarget interface for an in-place active,
windowless object that supports drag and drop.
GetExtendedControl Retrieves an IDispatch pointer to the extended control that
the container uses to wrap the real control.
T IT L E DESC RIP T IO N
GetExtent Retrieves a running object's current display size.
GetExtent Retrieves the size that the specified view object will be drawn
on the specified target device.
GetFocus Called by an in-place active, windowless object to determine
whether it still has the keyboard focus.
GetGUID Retrieves the specified GUID for the object.
GetHandle Retrieves a handle to the synchronization object.
GetHandle Retrieves a handle to the synchronization object.
GetIID Retrieves the interface id supported by this ICallIndirect
implementation.
GetIIDAndMethod Retrieves the interface ID or the method number.
GetInfo Retrieves information about the call frame.
GetInfoOfIndex Retrieves the type information from the specified index.
GetInPlaceSite Retrieves the view site associated with this view object.
GetInterfaceFromGlobal Retrieves a pointer to an interface on an object that is usable
by the calling apartment. This interface must be currently
registered in the global interface table.
GetLastRedoDescription Retrieves the description for the top-level undo unit that is
on top of the redo stack.
GetLastUndoDescription Retrieves the description for the top-level undo unit that is
on top of the undo stack.
GetLastUpdate Determines the last time the object was updated.
GetLastUpdate Determines the last time the object was updated.
GetLicInfo Retrieves information about the licensing capabilities of this
class factory.
GetLinkSource Retrieves information about a link that can be displayed in
the Links dialog box.
GetLinkSource Retrieves information about a link that can be displayed in
the Links dialog box.
GetLinkUpdateOptions Determines the current update options for a link.
GetLinkUpdateOptions Determines the current update options for a link.
T IT L E DESC RIP T IO N
GetLocaleID Retrieves the locale identifier (an LCID) that a property page
can use to adjust its locale-specific settings.
GetLogLimits Retrieves information about the current bounds of the log.
GetMarshalingContextAttribute Gets information about the marshaling context.
GetMarshalingContextAttribute Gets information about the marshaling context.
GetMarshalSizeMax Retrieves the maximum size of the buffer that will be needed
during marshaling.
GetMarshalSizeMax Retrieves an upper bound on the number of bytes needed
to marshal the call frame.
GetMethodInfo Retrieves information about the interface method from the
call frame.
GetMiscStatus Retrieves the status of an object at creation and loading.
GetMoniker Retrieves a moniker for the object's client site. An object can
force the assignment of its own or its container's moniker by
specifying a value for dwAssign.
GetMoniker Retrieves an embedded object's moniker, which the caller can
use to link to the object.
GetMultiTypeInfoCount Retrieves the number of type information blocks that this
object must provide.
GetNames Retrieves the method or interface name of this call.
GetNaturalExtent Provides sizing hints from the container for the object to use
as the user resizes it.
GetNextLink Enumerates the links in a container.
GetNextLink Enumerates the links in a container.
GetObject Gets a pointer to an interface on the VBA object.
GetObject Retrieves a pointer to the specified object.
GetObject Determines whether the object identified by the specified
moniker is running, and if it is, retrieves a pointer to that
object.
GetObjectInfo Gets the size, type, name, and location information for an
object.
GetObjectInfo Gets the size, type, name, and location information for an
object.
T IT L E DESC RIP T IO N
GetObjectParam Retrieves an interface pointer to the object associated with
the specified key in the bind context's string-keyed table of
pointers.
GetObjectStorage Retrieves a pointer to the storage for the specified object.
GetOleObject Gets a pointer to an OLE control on a Visual Basic container.
GetOpenParentState Retrieves state information about the innermost open
parent undo unit.
GetPageContainer Retrieves a pointer to the object representing the entire
property frame dialog box that contains all the pages.
Calling this method could potentially allow one page to
navigate to another.
GetPageInfo Retrieves information about the property page.
GetPageInfo Retrieves the number of a document's first page and the
total number of pages.
GetPages Retrieves a list of property pages that can be displayed in
this object's property sheet.
GetParam Retrieves the value of a specified parameter in the call frame.
GetParamInfo Retrieves the information for the specified parameter.
GetParentState Retrieves state information about the innermost open
parent undo unit.
GetPredefinedStrings Retrieves an array description strings for the allowable values
that the specified property can accept.
GetPredefinedValue Retrieves the value of the specified property that is
associated with a predefined string name.
GetProperty Retrieves the specified context property from the context.
GetProperty Retrieves the specified context property from the context.
GetRect Retrieves a rectangle describing a requested drawing aspect.
GetRect Retrieves the rectangular coordinates of the viewport in
which the view is or will be activated.
GetRegisteredSink Retrieves the registered event sink.
GetReturnValue Retrieves the return value stored in the call frame.
GetRunningClass Retrieves the CLSID of a running object.
T IT L E DESC RIP T IO N
GetRunningObjectTable Retrieves an interface pointer to the running object table
(ROT) for the computer on which this bind context is
running.
GetRunningObjectTable Returns a pointer to the IRunningObjectTable interface on
the local running object table (ROT).
GetSite Retrieves the latest site passed using SetSite.
GetSize Retrieves the size of a previously allocated block of memory.
GetSize Retrieves the size of a previously allocated block of memory.
GetSizeMax Retrieves the size of the stream needed to save the object.
GetSizeMax Retrieves the size of the stream needed to save the object.
GetSourceDisplayName Retrieves the display name of the link source of the linked
object.
GetSourceMoniker Retrieves the moniker identifying the link source of a linked
object.
GetStackLocation Retrieves the stack location onto which this call frame is
bound.
GetStackSize Retrieves the number of bytes that should be popped from
the stack in order to return from an invocation of the
method.
GetTimeOfLastChange Retrieves the time at which the object identified by this
moniker was last changed.
GetTimeOfLastChange Retrieves the time that an object was last modified.
GetUnitType Retrieves the CLSID and a type identifier for the undo unit.
GetUnmarshalClass Retrieves the CLSID of the unmarshaling code.
GetUpdateOptions Retrieves a value indicating how often the linked object
updates its cached data.
GetUserClassID Retrieves an object's class identifier, the CLSID corresponding
to the string identifying the object to an end user.
GetUserType Retrieves the user-type name of an object for display in user-
interface elements such as menus, list boxes, and dialog
boxes.
GetViewInfo Gets the view information associated with the object.
GetViewInfo Gets the view information associated with the object.
T IT L E DESC RIP T IO N
GetViewStatus Retrieves information about the opacity of the object, and
what drawing aspects are supported.
GetWindow Retrieves a handle to one of the windows participating in in-
place activation (frame, document, parent, or in-place object
window).
GetWindowContext Enables an in-place object to retrieve the window interfaces
that form the window object hierarchy, and the position in
the parent window where the object's in-place activation
window should be located.
GiveFeedback Enables a source application to give visual feedback to the
end user during a drag-and-drop operation by providing
the DoDragDrop function with an enumeration value
specifying the visual effect.
GrantAccessRights Merges the new list of access rights with the existing access
rights on the object.
HandleInComingCall Provides a single entry point for incoming calls.
HandsOffStorage Instructs the object to release all storage objects that have
been passed to it by its container and to enter HandsOff
mode.
Hash Creates a hash value using the internal state of the moniker.
HeapMinimize Minimizes the heap as much as possible by releasing unused
memory to the operating system, coalescing adjacent free
blocks, and committing free pages.
HeapMinimize Minimizes the heap as much as possible by releasing unused
memory to the operating system, coalescing adjacent free
blocks, and committing free pages.
Help Invokes the property page help in response to an end-user
request.
HRESULT_CODE Extracts the code portion of the specified HRESULT.
HRESULT_FACILITY Extracts the facility of the specified HRESULT.
HRESULT_FROM_NT Maps an NT status value to an HRESULT value.
HRESULT_FROM_WIN32 Maps a system error code to an HRESULT value.
HRESULT_SEVERITY Extracts the severity field of the specified HRESULT.
IIDFromString Converts a string generated by the StringFromIID function
back into the original interface identifier (IID).
ImpersonateClient Enables a server to impersonate a client for the duration of a
call.
T IT L E DESC RIP T IO N
ImpersonateClient Enables a server to impersonate a client for the duration of a
call.
Init Initializes the process server.
InitCache Fills the cache as needed using the data provided by the
specified data object.
InitFromData Initializes a newly created object with data from a specified
data object, which can reside either in the same container or
on the Clipboard.
Initialize Initializes a thread to use Windows Runtime APIs.
InitNew Initializes an object to a default state. This method is to be
called instead of IPersistStreamInit::Load.
InitNew Initializes a new storage object.
InitNew Create a new log instance on the specified file. If a file with
that name already exists, it is overwritten.
InPlaceDeactivate Deactivates an active in-place object and discards the
object's undo state.
InsertMenus Enables the container to insert menu groups into the
composite menu to be used during the in-place session.
InvalidateRect Enables an object to invalidate a specified rectangle of its in-
place image on the screen.
InvalidateRgn Enables an object to invalidate a specified region of its in-
place image on the screen.
Inverse Creates a moniker that is the inverse of this moniker. When
composed to the right of this moniker or one of similar
structure, the moniker will compose to nothing.
Invoke Invokes the interface that a stub represents.
Invoke Invokes the interface that a stub represents.
Invoke Applies this activation record to an object. In a marshalling
situation, typically this is carried out on the server side, and
is the means by which the work of the actual object is
accomplished.
IS_ERROR Provides a generic test for errors on any status value.
IsAccelerator Determines whether the specified keystroke maps to an
accelerator in the specified accelerator table.
T IT L E DESC RIP T IO N
IsAccessAllowed Determines whether the specified trustee has access rights
to the object or property.
IsClassOfCategories Determines whether a class implements one or more
categories.
IsConnected Determines whether the RPC channel is connected.
IsConnected Determines whether the RPC channel is connected.
IsDirty Determines whether an object has changed since it was last
saved to its stream.
IsDirty Determines whether an object has changed since it was last
saved to its current file.
IsDirty Determines whether an object has changed since it was last
saved to its current storage.
IsDirty Determines whether an object has changed since it was last
saved to its stream.
IsEqual Compares this font object to another for equivalence.
IsEqual Determines whether this moniker is identical to the specified
moniker.
IsEqualGUID Determines whether two GUIDs are equal.
IsEqualGUID Determines whether two GUIDs are equal.
IsEqualGUID Determines whether two GUIDs are equal.
IsEvaluatingEdpPolicy Indicates whether the drop target is intends to handle the
evaluation of the enterprise protection policy.
IsIIDSupported Determines whether a stub is designed to handle the
unmarshaling of a particular interface.
IsIIDSupported Determines whether a stub is designed to handle the
unmarshaling of a particular interface.
IsImpersonating Indicates whether the server is currently impersonating the
client.
IsImpersonating Indicates whether the server is currently impersonating the
client.
IsPageDirty Indicates whether the property page has changed since it
was activated or since the most recent call to Apply.
IsRunning Determines whether the specified object is running.
T IT L E DESC RIP T IO N
IsRunning Determines whether the object identified by this moniker is
currently loaded and running.
IsRunning Determines whether an object is currently in the running
state.
IsRunning Determines whether the object identified by the specified
moniker is currently running.
IsSystemMoniker Determines whether this moniker is one of the system-
provided moniker classes.
IsUpToDate Checks whether an object is up to date.
Load Initializes an object from the stream where it was saved
previously.
Load Opens the specified file and initializes an object from the file
contents.
Load Loads an object from its existing storage.
Load Initializes an object from the stream where it was saved
previously.
LoadDllServer Loads a DLL server into the implementing surrogate. COM
calls this method when there is an activation request for the
DLL server's class, if the class is registered as DllSurrogate.
LoadDllServer Loads a DLL server into the implementing surrogate. COM
calls this method when there is an activation request for the
DLL server's class, if the class is registered as DllSurrogate.
Lock Requests a lock on a shared resource.
LockContainer Keeps the container for embedded objects running until
explicitly released.
LockInPlaceActive Indicates whether a control should remain in-place active.
Calls to this method typically nest an event to ensure that
the object's activation state remains stable throughout the
processing of the event.
LockRunning Locks an already running object into its running state or
unlocks it from its running state.
LockServer Locks an object application open in memory. This enables
instances to be created more quickly.
LockServer Locks an object application open in memory. This enables
instances to be created more quickly.
MAKE_HRESULT Creates an HRESULT value from its component pieces.
T IT L E DESC RIP T IO N
MAKE_HRESULT Creates an HRESULT value from its component pieces.
MAKE_SCODE Creates an SCODE value from its component pieces.
MapPropertyToPage Retrieves the CLSID of the property page associated with
the specified property.
Marshal Marshals the call frame by turning its reachable data into a
flat buffer without disturbing the frame.
MarshalInterface Marshals an interface pointer.
MarshalInterface Marshals an interface pointer.
MessagePending Indicates that a message has arrived while COM is waiting
to respond to a remote call.
MkParseDisplayName Converts a string into a moniker that identifies the object
named by the string.
MonikerCommonPrefixWith Creates a new moniker based on the common prefix that
this moniker (the one comprising the data of this moniker
object) shares with another moniker.
MonikerRelativePathTo Provides a moniker that, when composed onto the end of
the first specified moniker (or one with a similar structure),
yields the second specified moniker.
Move Positions and resizes the property page dialog box within
the frame.
Next Retrieves the specified number of items in the enumeration
sequence.
Next Retrieves the specified number of items in the enumeration
sequence.
Next Retrieves the specified number of items in the enumeration
sequence.
Next Retrieves the specified number of items in the enumeration
sequence.
Next Retrieves the specified number of items in the enumeration
sequence.
Next Retrieves the specified number of items in the enumeration
sequence.
Next Retrieves the specified number of items in the enumeration
sequence.
T IT L E DESC RIP T IO N
Next Retrieves the specified number of items in the enumeration
sequence.
Next Retrieves the specified number of items in the enumeration
sequence.
Next Retrieves the specified number of items in the enumeration
sequence.
Next Retrieves the specified number of items in the enumeration
sequence.
Next Retrieves the specified number of items in the enumeration
sequence.
Next Retrieves the specified number of items in the enumeration
sequence.
Next Retrieves the specified number of items in the enumeration
sequence.
Next Retrieves the specified number of items in the enumeration
sequence.
Next Retrieves the specified number of items in the enumeration
sequence.
NoteChangeTime Records the time that a running object was last modified.
The object must have previously been registered with the
running object table (ROT). This method stores the time of
last change in the ROT.
OleBuildVersion This function is obsolete.
OleCreate Creates an embedded object identified by a CLSID. You use it
typically to implement the menu item that allows the end
user to insert a new object.
OleCreate Creates an embedded object identified by a CLSID. You use it
typically to implement the menu item that allows the end
user to insert a new object.
OleCreateDefaultHandler Creates a new instance of the default embedding handler.
This instance is initialized so it creates a local server when
the embedded object enters the running state.
OleCreateEmbeddingHelper Creates an OLE embedding helper object using application-
supplied code aggregated with pieces of the OLE default
object handler. This helper object can be created and used in
a specific context and role, as determined by the caller.
OleCreateEx Extends OleCreate functionality by supporting more efficient
instantiation of objects in containers requiring caching of
multiple presentation formats or data, instead of the single
format supported by OleCreate.
T IT L E DESC RIP T IO N
OleCreateFontIndirect Creates and initializes a standard font object using an initial
description of the font's properties in a FONTDESC structure.
OleCreateFromData Creates an embedded object from a data transfer object
retrieved either from the clipboard or as part of an OLE
drag-and-drop operation. It is intended to be used to
implement a paste from an OLE drag-and-drop operation.
OleCreateFromDataEx Extends OleCreateFromData functionality by supporting
more efficient instantiation of objects in containers requiring
caching of multiple formats of presentation or data, instead
of the single format supported by OleCreateFromData.
OleCreateFromFile Creates an embedded object from the contents of a named
file.
OleCreateFromFile Creates an embedded object from the contents of a named
file.
OleCreateFromFileEx Extends OleCreateFromFile functionality by supporting more
efficient instantiation of objects in containers requiring
caching of multiple presentation formats or data, instead of
the single format supported by OleCreateFromFile.
OleCreateLink Creates an OLE compound-document linked object.
OleCreateLinkEx Extends OleCreateLink functionality by supporting more
efficient instantiation of objects in containers requiring
caching of multiple formats of presentations or data, instead
of the single format supported by OleCreateLink.
OleCreateLinkFromData Creates a linked object from a data transfer object retrieved
either from the clipboard or as part of an OLE drag-and-
drop operation.
OleCreateLinkFromDataEx Extends OleCreateLinkFromData functionality by supporting
more efficient instantiation of objects in containers requiring
caching of multiple formats of presentations or data, instead
of the single format supported by OleCreateLinkFromData.
OleCreateLinkToFile Creates an object that is linked to a file.
OleCreateLinkToFileEx Extends OleCreateLinkToFile functionality by supporting
more efficient instantiation of objects in containers requiring
caching of multiple formats of presentations or data, instead
of the single format supported by OleCreateLinkToFile.
T IT L E DESC RIP T IO N
OleCreateMenuDescriptor Creates and returns an OLE menu descriptor (that is, an
OLE-provided data structure that describes the menus) for
OLE to use when dispatching menu messages and
commands.
OleCreatePictureIndirect Creates a new picture object initialized according to a
PICTDESC structure.
OleCreatePropertyFrame Invokes a new property frame, that is, a property sheet
dialog box, whose parent is hwndOwner, where the dialog is
positioned at the point (x,y) in the parent window and has
the caption lpszCaption.
OleCreatePropertyFrameIndirect Creates a property frame, that is, a property sheet dialog
box, based on a structure (OCPFIPARAMS) that contains the
parameters, rather than specifying separate parameters as
when calling OleCreatePropertyFrame.
OleCreateStaticFromData Creates a static object, that contains only a representation,
with no native data, from a data transfer object.
OleDestroyMenuDescriptor Called by the container to free the shared menu descriptor
allocated by the OleCreateMenuDescriptor function.
OleDoAutoConvert Automatically converts an object to a new class if automatic
conversion for that object class is set in the registry.
OleDraw Enables drawing objects more easily. You can use it instead
of calling IViewObject::Draw directly.
OleDraw Enables drawing objects more easily. You can use it instead
of calling IViewObject::Draw directly.
OleDuplicateData Duplicates the data found in the specified handle and
returns a handle to the duplicated data. The source data is in
a clipboard format. Use this function to help implement
some of the data transfer interfaces such as IDataObject.
OleFlushClipboard Carries out the clipboard shutdown sequence. It also
releases the IDataObject pointer that was placed on the
clipboard by the OleSetClipboard function.
OleGetAutoConvert Determines whether the registry is set for objects of a
specified CLSID to be automatically converted to another
CLSID, and if so, retrieves the new CLSID.
OleGetClipboard Retrieves a data object that you can use to access the
contents of the clipboard.
OleGetClipboardWithEnterpriseInfo Enables Windows Information Protection enlightened
applications to retrieve an IDataObject from the OLE
Clipboard accompanied by Windows Information Protection
information about the data and the source application.
T IT L E DESC RIP T IO N
OleGetIconOfClass Returns a handle to a metafile containing an icon and a
string label for the specified CLSID.
OleGetIconOfFile Returns a handle to a metafile containing an icon and string
label for the specified file name.
OleIconToCursor Converts an icon to a cursor.
OleInitialize Initializes the COM library on the current apartment,
identifies the concurrency model as single-thread apartment
(STA), and enables additional functionality described in the
Remarks section below.
OleIsCurrentClipboard Determines whether the data object pointer previously
placed on the clipboard by the OleSetClipboard function is
still on the clipboard.
OleIsRunning Determines whether a compound document object is
currently in the running state.
OleLoad Loads into memory an object nested within a specified
storage object.
OleLoadFromStream Loads an object from the stream.
OleLoadFromStream Loads an object from the stream.
OleLoadPicture Creates a new picture object and initializes it from the
contents of a stream. This is equivalent to calling
OleCreatePictureIndirect with NULL as the first parameter,
followed by a call to IPersistStream::Load.
OleLoadPictureEx Creates a new picture object and initializes it from the
contents of a stream. This is equivalent to calling
OleCreatePictureIndirect with NULL as the first parameter,
followed by a call to IPersistStream::Load.
OleLoadPicturePath Creates a new picture object and initializes it from the
contents of a stream. This is equivalent to calling
OleCreatePictureIndirect(NULL, ...) followed by
IPersistStream::Load.
OleLockRunning Locks an already running object into its running state or
unlocks it from its running state.
OleMetafilePictFromIconAndLabel Creates a metafile in which the specified icon and label are
drawn.
OleNoteObjectVisible Increments or decrements an external reference that keeps
an object in the running state.
OleQueryCreateFromData Checks whether a data object has one of the formats that
would allow it to become an embedded object through a call
to either the OleCreateFromData or
OleCreateStaticFromData function.
T IT L E DESC RIP T IO N
OleQueryLinkFromData Determines whether an OLE linked object (rather than an
OLE embedded object) can be created from a clipboard data
object.
OleRegEnumFormatEtc Creates an enumeration object that can be used to
enumerate data formats that an OLE object server has
registered in the system registry.
OleRegEnumVerbs Supplies an enumeration of the registered verbs for the
specified class. Developers of custom DLL object applications
use this function to emulate the behavior of the default
object handler.
OleRegGetMiscStatus Returns miscellaneous information about the presentation
and behaviors supported by the specified CLSID from the
registry.
OleRegGetUserType Gets the user type of the specified class from the registry.
OleRun Puts an OLE compound document object into the running
state.
OleSave Saves an object opened in transacted mode into the
specified storage object.
OleSaveToStream Saves an object with the IPersistStream interface on it to the
specified stream.
OleSaveToStream Saves an object with the IPersistStream interface on it to the
specified stream.
OleSetAutoConvert Specifies a CLSID for automatic conversion to a different
class when an object of that class is loaded.
OleSetClipboard Places a pointer to a specific data object onto the clipboard.
This makes the data object accessible to the
OleGetClipboard function.
OleSetContainedObject Notifies an object that it is embedded in an OLE container,
which ensures that reference counting is done correctly for
containers that support links to embedded objects.
OleSetMenuDescriptor Installs or removes OLE dispatching code from the
container's frame window.
OLESTR Transforms string literals into Unicode strings.
OleTranslateAccelerator Called by the object application, allows an object's container
to translate accelerators according to the container's
accelerator table.
T IT L E DESC RIP T IO N
OleTranslateColor Converts an OLE_COLOR type to a COLORREF.
OleUIAddVerbMenuA Adds the Verb menu for the specified object to the specified
menu.
OleUIAddVerbMenuW Adds the Verb menu for the specified object to the specified
menu.
OleUIBusyA Invokes the standard Busy dialog box, allowing the user to
manage concurrency.
OleUIBusyW Invokes the standard Busy dialog box, allowing the user to
manage concurrency.
OleUICanConvertOrActivateAs Determines if there are any OLE object classes in the registry
that can be used to convert or activate the specified CLSID
from.
OleUIChangeIconA Invokes the standard Change Icon dialog box, which allows
the user to select an icon from an icon file, executable, or
DLL.
OleUIChangeIconW Invokes the standard Change Icon dialog box, which allows
the user to select an icon from an icon file, executable, or
DLL.
OleUIChangeSourceA Invokes the Change Source dialog box, allowing the user to
change the source of a link.
OleUIChangeSourceW Invokes the Change Source dialog box, allowing the user to
change the source of a link.
OleUIConvertA Invokes the standard Convert dialog box, allowing the user
to change the type of a single specified object, or the type of
all OLE objects of the specified object's class.
OleUIConvertW Invokes the standard Convert dialog box, allowing the user
to change the type of a single specified object, or the type of
all OLE objects of the specified object's class.
OleUIEditLinksA Invokes the standard Links dialog box, allowing the user to
make modifications to a container's linked objects.
OleUIEditLinksW Invokes the standard Links dialog box, allowing the user to
make modifications to a container's linked objects.
OleUIInsertObjectA Invokes the standard Insert Object dialog box, which allows
the user to select an object source and class name, as well as
the option of displaying the object as itself or as an icon.
T IT L E DESC RIP T IO N
OleUIInsertObjectW Invokes the standard Insert Object dialog box, which allows
the user to select an object source and class name, as well as
the option of displaying the object as itself or as an icon.
OleUIObjectPropertiesA Invokes the Object Properties dialog box, which displays
General, View, and Link information about an object.
OleUIObjectPropertiesW Invokes the Object Properties dialog box, which displays
General, View, and Link information about an object.
OleUIPasteSpecialA Invokes the standard Paste Special dialog box, allowing the
user to select the format of the clipboard object to be
pasted or paste-linked.
OleUIPasteSpecialW Invokes the standard Paste Special dialog box, allowing the
user to select the format of the clipboard object to be
pasted or paste-linked.
OleUIPromptUserA Displays a dialog box with the specified template and returns
the response (button identifier) from the user. This function
is used to display OLE warning messages, for example, Class
Not Registered.
OleUIPromptUserW Displays a dialog box with the specified template and returns
the response (button identifier) from the user. This function
is used to display OLE warning messages, for example, Class
Not Registered.
OleUIUpdateLinksA Updates all links in the link container and displays a dialog
box that shows the progress of the updating process. The
process is stopped if the user presses the Stop button or
when all links are processed.
OleUIUpdateLinksW Updates all links in the link container and displays a dialog
box that shows the progress of the updating process. The
process is stopped if the user presses the Stop button or
when all links are processed.
OleUninitialize Closes the COM library on the apartment, releases any class
factories, other COM objects, or servers held by the
apartment, disables RPC on the apartment, and frees any
resources the apartment maintains.
OnAmbientPropertyChange Informs a control that one or more of the container's
ambient properties has changed.
OnCall Informs the event sink if it receives a method call on the
interceptor. The sink is provided with an ICallFrame instance
which is bound to the intercepted incoming method
invocation. Through that sink the call frame can be
manipulated in various ways.
OnChanged Notifies a sink that a bindable property has changed.
T IT L E DESC RIP T IO N
OnClose Called by the server to notify all registered advisory sinks
that the object has changed from the running to the loaded
state.
OnControlInfoChanged Informs the container that the control's CONTROLINFO
structure has changed and that the container should call the
control's IOleControl::GetControlInfo for an update.
OnDataChange Called by the server to notify a data object's currently
registered advise sinks that data in the object has changed.
OnDefWindowMessage Invokes the default processing for all messages passed to an
object.
OnDocWindowActivate Notifies the active in-place object when the container's
document window is activated or deactivated.
OnFocus Indicates whether the control managed by this control site
has gained or lost the focus.
OnFrameWindowActivate Notifies the object when the container's top-level frame
window is activated or deactivated.
OnInactiveMouseMove Notifies the object that the mouse pointer has moved over it
so the object can fire mouse events. This method is called by
the container on receipt of a WM_MOUSEMOVE method
when an inactive object is under the mouse pointer.
OnInactiveSetCursor Sets the mouse pointer for an inactive object. This method is
called by the container on receipt of a WM_SETCURSOR
method when an inactive object is under the mouse pointer.
OnInPlaceActivate Notifies the container that one of its objects is being
activated in place.
OnInPlaceActivateEx Called by the embedded object to determine whether it
needs to redraw itself upon activation.
OnInPlaceDeactivate Notifies the container that the object is no longer active in
place.
OnInPlaceDeactivateEx Notifies the container if the object needs to be redrawn
upon deactivation.
OnLinkSrcChange Notifies the container that registered the advise sink that a
link source has changed (either name or location), enabling
the container to update the link's moniker.
OnMnemonic Informs a control that the user has pressed a keystroke that
represents a keyboard mneumonic.
OnNextAdd Notifies the last undo unit in the collection that a new unit
has been added.
T IT L E DESC RIP T IO N
OnPosRectChange Notifies the container that the object extents have changed.
OnProgress Notifies registered objects and applications of the progress
of a downloading operation.
OnRename Called by the server to notify all registered advisory sinks
that the object has been renamed.
OnRequestEdit Notifies a sink that a requestedit property is about to
change.
OnRun Notifies the cache that the data source object has entered
the running state so that the cache object can establish
advise sinks as needed.
OnSave Called by the server to notify all registered advisory sinks
that the object has been saved.
OnShowWindow Notifies a container when an embedded object's window is
about to become visible or invisible. This method does not
apply to an object that is activated in place and therefore
has no window separate from that of its container.
OnStatusChange Informs the frame that the property page managed by this
site has changed its state, that is, one or more property
values have been changed in the page. Property pages
should call this method whenever changes occur in their
dialog boxes.
OnStop Notifies the cache that it should terminate any existing
advise sinks. No indication is given as to whether a
connection actually existed.
OnUIActivate Notifies the container that the object is about to be
activated in place and that the object is going to replace the
container's main menu with an in-place composite menu.
OnUIDeactivate Notifies the container that it should reinstall its user
interface and take focus, and whether the object has an
undoable state.
OnViewChange Notifies an object's registered advise sinks that its view has
changed.
OnViewStatusChange Notifies the sink that a view status of an object has changed.
OnWalkInterface Walks through a call frame to look for the specified interface
in the call frame. The interface can be manipulated or
replaced by paying close attention to the reference count.
OnWindowMessage Dispatches a message from a container to a windowless
object that is in-place active.
Open Opens a new parent undo unit, which becomes part of the
containing unit's undo stack.
T IT L E DESC RIP T IO N
Open Opens a new parent undo unit, which becomes part of its
containing unit's undo stack.
Open Displays a document view in a separate pop-up window. The
semantics are equivalent to IOleObject::DoVerb with
OLEIVERB_OPEN.
OpenLinkSource Opens the link's source.
OpenLinkSource Opens the link's source.
ParseDisplayName Parses the specified display name and creates a
corresponding moniker.
ParseDisplayName Converts a display name into a moniker.
PictureChanged Notifies the picture object that its picture resource has
changed. This method only calls
IPropertyNotifySink::OnChanged with DISPID_PICT_HANDLE
for any connected sinks.
PostAlloc Performs operations required after calling IMalloc::Alloc.
PostDidAlloc Performs operations required after calling IMalloc::DidAlloc.
PostFree Performs operations required after calling IMalloc::Free.
PostGetSize Performs operations required after calling IMalloc::GetSize.
PostHeapMinimize Performs operations required after calling
IMalloc::HeapMinimize.
PostInitialize Performs initialization steps required after calling the
CoInitializeEx function.
PostMessageFilter Sends the simple frame site a message that is received by a
control's own window after the control has processed the
message.
PostRealloc Performs operations required after calling IMalloc::Realloc.
PostUninitialize Performs cleanup steps required after calling the
CoUninitialize function.
PreAlloc Performs operations required before calling IMalloc::Alloc.
PreDidAlloc Performs operations required before calling IMalloc::DidAlloc.
T IT L E DESC RIP T IO N
PreFree Performs operations required before calling IMalloc::Free.
This method ensures that the pointer passed to Free points
to the beginning of the actual allocation.
PreGetSize Performs operations required before calling IMalloc::GetSize.
PreHeapMinimize Performs operations required before calling
IMalloc::HeapMinimize.
PreInitialize Performs initialization steps required before calling the
CoInitializeEx function.
PreMessageFilter Provides a site with the opportunity to process a message
that is received by a control's own window before the
control itself does any processing.
PreRealloc Performs operations required before calling IMalloc::Realloc.
PreUninitialize Performs cleanup steps required before calling the
CoUninitialize function.
Print Prints an object on the specified printer, using the specified
job requirements.
ProcessShutdown Shuts down the process.
ProgIDFromCLSID Retrieves the ProgID for a given CLSID.
Pull Retrieves data of the byte type from the pipe source.
Pull Retrieves data of the double integer type from the pipe
source.
Pull Retrieves data of the long integer type from the pipe source.
Pull Retrieves data of the byte type from the pipe source.
Pull Retrieves data of the double integer type from the pipe
source.
Pull Retrieves data of the long integer type from the pipe source.
PumpMessages Performs custom dispatching when window messages are
available to be dispatched on an ASTA thread.
Push Sends data of the byte type to the pipe source.
Push Sends data of the double integer type to the pipe source.
Push Sends data of the long integer type to the pipe source.
Push Sends data of the byte type to the pipe source.
T IT L E DESC RIP T IO N
Push Sends data of the double integer type to the pipe source.
Push Sends data of the long integer type to the pipe source.
put_Bold Sets the font's Bold property.
put_Charset Sets the font's character set.
put_Description The display text for the event publisher.
put_Italic Sets the font's Italic property.
put_KeepOriginalFormat Sets the value of the picture's KeepOriginalFormat property.
put_Name Specifies a new name for the font family.
put_Name The name of the event property.
put_OwnerSID The security identifier of the creator of the event publisher.
put_PublisherID The identifier for the event publisher.
put_PublisherName The display name for the event publisher.
put_PublisherType The optional administrative group for the event publisher.
put_Size Sets the point size of the font.
put_Strikethrough Sets the font's Strikethrough property.
put_Underline Sets the font's Underline property.
put_Value The value of the event property.
put_Weight Sets the font's Weight property.
PutDefaultProperty Writes a named property and its value to the property bag
associated with the event publisher.
Query Queries the specified global property of the COM runtime.
Query Retrieves the value of an RPC binding option property.
Query Queries the specified global property of the COM runtime.
Query Retrieves the value of an RPC binding option property.
QueryBlanket Retrieves authentication information the client uses to make
calls on the specified proxy.
T IT L E DESC RIP T IO N
QueryBlanket Retrieves information about the client that invoked one of
the server's methods.
QueryBlanket Retrieves information about the client that invoked one of
the server's methods.
QueryContinueDrag Determines whether a drag-and-drop operation should be
continued, canceled, or completed. You do not call this
method directly. The OLE DoDragDrop function calls this
method during a drag-and-drop operation.
QueryGetData Determines whether the data object is capable of rendering
the data as specified. Objects attempting a paste or drop
operation can call this method before calling
IDataObject::GetData to get an indication of whether the
operation may be successful.
QueryHitPoint Indicates whether a point is within a given aspect of an
object.
QueryHitRect Indicates whether any point in a rectangle is within a given
drawing aspect of an object.
QueryInterface Retrieves pointers to the supported interfaces on an object.
QueryInterface A helper function template that infers an interface identifier,
and calls QueryInterface(REFIID,void).
QueryInternalInterface Retrieves pointers to the supported internal interfaces on an
object.
QueryInternalInterface Retrieves pointers to the supported internal interfaces on an
object.
QueryMultipleInterfaces Retrieves pointers to multiple supported interfaces on an
object.
QueryMultipleInterfaces Retrieves pointers to multiple supported interfaces on an
object.
QueryStatus Queries the object for the status of one or more commands
generated by user interface events.
QueryTextMetrics Fills a caller-allocated structure with information about the
font.
QuickActivate Quick activates a control.
ReactivateAndUndo Reactivates a previously deactivated object, undoing the last
state of the object.
ReadRecord Read a record from the log.
ReadRecordPrefix Reads an initial part of a record from the log.
T IT L E DESC RIP T IO N
Realloc Changes the size of a previously allocated block of memory.
Realloc Changes the size of a previously allocated block of memory.
RedoTo Instructs the undo manager to invoke undo actions back
through the redo stack, down to and including the specified
undo unit.
Reduce Reduces a moniker to its simplest form.
Register Registers an object and its identifying moniker in the
running object table (ROT).
RegisterCategories Registers one or more component categories. Each
component category consists of a CATID and a list of locale-
dependent description strings.
RegisterClassImplCategories Registers the class as implementing one or more component
categories.
RegisterClassReqCategories Registers the class as requiring one or more component
categories.
RegisterDragDrop Registers the specified window as one that can be the target
of an OLE drag-and-drop operation and specifies the
IDropTarget instance to use for drop operations.
RegisterInterfaceInGlobal Registers the specified interface on an object residing in one
apartment of a process as a global interface, enabling other
apartments access to that interface.
RegisterObjectBound Registers an object with the bind context to ensure that the
object remains active until the bind context is released.
RegisterObjectParam Associates an object with a string key in the bind context's
string-keyed table of pointers.
RegisterSink Registers an event sink for receiving notifications of method
calls.
RelativePathTo Creates a relative moniker between this moniker and the
specified moniker.
Release Decrements the reference count for an interface on a COM
object.
ReleaseBoundObjects Releases all pointers to all objects that were previously
registered by calls to RegisterObjectBound.
ReleaseConnection Decrements the count of an object's strong external
connections.
ReleaseConnection Decrements the count of an object's strong external
connections.
T IT L E DESC RIP T IO N
ReleaseDC Releases the device context previously obtained by a call to
IOleInPlaceSiteWindowless::GetDC.
ReleaseHfont Notifies the font object that the caller that previously locked
this font in the cache with IFont::AddRefHfont no longer
requires the lock.
ReleaseMarshalData Destroys a marshaled data packet.
ReleaseMarshalData Destroys a marshaled data packet.
ReleaseMarshalData Releases resources that are held by interface pointers
residing in a packet of marshaled data. This method finds all
interface pointers in the packet, and calls the
CoReleaseMarshalData function on each one.
ReleaseMarshalData Releases resources that may be held by interface pointers
residing in a packet of marshaled data. This method finds all
interface pointers in the packet and calls the
CoReleaseMarshalData function on each interface pointer.
ReleaseRefOnProcess Decrements the reference count of the process.
ReleaseStgMedium Frees the specified storage medium.
RemoveDefaultProperty Removes a named property and its value from the property
bag associated with the event publisher object.
RemoveMenus Removes a container's menu elements from the composite
menu.
RemoveProperty Removes the specified context property from the context.
RemoveProperty Removes the specified context property from the context.
Render Renders (draws) a specified portion of the picture defined by
the offset (xSrc,ySrc) of the source picture and the
dimensions to copy (cxSrc,xySrc).
RequestBorderSpace Determines whether there is space available for tools to be
installed around the object's window frame while the object
is active in place.
RequestLicKey Creates a license key that the caller can save and use later to
create an instance of the licensed object.
RequestNewObjectLayout Asks a container to resize the display site for embedded
objects.
RequestUIActivate Notifies the container that the object is about to enter the
UI-active state.
Reset Resets the enumeration sequence to the beginning.
T IT L E DESC RIP T IO N
Reset Resets the enumeration sequence to the beginning.
Reset Resets the enumeration sequence to the beginning.
Reset Resets the enumeration sequence to the beginning.
Reset Resets the enumeration sequence to the beginning.
Reset Resets the enumeration sequence to the beginning.
Reset Resets the enumeration sequence to the beginning.
Reset Resets the enumeration sequence to the beginning.
Reset Resets the enumeration sequence to the beginning.
Reset Resets the enumeration sequence to the beginning.
Reset Resets the enumeration sequence to the beginning.
Reset Sets the synchronization object to the nonsignaled state.
Reset Resets the enumeration sequence to the beginning.
Reset Resets the enumeration sequence to the beginning.
Reset Resets the enumeration sequence to the beginning.
Reset Sets the synchronization object to the nonsignaled state.
Reset Resets the enumeration sequence to the beginning.
Reset Resets the enumeration sequence to the beginning.
ResetInitializerTimeout Sets the process initialization time-out.
ResetInitializerTimeout Sets the process initialization time-out.
ResizeBorder Alerts the object that it needs to resize its border space.
RetryRejectedCall Provides applications with an opportunity to display a dialog
box offering retry, cancel, or task-switching options.
RevertToSelf Restores the authentication information of a thread to what
it was before impersonation began.
RevertToSelf Restores the authentication information of a thread to what
it was before impersonation began.
T IT L E DESC RIP T IO N
Revoke Removes an entry from the running object table (ROT) that
was previously registered by a call to
IRunningObjectTable::Register.
RevokeAccessRights Removes any explicit entries for the list of trustees.
RevokeDragDrop Revokes the registration of the specified application window
as a potential target for OLE drag-and-drop operations.
RevokeInterfaceFromGlobal Revokes the registration of an interface in the global
interface table.
RevokeObjectBound Removes the object from the bind context, undoing a
previous call to RegisterObjectBound.
RevokeObjectParam Removes the specified key and its associated pointer from
the bind context's string-keyed table of objects. The key
must have previously been inserted into the table with a call
to RegisterObjectParam.
Run Forces an object to run.
Save Saves an object to the specified stream.
Save Saves a copy of the object to the specified file.
Save Saves an object, and any nested objects that it contains, into
the specified storage object. The object enters NoScribble
mode.
Save Saves an object to the specified stream.
SaveAsFile Saves the picture's data into a stream in the same format
that it would save itself into a file. Bitmaps use the BMP file
format, metafiles the WMF format, and icons the ICO
format.
SaveCompleted Notifies the object that it can write to its file.
SaveCompleted Notifies the object that it can write to its storage object.
SaveObject Saves the embedded object associated with the client site.
This function is synchronous; by the time it returns, the save
will be completed.
SaveViewState Saves the view state into the specified stream.
SCODE_CODE Extracts the code portion of the specified SCODE.
SCODE_FACILITY Extracts the facility of the specified SCODE.
SCODE_SEVERITY Extracts the severity field of the specified SCODE.
T IT L E DESC RIP T IO N
Scroll Instructs the container to scroll the view of the object by the
specified number of pixels.
ScrollRect Enables an object to scroll an area within its in-place active
image on the screen.
SelectPicture Selects a bitmap picture into a given device context, and
returns the device context in which the picture was
previously selected as well as the picture's GDI handle. This
method works in conjunction with IPicture::get_CurDC.
SendOnClose Sends notification to all advisory sinks currently registered
with the advise holder that the object has closed.
SendOnDataChange Sends notifications to each advise sink for which there is a
connection established by calling the
IAdviseSink::OnDataChange method for each advise sink
currently being handled by this instance of the advise holder
object.
SendOnRename Sends notification to all advisory sinks currently registered
with the advise holder that the name of object has changed.
SendOnSave Sends notification to all advisory sinks currently registered
with the advise holder that the object has been saved.
SendReceive Sends a method invocation across an RPC channel to the
server stub.
SendReceive Sends a method invocation across an RPC channel to the
server stub.
Set Sets the specified global property of the COM runtime.
Set Sets the value of an RPC binding option property.
Set Sets the specified global property of the COM runtime.
Set Sets the value of an RPC binding option property.
set_hPal Assigns a GDI palette to the picture contained in the picture
object.
SetAccessPolicyHint Provides a hint to the implementation about the pattern in
which records will be read.
SetAccessRights Replaces the existing access rights on an object with the
specified list.
SetActiveObject Provides a direct channel of communication between the
object and each of the frame and document windows.
T IT L E DESC RIP T IO N
SetAdvise Establishes a connection between the view object and an
advise sink so that the advise sink can be notified about
changes in the object's view.
SetBindOptions Sets new values for the binding parameters stored in the
bind context.
SetBlanket Sets the authentication information (the security blanket)
that will be used to make calls on the specified proxy.
SetBorderSpace Allocates space for the border requested in the call to
IOleInPlaceUIWindow::RequestBorderSpace.
SetCapture Enables an in-place active, windowless object to capture all
mouse messages.
SetClientSite Informs an embedded object of its display location, called a
"client site," within its container.
SetColorScheme Specifies the color palette that the object application should
use when it edits the specified object.
SetContainedObject Notifies an object that it is embedded in an OLE container,
which ensures that reference counting is done correctly for
containers that support links to embedded objects.
SetContentExtent Sets the content extent of a control.
SetCurrentLogicalThreadId Sets the GUID of the thread in which the caller is executing.
SetCurrentLogicalThreadId Sets the GUID of the thread in which the caller is executing.
SetData Initializes the cache with data in a specified format and on a
specified medium.
SetData Called by an object containing a data source to transfer data
to the object that implements this method.
SetDropSourceEnterpriseId Provides the drop target with the enterprise ID of the drop
source.
SetEventHandle Assigns an event handle to a synchronization object.
SetEventHandle Assigns an event handle to a synchronization object.
SetExtent Informs an object of how much display space its container
has assigned it.
SetFocus Sets the keyboard focus for a UI-active, windowless object.
SetHdc Provides a device context to the font that describes the
logical mapping mode.
T IT L E DESC RIP T IO N
SetHostNames Provides an object with the names of its container
application and the compound document in which it is
embedded.
SetInitialPageNum Sets the page number of the first page of a document.
SetInPlaceSite Associates a container's document view site with a
document's view object.
SetLinkSource Changes the source of a link.
SetLinkSource Changes the source of a link.
SetLinkUpdateOptions Sets a link's update options to automatic or manual.
SetLinkUpdateOptions Sets a link's update options to automatic or manual.
SetMenu Adds a composite menu to the window frame containing the
object being activated in place.
SetMoniker Notifies an object of its container's moniker, the object's own
moniker relative to the container, or the object's full moniker.
SetObjectRects Specifies how much of the in-place object is to be visible.
SetObjects Provides the property page with an array of pointers to
objects associated with this property page.
SetOwner Sets the owner or the group of an item.
SetPageSite Initializes a property page and provides the page with a
pointer to the IPropertyPageSite interface through which the
property page communicates with the property frame.
SetParam Sets the value of a specified parameter in the call frame.
SetProperty Adds the specified context property to the object context.
SetProperty Adds the specified context property to the object context.
SetRatio Converts the scaling factor for this font between logical
units and HIMETRIC units.
SetRect Sets the rectangular coordinates of the viewport in which
the view is to be activated or resets the coordinates of the
viewport in which a view is currently activated.
SetRectComplex Sets the rectangular coordinates of the viewport, scroll bars,
and size box.
SetReturnValue Sets the return value within the call frame.
T IT L E DESC RIP T IO N
SetSite Enables a container to pass an object a pointer to the
interface for its site.
SetSourceDisplayName Sets the display name for the link source.
SetSourceMoniker Sets the moniker for the link source.
SetStackLocation Sets the stack location onto which this call frame is bound.
SetStatusText Sets and displays status text about the in-place object in the
container's frame window status line.
SetUpdateOptions Specifies how often a linked object should update its cached
data.
SetViewInfo Sets the view information associated with the object.
SetViewInfo Sets the view information associated with the object.
Show Makes the property page dialog box visible or invisible. If
the page is made visible, the page should set the focus to
itself, specifically to the first property on the page.
Show Activates or deactivates a view.
ShowObject Asks a container to display its object to the user. This
method ensures that the container itself is visible and not
minimized.
ShowPropertyFrame Instructs a container to display a property sheet for the
control embedded in this site.
Signal Sets the synchronization object to the signaled state and
causes pending wait operations to return S_OK.
Signal Sets the synchronization object to the signaled state and
causes pending wait operations to return S_OK.
Skip Skips over the specified number of items in the enumeration
sequence.
Skip Skips over the specified number of items in the enumeration
sequence.
Skip Skips over the specified number of items in the enumeration
sequence.
Skip Skips over the specified number of items in the enumeration
sequence.
Skip Skips over the specified number of items in the enumeration
sequence.
T IT L E DESC RIP T IO N
Skip Skips over the specified number of items in the enumeration
sequence.
Skip Skips over the specified number of items in the enumeration
sequence.
Skip Skips over the specified number of items in the enumeration
sequence.
Skip Skips over the specified number of items in the enumeration
sequence.
Skip Skips over the specified number of items in the enumeration
sequence.
Skip Skips over the specified number of items in the enumeration
sequence.
Skip Skips over the specified number of items in the enumeration
sequence.
Skip Skips over the specified number of items in the enumeration
sequence.
Skip Skips over the specified number of items in the enumeration
sequence.
Skip Skips over the specified number of items in the enumeration
sequence.
Skip Skips over the specified number of items in the enumeration
sequence.
StringFromCLSID Converts a CLSID into a string of printable characters.
Different CLSIDs always convert to different strings.
StringFromGUID2 Converts a globally unique identifier (GUID) into a string of
printable characters.
StringFromIID Converts an interface identifier into a string of printable
characters.
SUCCEEDED Provides a generic test for success on any status value.
TestCancel Determines whether a call has been canceled.
TestCancel Determines whether a call has been canceled.
TransformCoords Converts coordinates expressed in HIMETRIC units (as is
standard in OLE) to the units specified by the container.
TranslateAccelerator Passes a keystroke to the control site for processing.
T IT L E DESC RIP T IO N
TranslateAccelerator Passes a keystroke to the property page for processing.
TranslateAccelerator Passes a keystroke to the property frame for processing.
TranslateAccelerator Processes menu accelerator-key messages from the
container's message queue. This method should only be
used for objects created by a DLL object application.
TranslateAccelerator Translates accelerator keystrokes intended for the container's
frame while an object is active in place.
TruncatePrefix Throws away the specified prefix of the log, making it no
longer retrievable.
UIActivate Activates or deactivates a document view's user interface
elements, such as menus, toolbars, and accelerators.
UIDeactivate Deactivates and removes the user interface of an active in-
place object.
Unadvise Terminates an advisory connection previously established
between a connection point object and a client's sink.
Unadvise Deletes a previously established advisory connection.
Unadvise Deletes a previously established advisory connection.
Unadvise Removes a connection between a data object and an
advisory sink that was set up through a previous call to
IDataAdviseHolder::Advise. This method is typically called in
the implementation of IDataObject::DUnadvise.
UnbindSource Breaks the connection between a linked object and its link
source.
Uncache Removes a cache connection created previously using
IOleCache::Cache.
Undocked Undocks the accessibility window so that it will not be
automatically moved to its previous location.
UndockWindow Undocks the specified window handle if it is currently
docked.
UndoTo Instructs the undo manager to invoke undo actions back
through the undo stack, down to and including the specified
undo unit.
Unfreeze Releases a drawing that was previously frozen using
IViewObject::Freeze. The most common use of this method
is for banded printing.
Unlock Releases a lock on a shared resource.
T IT L E DESC RIP T IO N
Unmarshal Unmarshals a packet of data containing the previously
marshaled [out] parameters of a call into this already existing
activation record.
Unmarshal Turns a marshaled packet of data back into an activation
record that can then be invoked or manipulated in some
other way.
UnmarshalInterface Unmarshals an interface pointer.
UnmarshalInterface Unmarshals an interface pointer.
UnRegisterCategories Removes the registration of one or more component
categories. Each component category consists of a CATID
and a list of locale-dependent description strings.
UnRegisterClassImplCategories Removes one or more implemented category identifiers
from a class.
UnRegisterClassReqCategories Removes one or more required category identifiers from a
class.
Update Updates the compound document's cached data for a linked
object. This involves binding to the link source, if it is not
already bound.
Update Updates an object handler's or link object's data or view
caches.
UpdateCache Updates the specified caches. This method is used when the
application needs precise control over caching.
UpdateLink Forces selected links to connect to their source and retrieve
current information.
UpdateLink Forces selected links to connect to their source and retrieve
current information.
Wait Waits for the synchronization object to be signaled or for a
specified timeout period to elapse, whichever comes first.
Wait Waits for the synchronization object to be signaled or for a
specified timeout period to elapse, whichever comes first.
WaitMultiple Waits for any synchronization object in the container to be
signaled or for a specified timeout period to elapse,
whichever comes first.
WaitMultiple Waits for any synchronization object in the container to be
signaled or for a specified timeout period to elapse,
whichever comes first.
WalkFrame Searches for interface pointers that are reachable from [in],
[in, out], or [out] parameters of the frame.
Interfaces
T IT L E DESC RIP T IO N
IAccessControl Enables the management of access to objects and properties
on the objects.
IAccessibilityDockingService Docks an application window to the bottom of a monitor
when a Windows Store app is visible and not snapped, or
when the launcher is visible.
IAccessibilityDockingServiceCallback Receives Acessibility Window Docking events.
IAdviseSink Enables containers and other objects to receive notifications
of data changes, view changes, and compound-document
changes occurring in objects of interest.
IAdviseSink2 The IAdviseSink2 interface is an extension of the IAdviseSink
interface, adding the method OnLinkSrcChange to the
contract to handle a change in the moniker of a linked
object.
IAdviseSinkEx This interface is derived from IAdviseSink to provide
extensions for notifying the sink of changes in an object's
view status.
IAgileObject Marks an interface as agile across apartments.
IAgileObject Marks an interface as agile across apartments.
IBindCtx Provides access to a bind context, which is an object that
stores information about a particular moniker binding
operation.
IBlockingLock Provides a semaphore that can be used to provide
temporarily exclusive access to a shared resource such as a
file.
ICallFactory Creates a call object for processing calls to the methods of
an asynchronous interface.
ICallFactory Creates a call object for processing calls to the methods of
an asynchronous interface.
ICallFrame Enables manipulation of call frames such as stack frames.
ICallFrameEvents Delivers method call notifications.
ICallFrameWalker Walks a stack frame looking for interesting values.
ICallIndirect Invokes an object with an indirect reference to the
invocations arguments, rather than the traditional direct call.
ICallInterceptor Supports the registration and un-registering of event sinks
wishing to be notified of calls made directly on the interface.
T IT L E DESC RIP T IO N
ICallUnmarshal Is used on the server (receiving) side of a remote invocation.
ICancelMethodCalls Manages cancellation requests on an outbound method call
and monitors the current state of that method call on the
server thread.
ICancelMethodCalls Manages cancellation requests on an outbound method call
and monitors the current state of that method call on the
server thread.
ICatInformation Obtains information about the categories implemented or
required by a certain class, as well as information about the
categories registered on the specified computer.
ICatRegister Provides methods for registering and unregistering
component category information in the registry. This
includes both the human-readable names of categories and
the categories implemented/required by a given component
or class.
IClassActivator Specifies a method that retrieves a class object.
IClassFactory Enables a class of objects to be created.
IClassFactory Enables a class of objects to be created.
IClassFactory2 Enables a class factory object, in any sort of object server, to
control object creation through licensing.
IClientSecurity Gives the client control over the security settings for each
individual interface proxy of an object.
IComThreadingInfo Enables you to obtain the following information about the
apartment and thread that the caller is executing
in:_apartment type, thread type, and thread GUID. It also
allows you to specify a thread GUID.
IComThreadingInfo Enables you to obtain the following information about the
apartment and thread that the caller is executing
in:_apartment type, thread type, and thread GUID. It also
allows you to specify a thread GUID.
IConnectionPoint Supports connection points for connectable objects.
IConnectionPointContainer Supports connection points for connectable objects.
IContext Supports setting COM+ context properties.
IContext Supports setting COM+ context properties.
IContextCallback Provides a mechanism to execute a function inside a specific
COM+ object context.
T IT L E DESC RIP T IO N
IContinueCallback Provides a generic callback mechanism for interruptible
processes that should periodically ask an object whether to
continue.
IDataAdviseHolder Creates and manages advisory connections between a data
object and one or more advise sinks.
IDataObject Enables data transfer and notification of changes in data.
IDropSource The IDropSource interface is one of the interfaces you
implement to provide drag-and-drop operations in your
application.
IDropSourceNotify The IDropSourceNotify interface is implemented on an
IDropSource object to receive notifications from OLE when a
user drags the mouse into or out of a potential drop target
window.
IDropTarget The IDropTarget interface is one of the interfaces you
implement to provide drag-and-drop operations in your
application.
IEnterpriseDropTarget When implemented by the drop target application, this
interface gives the OLE drag and drop engine the ability to
determine whether the drop target application intends to
evaluate enterprise protection policy and gives the OLE drag
and drop engine a way to provide the enterprise ID of the
drop source application to the drop target application.
IEnumCATEGORYINFO Enumerates component categories registered in the system.
IEnumConnectionPoints Enumerates connection points.
IEnumConnections Enumerates the current connections for a connectable
object.
IEnumContextProps Provides a mechanism for enumerating the context
properties associated with a COM+ object context.
IEnumContextProps Provides a mechanism for enumerating the context
properties associated with a COM+ object context.
IEnumFORMATETC Enumerates the FORMATETC structures that define the
formats and media supported by a given data object.
IEnumGUID Enables clients to enumerate through a collection of class
IDs for COM classes.
IEnumMoniker Enumerates the components of a moniker or the monikers
in a table of monikers.
IEnumOleDocumentViews Enumerates the views supported by a document object.
IEnumOleUndoUnits Enumerates the undo units on the undo or redo stack.
T IT L E DESC RIP T IO N
IEnumOLEVERB Enumerates the different verbs available for an object in
order of ascending verb number. An enumerator that
implements the IEnumOLEVERB interface is returned by
IOleObject::EnumVerbs.
IEnumSTATDATA Enumerates the advisory connection information for a data
object.
IEnumString Enumerate strings. LPWSTR is the type that indicates a
pointer to a zero-terminated string of wide, or Unicode,
characters.
IEnumString Enumerate strings. LPWSTR is the type that indicates a
pointer to a zero-terminated string of wide, or Unicode,
characters.
IEnumUnknown Enumerates objects with the IUnknown interface. It can be
used to enumerate through the objects in a component
containing multiple objects.
IEnumUnknown Enumerates objects with the IUnknown interface. It can be
used to enumerate through the objects in a component
containing multiple objects.
IEventProperty Associates a named event property with its value.
IEventPublisher Registers, modifies, removes, and provides information
about an event publisher.
IExternalConnection Manages a server object's count of marshaled, or external,
connections. A server that maintains such a count can
detect when it has no external connections and shut itself
down in an orderly fashion.
IExternalConnection Manages a server object's count of marshaled, or external,
connections. A server that maintains such a count can
detect when it has no external connections and shut itself
down in an orderly fashion.
IFastRundown Marks an interface as eligible for fast rundown behavior.
IFastRundown Marks an interface as eligible for fast rundown behavior.
IFileBasedLogInit Initializes an instance of a file based implementation of ILog.
IFont Provides a wrapper around a Windows font object.
IFontDisp Exposes a font object's properties through Automation. It
provides a subset of the IFont methods.
IForegroundTransfer Transfers the foreground window to the process hosting the
COM server.
IGetOleObject Gets access to an OLE control on a Visual Basic container.
T IT L E DESC RIP T IO N
IGetVBAObject Gets access to the IVBFormat interface.
IGlobalInterfaceTable Enables any apartment in a process to get access to an
interface implemented on an object in any other apartment
in the process.
IGlobalOptions Sets and queries global properties of the Component Object
Model (COM) runtime.
IGlobalOptions Sets and queries global properties of the Component Object
Model (COM) runtime.
IInitializeSpy Performs initialization or cleanup when entering or exiting a
COM apartment.
IInternalUnknown Used exclusively in lightweight client-side handlers that
require access to some of the internal interfaces on the
proxy.
IInternalUnknown Used exclusively in lightweight client-side handlers that
require access to some of the internal interfaces on the
proxy.
ILog Provides generic low-level logging functionality.
IMalloc Allocates, frees, and manages memory.
IMalloc Allocates, frees, and manages memory.
IMallocSpy Enables application developers to monitor (spy on) memory
allocation, detect memory leaks, and simulate memory
failure in calls to IMalloc methods.
IMarshal Enables a COM object to define and manage the marshaling
of its interface pointers.
IMarshal Enables a COM object to define and manage the marshaling
of its interface pointers.
IMarshalingStream Provides additional information about the marshaling
context to custom-marshaled objects and unmarshalers.
IMarshalingStream Provides additional information about the marshaling
context to custom-marshaled objects and unmarshalers.
IMessageDispatcher Callback interface implemented by components that need to
perform special processing of window messages on an ASTA
thread.
IMessageFilter Provides COM servers and applications with the ability to
selectively handle incoming and outgoing COM messages
while waiting for responses from synchronous calls.
T IT L E DESC RIP T IO N
IMoniker Enables you to use a moniker object, which contains
information that uniquely identifies a COM object.
IMultiQI Enables a client to query an object proxy, or handler, for
multiple interfaces by using a single RPC call.
IMultiQI Enables a client to query an object proxy, or handler, for
multiple interfaces by using a single RPC call.
INoMarshal Marks an object that doesn't support being marshaled or
stored in the Global Interface Table.
INoMarshal Marks an object that doesn't support being marshaled or
stored in the Global Interface Table.
IObjContext Performs various operations on contexts.
IObjContext Performs various operations on contexts.
IObjectWithSite Provides a simple way to support communication between
an object and its site in the container.
IOleAdviseHolder Manages advisory connections and compound document
notifications in an object server.
IOleCache Provides control of the presentation data that gets cached
inside of an object. Cached presentation data is available to
the container of the object even when the server application
is not running or is unavailable.
IOleCache2 Enables object clients to selectively update each cache that
was created with IOleCache::Cache.
IOleCacheControl Provides proper maintenance of caches. It maintains the
caches by connecting the running object's IDataObject
implementation to the cache, allowing the cache to receive
notifications from the running object.
IOleClientSite Provides the primary means by which an embedded object
obtains information about the location and extent of its
display site, its moniker, its user interface, and other
resources provided by its container.
IOleCommandTarget Enables objects and their containers to dispatch commands
to each other. For example, an object's toolbars may contain
buttons for commands such as Print, Print Preview, Save,
New, and Zoom.
IOleContainer Enumerates objects in a compound document or lock a
container in the running state. Container and object
applications both implement this interface.
IOleControl Provides the features for supporting keyboard mnemonics,
ambient properties, and events in control objects.
T IT L E DESC RIP T IO N
IOleControlSite Provides the methods that enable a site object to manage
each embedded control within a container.
IOleDocument Enables a document object to communicate to containers its
ability to create views of its data.
IOleDocumentSite Enables a document that has been implemented as a
document object to bypass the normal activation sequence
for in-place-active objects and to directly instruct its client
site to activate it as a document object.
IOleDocumentView The IOleDocumentView interface enables a container to
communicate with each view supported by a document
object.
IOleInPlaceActiveObject Provides a direct channel of communication between an in-
place object and the associated application's outer-most
frame window and the document window within the
application that contains the embedded object.
IOleInPlaceFrame Controls the container's top-level frame window.
IOleInPlaceObject Manages the activation and deactivation of in-place objects,
and determines how much of the in-place object should be
visible.
IOleInPlaceObjectWindowless Enables a windowless object to process window messages
and participate in drag and drop operations. It is derived
from and extends the IOleInPlaceObject interface.
IOleInPlaceSite Manages the interaction between the container and the
object's in-place client site. Recall that the client site is the
display site for embedded objects, and provides position and
conceptual information about the object.
IOleInPlaceSiteEx Provides an additional set of activation and deactivation
notification methods that enable an object to avoid
unnecessary flashing on the screen when the object is
activated and deactivated.
IOleInPlaceSiteWindowless Extends the IOleInPlaceSiteEx interface.
IOleInPlaceUIWindow Implemented by container applications and used by object
applications to negotiate border space on the document or
frame window.
IOleItemContainer Used by item monikers when they are bound to the objects
they identify.
IOleLink Enables a linked object to provide its container with
functions pertaining to linking.
IOleObject Serves as the principal means by which an embedded object
provides basic functionality to, and communicates with, its
container.
T IT L E DESC RIP T IO N
IOleParentUndoUnit Enables undo units to contain child undo units.
IOleUILinkContainerA Implemented by containers and used by OLE common
dialog boxes. It supports these dialog boxes by providing
the methods needed to manage a container's links.
IOleUILinkContainerW Implemented by containers and used by OLE common
dialog boxes. It supports these dialog boxes by providing
the methods needed to manage a container's links.
IOleUILinkInfoA An extension of the IOleUILinkContainer interface. It returns
the time that an object was last updated, which is link
information that IOleUILinkContainer does not provide.
IOleUILinkInfoW An extension of the IOleUILinkContainer interface. It returns
the time that an object was last updated, which is link
information that IOleUILinkContainer does not provide.
IOleUIObjInfoA Implemented by containers and used by the container's
Object Properties dialog box and by the Convert dialog box.
IOleUIObjInfoW Implemented by containers and used by the container's
Object Properties dialog box and by the Convert dialog box.
IOleUndoManager The IOleUndoManager interface enables containers to
implement multi-level undo and redo operations for actions
that occur within contained controls.
IOleUndoUnit Serves as the main interface on an undo unit. An undo unit
encapsulates the information necessary to undo or redo a
single action.
IOleWindow The IOleWindow interface provides methods that allow an
application to obtain the handle to the various windows that
participate in in-place activation, and also to enter and exit
context-sensitive help mode.
IParseDisplayName Parses a displayable name string to convert it into a moniker
for custom moniker implementations.
IPerPropertyBrowsing Retrieves the information in the property pages offered by
an object.
IPersist Provides the CLSID of an object that can be stored
persistently in the system. Allows the object to specify which
object handler to use in the client process, as it is used in the
default implementation of marshaling.
IPersistFile Enables an object to be loaded from or saved to a disk file,
rather than a storage object or stream.
IPersistStorage Enables a container application to pass a storage object to
one of its contained objects and to load and save the
storage object.
T IT L E DESC RIP T IO N
IPersistStream Enables the saving and loading of objects that use a simple
serial stream for their storage needs.
IPersistStreamInit A replacement for IPersistStream that adds an initialization
method.
IPicture Manages a picture object and its properties. Picture objects
provide a language-neutral abstraction for bitmaps, icons,
and metafiles.
IPictureDisp Exposes the picture object's properties through Automation.
It provides a subset of the functionality available through
IPicture methods.
IPipeByte Transfers data of the byte type (which is 8 bits wide).
IPipeByte Transfers data of the byte type (which is 8 bits wide).
IPipeDouble Transfers data of the double type (which is 64 bits wide).
IPipeDouble Transfers data of the double type (which is 64 bits wide).
IPipeLong Transfers data of the long integer type (which is 32 bits
wide).
IPipeLong Transfers data of the long integer type (which is 32 bits
wide).
IPointerInactive Enables an object to remain inactive most of the time, yet
still participate in interaction with the mouse, including drag
and drop.
IPrint Enables compound documents in general and active
documents in particular to support programmatic printing.
IProcessInitControl Specifies the process initialization time-out interval.
IProcessInitControl Specifies the process initialization time-out interval.
IProcessLock Used by ISurrogateService to prevent the process from
terminating due to a time-out.
IProgressNotify Enables applications and other objects to receive
notifications of changes in the progress of a downloading
operation.
IPropertyNotifySink Implemented by a sink object to receive notifications about
property changes from an object that supports
IPropertyNotifySink as an outgoing interface.
IPropertyPage Provides the main features of a property page object that
manages a particular page within a property sheet.
T IT L E DESC RIP T IO N
IPropertyPage2 An extension to IPropertyPage to support initial selection of
a property on a page.
IPropertyPageSite Provides the main features for a property page site object.
IProvideClassInfo Provides access to the type information for an object's
coclass entry in its type library.
IProvideClassInfo2 An extension to IProvideClassInfo that makes is faster and
easier to retrieve an object's outgoing interface IID for its
default event set.
IProvideMultipleClassInfo An extension to IProvideClassInfo2 that makes it faster and
easier to retrieve type information from a component that
may have multiple coclasses that determine its behavior.
IPSFactoryBuffer Provides custom methods for the creation of COM object
proxies and stubs. This interface is not marshalable.
IPSFactoryBuffer Provides custom methods for the creation of COM object
proxies and stubs. This interface is not marshalable.
IQuickActivate Enables controls and containers to avoid performance
bottlenecks on loading controls. It combines the load-time
or initialization-time handshaking between the control and
its container into a single call.
IROTData Implemented by monikers to enable the running object
table (ROT) to compare monikers against each other.
IRpcChannelBuffer Marshals data between a COM client proxy and a COM
server stub.
IRpcChannelBuffer Marshals data between a COM client proxy and a COM
server stub.
IRpcOptions Enables callers to set or query the values of various
properties that control how COM handles remote procedure
calls (RPC).
IRpcOptions Enables callers to set or query the values of various
properties that control how COM handles remote procedure
calls (RPC).
IRpcProxyBuffer Controls the RPC proxy used to marshal data between COM
components.
IRpcProxyBuffer Controls the RPC proxy used to marshal data between COM
components.
IRpcStubBuffer Controls the RPC stub used to marshal data between COM
components.
T IT L E DESC RIP T IO N
IRpcStubBuffer Controls the RPC stub used to marshal data between COM
components.
IRunnableObject Enables a container to control the running of its embedded
objects.
IRunningObjectTable Manages access to the running object table (ROT), a globally
accessible look-up table on each workstation.
IServerSecurity Used by a server to help authenticate the client and to
manage impersonation of the client.
IServerSecurity Used by a server to help authenticate the client and to
manage impersonation of the client.
ISimpleFrameSite Provides simple frame controls that act as simple containers
for other nested controls.
ISpecifyPropertyPages Indicates that an object supports property pages.
IStdMarshalInfo Retrieves the CLSID identifying the handler to be used in the
destination process during standard marshaling.
IStdMarshalInfo Retrieves the CLSID identifying the handler to be used in the
destination process during standard marshaling.
ISurrogate Used to dynamically load new DLL servers into an existing
surrogate and free the surrogate when it is no longer
needed.
ISurrogate Used to dynamically load new DLL servers into an existing
surrogate and free the surrogate when it is no longer
needed.
ISurrogateService Used to initialize, launch, and release a COM+ application.
You can also refresh the catalog and shut down the process.
ISynchronize Provides asynchronous communication between objects
about the occurrence of an event.
ISynchronize Provides asynchronous communication between objects
about the occurrence of an event.
ISynchronizeContainer Manages a group of unsignaled synchronization objects.
ISynchronizeContainer Manages a group of unsignaled synchronization objects.
ISynchronizeEvent Assigns an event handle to a synchronization object.
ISynchronizeEvent Assigns an event handle to a synchronization object.
ISynchronizeHandle Retrieves a handle associated with a synchronization object.
T IT L E DESC RIP T IO N
ISynchronizeHandle Retrieves a handle associated with a synchronization object.
IUnknown Enables clients to get pointers to other interfaces on a given
object through the QueryInterface method, and manage the
existence of the object through the AddRef and Release
methods.
IVBFormat Provides formatting support for controls on a Visual Basic
container.
IVBGetControl Provides access to all the controls on a Visual Basic
container.
IViewObject Enables an object to display itself directly without passing a
data object to the caller. In addition, this interface can create
and manage a connection with an advise sink so the caller
can be notified of changes in the view object.
IViewObject2 An extension to the IViewObject interface which returns the
size of the drawing for a given view of an object. You can
prevent the object from being run if it isn't already running
by calling this method instead of IOleObject::GetExtent.
IViewObjectEx An extension derived from IViewObject2 to provide support
for Enhanced, flicker-free drawing for non-rectangular
objects and transparent objects, hit testing for non-
rectangular objects, and Control sizing
Structures
T IT L E DESC RIP T IO N
ACTRL_ACCESS_ENTRY_LISTA Contains a list of access entries.
ACTRL_ACCESS_ENTRY_LISTW Contains a list of access entries.
ACTRL_ACCESS_ENTRYA Contains access-control information for a specified trustee.
This structure stores information equivalent to the access-
control information stored in an ACE.
ACTRL_ACCESS_ENTRYW Contains access-control information for a specified trustee.
This structure stores information equivalent to the access-
control information stored in an ACE.
ACTRL_ACCESSA Contains an array of access-control lists for an object and its
properties.
ACTRL_ACCESSW Contains an array of access-control lists for an object and its
properties.
ACTRL_PROPERTY_ENTRYA Contains a list of access-control entries for an object or a
specified property on an object.
T IT L E DESC RIP T IO N
ACTRL_PROPERTY_ENTRYW Contains a list of access-control entries for an object or a
specified property on an object.
BIND_OPTS Contains parameters used during a moniker-binding
operation.
CADWORD Specifies a counted array of values that can be used to
obtain the value corresponding to one of the predefined
strings for a property.
CALLFRAME_MARSHALCONTEXT Provides information about the context in which marshalling
should be carried out.
CALLFRAMEINFO Provides information about a call frame such as the method
in the call frame, if it has in, out, or in/out parameters, the
number of [in], [out], or [in, out] interfaces, the interface ID,
the number of methods in the interface and the number of
parameters in this method.
CALLFRAMEPARAMINFO Provides information about the parameter on the stack.
CALPOLESTR Specifies a counted array of strings used to specify the
predefined strings that a property can accept.
CATEGORYINFO Describes a component category.
CAUUID Specifies a counted array of UUID or GUID types used to
receive an array of CLSIDs for the property pages that the
object wants to display.
COAUTHIDENTITY Contains a user name and password.
COAUTHINFO Contains the authentication settings used while making a
remote activation request from the client computer to the
server computer.
CONNECTDATA Describes a connection that exists to a given connection
point.
CONTROLINFO Contains parameters that describe a control's keyboard
mnemonics and keyboard behavior. The structure is
populated during the IOleControl::GetControlInfo method.
COSERVERINFO Identifies a remote computer resource to the activation
functions.
COSERVERINFO Identifies a remote computer resource to the activation
functions.
CSPLATFORM Contains an operating system platform and processor
architecture.
T IT L E DESC RIP T IO N
DVASPECTINFO Contains information that is used by the IViewObject::Draw
method to optimize rendering of an inactive object by
making more efficient use of the GDI.
DVEXTENTINFO Represents the sizing data used in
IViewObjectEx::GetNaturalExtent.
DVTARGETDEVICE Specifies information about the target device for which data
is being composed. DVTARGETDEVICE contains enough
information about a Windows target device so a handle to a
device context (HDC) can be created using the CreateDC
function.
FONTDESC Contains parameters used to create a font object through
the OleCreateFontIndirect function.
FORMATETC Represents a generalized clipboard format.
INTERFACEINFO Contains information about incoming calls.
LICINFO Contains parameters that describe the licensing behavior of
a class factory that supports licensing. The structure is filled
by calling the IClassFactory2::GetLicInfo method.
MULTI_QI Represents an interface in a query for multiple interfaces.
MULTI_QI Represents an interface in a query for multiple interfaces.
OBJECTDESCRIPTOR Represents the data structure used for the
CF_OBJECTDESRIPTOR and CF_LINKSRCDESCRIPTOR file
formats.
OCPFIPARAMS Contains parameters used to invoke a property sheet dialog
box through the OleCreatePropertyFrameIndirect function.
OLECMD Associates command flags from the OLECMDF enumeration
with a command identifier through a call to
IOleCommandTarget::QueryStatus.
OLECMDTEXT Specifies a text name or status string for a single command
identifier.
OLEINPLACEFRAMEINFO Contains information about the accelerators supported by a
container during an in-place session. The structure is used in
the IOleInPlaceSite::GetWindowContext method and the
OleTranslateAccelerator function.
OLEMENUGROUPWIDTHS Indicates the number of menu items in each of the six menu
groups of a menu shared between a container and an object
server during an in-place editing session. This is the
mechanism for building a shared menu.
T IT L E DESC RIP T IO N
OLEUIBUSYA Contains information that the OLE User Interface Library
uses to initialize the Busy dialog box, and space for the
library to return information when the dialog box is
dismissed.
OLEUIBUSYW Contains information that the OLE User Interface Library
uses to initialize the Busy dialog box, and space for the
library to return information when the dialog box is
dismissed.
OLEUICHANGESOURCEA Contains information that is used to initialize the standard
Change Source dialog box.
OLEUICHANGESOURCEW Contains information that is used to initialize the standard
Change Source dialog box.
OLEUICONVERTA Contains information that the OLE User Interface Library
uses to initialize the Convert dialog box, and space for the
library to return information when the dialog box is
dismissed.
OLEUICONVERTW Contains information that the OLE User Interface Library
uses to initialize the Convert dialog box, and space for the
library to return information when the dialog box is
dismissed.
OLEUIEDITLINKSA Contains information that the OLE User Interface Library
uses to initialize the Edit Links dialog box, and contains
space for the library to return information when the dialog
box is dismissed.
OLEUIEDITLINKSW Contains information that the OLE User Interface Library
uses to initialize the Edit Links dialog box, and contains
space for the library to return information when the dialog
box is dismissed.
OLEUIGNRLPROPSA Initializes the General tab of the Object Properties dialog
box.
OLEUIGNRLPROPSW Initializes the General tab of the Object Properties dialog
box.
OLEUIINSERTOBJECTA Contains information that the OLE User Interface Library
uses to initialize the Insert Object dialog box, and space for
the library to return information when the dialog box is
dismissed.
OLEUIINSERTOBJECTW Contains information that the OLE User Interface Library
uses to initialize the Insert Object dialog box, and space for
the library to return information when the dialog box is
dismissed.
OLEUILINKPROPSA Contains information that is used to initialize the Link tab of
the Object Properties dialog box.
T IT L E DESC RIP T IO N
OLEUILINKPROPSW Contains information that is used to initialize the Link tab of
the Object Properties dialog box.
OLEUIOBJECTPROPSA Contains information that is used to initialize the standard
Object Properties dialog box.
OLEUIOBJECTPROPSW Contains information that is used to initialize the standard
Object Properties dialog box.
OLEUIPASTEENTRYA An array of entries to be specified in the
OLEUIPASTESPECIAL structure for the Paste Special dialog
box.
OLEUIPASTEENTRYW An array of entries to be specified in the
OLEUIPASTESPECIAL structure for the Paste Special dialog
box.
OLEUIPASTESPECIALA Contains information that the OLE User Interface Library
uses to initialize the Paste Special dialog box, as well as space
for the library to return information when the dialog box is
dismissed.
OLEUIPASTESPECIALW Contains information that the OLE User Interface Library
uses to initialize the Paste Special dialog box, as well as space
for the library to return information when the dialog box is
dismissed.
OLEUIVIEWPROPSA Contains information that is used to initialize the View tab of
the Object properties dialog box.
OLEUIVIEWPROPSW Contains information that is used to initialize the View tab of
the Object properties dialog box.
OLEVERB Defines a verb that an object supports. The
IOleObject::EnumVerbs method creates an enumerator that
can enumerate these structures for an object, and supplies a
pointer to the enumerator's IEnumOLEVERB.
PAGERANGE Specifies a range of pages.
PAGESET Identifies one or more page-ranges to be printed and,
optionally, identifies only the even or odd pages as part of a
pageset.
PICTDESC Contains parameters to create a picture object through the
OleCreatePictureIndirect function.
POINTF Contains information that is used to convert between
container units, expressed in floating point, and control
units, expressed in HIMETRIC.
PROPPAGEINFO Contains parameters used to describe a property page to a
property frame. A property page fills a caller-provided
structure in the IPropertyPage::GetPageInfo method.
T IT L E DESC RIP T IO N
QACONTAINER Specifies container information for
IQuickActivate::QuickActivate.
QACONTROL Specifies control information for
IQuickActivate::QuickActivate.
QUERYCONTEXT Contains a list of attributes used to look up a class
implementation.
RPCOLEMESSAGE Contains marshaling invocation arguments and return
values between COM components.
RPCOLEMESSAGE Contains marshaling invocation arguments and return
values between COM components.
SOLE_AUTHENTICATION_INFO Identifies an authentication service, authorization service,
and the authentication information for the specified
authentication service.
SOLE_AUTHENTICATION_INFO Identifies an authentication service, authorization service,
and the authentication information for the specified
authentication service.
SOLE_AUTHENTICATION_LIST Indicates the default authentication information to use with
each authentication service.
SOLE_AUTHENTICATION_LIST Indicates the default authentication information to use with
each authentication service.
SOLE_AUTHENTICATION_SERVICE Identifies an authentication service that a server is willing to
use to communicate to a client.
SOLE_AUTHENTICATION_SERVICE Identifies an authentication service that a server is willing to
use to communicate to a client.
STATDATA Contains information used to specify each advisory
connection.
Compression API
2/7/2020 • 2 minutes to read • Edit Online
Overview of the Compression API technology.
To develop Compression API, you need these headers:
compressapi.h
For programming guidance for this technology, see:
Compression API
Enumerations
T IT L E DESC RIP T IO N
COMPRESS_INFORMATION_CLASS The values of this enumeration identify the type of information
class being set or retrieved.
Functions
T IT L E DESC RIP T IO N
CloseCompressor Call to close an open COMPRESSOR_HANDLE.
CloseDecompressor Call to close an open DECOMPRESSOR_HANDLE.
Compress Takes a block of information and compresses it.
CreateCompressor Generates a new COMPRESSOR_HANDLE.
CreateDecompressor Generates a new DECOMPRESSOR_HANDLE.
Decompress Takes a block of compressed information and decompresses it.
QueryCompressorInformation Queries a compressor for information for a particular
compression algorithm.
QueryDecompressorInformation Use this function to query information about a particular
compression algorithm.
ResetCompressor Prepares the compressor for the compression of a new stream.
ResetDecompressor Prepares the decompressor for the decompression of a new
stream.
SetCompressorInformation Sets information in a compressor for a particular compression
algorithm.
T IT L E DESC RIP T IO N
SetDecompressorInformation Sets information in a decompressor for a particular
compression algorithm.
Structures
T IT L E DESC RIP T IO N
COMPRESS_ALLOCATION_ROUTINES A structure containing optional memory allocation and
deallocation routines.
Core Audio APIs
2/7/2020 • 31 minutes to read • Edit Online
Overview of the Core Audio APIs technology.
To develop Core Audio APIs, you need these headers:
audioclient.h
audioendpoints.h
audioenginebaseapo.h
audioengineendpoint.h
audiopolicy.h
audiosessiontypes.h
devicetopology.h
endpointvolume.h
mmdeviceapi.h
spatialaudioclient.h
spatialaudiohrtf.h
spatialaudiometadata.h
For programming guidance for this technology, see:
Core Audio APIs
Enumerations
T IT L E DESC RIP T IO N
_AUDCLNT_BUFFERFLAGS The _AUDCLNT_BUFFERFLAGS enumeration defines flags that
indicate the status of an audio endpoint buffer.
AUDCLNT_SHAREMODE The AUDCLNT_SHAREMODE enumeration defines constants
that indicate whether an audio stream will run in shared
mode or in exclusive mode.
AUDCLNT_STREAMOPTIONS Defines values that describe the characteristics of an audio
stream.
AUDIO_STREAM_CATEGORY Specifies the category of an audio stream.
AudioObjectType Specifies the type of an ISpatialAudioObject.
AudioSessionState The AudioSessionState enumeration defines constants that
indicate the current state of an audio session.
ConnectorType The ConnectorType enumeration indicates the type of
connection that a connector is part of.
DataFlow The DataFlow enumeration indicates the data-flow direction
of an audio stream through a connector.
T IT L E DESC RIP T IO N
EDataFlow The EDataFlow enumeration defines constants that indicate
the direction in which audio data flows between an audio
endpoint device and an application.
EndpointFormFactor The EndpointFormFactor enumeration defines constants that
indicate the general physical attributes of an audio endpoint
device.
ERole The ERole enumeration defines constants that indicate the
role that the system has assigned to an audio endpoint
device.
KSJACK_SINK_CONNECTIONTYPE The KSJACK_SINK_CONNECTIONTYPE enumeration defines
constants that specify the type of connection. These values
are used in the KSJACK_SINK_INFORMATION structure that
stores information about an audio jack sink.
PartType The PartType enumeration defines constants that indicate
whether a part in a device topology is a connector or subunit.
SpatialAudioHrtfDirectivityType Specifies the shape in which sound is emitted by an
ISpatialAudioObjectForHrtf.
SpatialAudioHrtfDistanceDecayType Specifies the type of decay applied over distance from the
position of an ISpatialAudioObjectForHrtf to the position of
the listener.
SpatialAudioHrtfEnvironmentType Specifies the type of acoustic environment that is simulated
when audio is processed for an ISpatialAudioObjectForHrtf.
SpatialAudioMetadataCopyMode Specifies the copy mode used when calling
ISpatialAudioMetadataCopier::CopyMetadataForFrames.
SpatialAudioMetadataWriterOverflowMode Specifies the desired behavior when an
ISpatialAudioMetadataWriter attempts to write more items
into the metadata buffer than was specified when the client
was initialized.
Functions
T IT L E DESC RIP T IO N
Activate The Activate method creates a COM object with the specified
interface.
Activate The Activate method activates a function-specific interface on
a connector or subunit.
ActivateAudioInterfaceAsync Enables Windows Store apps to access preexisting
Component Object Model (COM) interfaces in the WASAPI
family.
ActivateCompleted Indicates that activation of a WASAPI interface is complete
and results are available.
T IT L E DESC RIP T IO N
ActivateSpatialAudioMetadataCopier Creates an ISpatialAudioMetadataWriter object for copying
spatial audio metadata items from one
ISpatialAudioMetadataItems object to another.
ActivateSpatialAudioMetadataItems Creates an ISpatialAudioMetadataItems object for storing
spatial audio metadata items.
ActivateSpatialAudioMetadataReader Creates an ISpatialAudioMetadataWriter object for reading
spatial audio metadata items from an
ISpatialAudioMetadataItems object.
ActivateSpatialAudioMetadataWriter Creates an ISpatialAudioMetadataWriter object for writing
spatial audio metadata items to an
ISpatialAudioMetadataItems object.
ActivateSpatialAudioObject Activates an ISpatialAudioObject for audio rendering.
ActivateSpatialAudioObjectForHrtf Activates an ISpatialAudioObjectForHrtf for audio rendering.
ActivateSpatialAudioObjectForMetadataCommands Activate an ISpatialAudioObjectForMetadataCommands for
rendering.
ActivateSpatialAudioObjectForMetadataItems Activate an ISpatialAudioObjectForMetadataItems for
rendering.
ActivateSpatialAudioStream Activates and initializes spatial audio stream using one of the
spatial audio stream activation structures.
AttachToBuffer Attaches caller-provided memory for storage of
ISpatialAudioMetadataItems objects.
AttachToPopulatedBuffer Attaches a previously populated buffer for storage of
ISpatialAudioMetadataItems objects. The metadata items
already in the buffer are retained.
BeginUpdatingAudioObjects Puts the system into the state where audio object data can be
submitted for processing and the ISpatialAudioObject state
can be modified.
Close Completes any necessary operations on the
SpatialAudioMetadataItems object and releases the object.
Close Completes any necessary operations on the
SpatialAudioMetadataItems object and releases the object.
Close Completes any needed operations on the metadata buffer
and releases the specified ISpatialAudioMetadataItems object.
ConnectTo The ConnectTo method connects this connector to a
connector in another device-topology object.
T IT L E DESC RIP T IO N
CopyMetadataForFrames Copies metadata items from the source
ISpatialAudioMetadataItems, provided to the Open method,
object to the destination ISpatialAudioMetadataItems object,
specified with the dstMetadataItems parameter.
DetachBuffer Detaches the buffer. Memory can only be attached to a single
metadata item at a time.
Disconnect The Disconnect method disconnects this connector from
another connector.
EndUpdatingAudioObjects Notifies the system that the app has finished supplying audio
data for the spatial audio objects activated with
ActivateSpatialAudioObject.
EnumAudioEndpoints The EnumAudioEndpoints method generates a collection of
audio endpoint devices that meet the specified criteria.
EnumPartsIncoming The EnumPartsIncoming method gets a list of all the
incoming parts—that is, the parts that reside on data paths
that are upstream from this part.
EnumPartsOutgoing The EnumPartsOutgoing method retrieves a list of all the
outgoing parts—that is, the parts that reside on data paths
that are downstream from this part.
Get4BRange The Get4BRange method gets the 4-byte range of the
device-specific property value.
GetActivateResult Gets the results of an asynchronous activation of a WASAPI
interface initiated by an application calling the
ActivateAudioInterfaceAsync function.
GetAllVolumes The GetAllVolumes method retrieves the volume levels for all
the channels in the audio stream.
GetAllVolumes The GetAllVolumes method retrieves the volume levels for all
the channels in the audio session.
GetAudioObjectType Gets a value specifying the type of audio object that is
represented by the ISpatialAudioObject.
GetAudioSessionControl The GetAudioSessionControl method retrieves an audio
session control.
GetAvailableDynamicObjectCount Gets the number of dynamic spatial audio objects that are
currently available.
GetAvailableOffloadConnectorCount The GetAvailableOffloadConnectorCount method retrieves
the number of avaialable endpoints that can handle offloaded
streams on the hardware audio engine.
GetBuffer Gets a buffer that is used to supply the audio data for the
ISpatialAudioObject.
T IT L E DESC RIP T IO N
GetBuffer Retrieves a pointer to the next available packet of data in the
capture endpoint buffer.
GetBuffer Retrieves a pointer to the next available space in the
rendering endpoint buffer into which the caller can write a
data packet.
GetBufferSize The GetBufferSize method retrieves the size (maximum
capacity) of the endpoint buffer.
GetBufferSizeLimits The GetBufferSizeLimits method returns the buffer size limits
of the hardware audio engine in 100-nanosecond units.
GetChannelConfig The GetChannelConfig method gets the current channel-
configuration mask from a channel-configuration control.
GetChannelCount The GetChannelCount method gets the number of channels
in the audio stream.
GetChannelCount The GetChannelCount method gets the number of channels
in the audio stream.
GetChannelCount The GetChannelCount method retrieves the number of
channels in the audio stream.
GetChannelCount The GetChannelCount method retrieves the number of
channels in the stream format for the audio session.
GetChannelCount The GetChannelCount method gets a count of the channels
in the audio stream that enters or leaves the audio endpoint
device.
GetChannelsPeakValues The GetChannelsPeakValues method gets the peak sample
values for all the channels in the audio stream.
GetChannelVolume The GetChannelVolume method retrieves the volume level for
the specified channel in the audio stream.
GetChannelVolume The GetChannelVolume method retrieves the volume level for
the specified channel in the audio session.
GetChannelVolumeLevel The GetChannelVolumeLevel method gets the volume level, in
decibels, of the specified channel in the audio stream that
enters or leaves the audio endpoint device.
GetChannelVolumeLevelScalar The GetChannelVolumeLevelScalar method gets the
normalized, audio-tapered volume level of the specified
channel of the audio stream that enters or leaves the audio
endpoint device.
GetChannelVolumes The GetChannelVolumes method retrieves the volume levels
for the various audio channels in the offloaded stream.
GetCharacteristics The GetCharacteristics method is reserved for future use.
T IT L E DESC RIP T IO N
GetConnectedTo The GetConnectedTo method gets the connector to which
this connector is connected.
GetConnector The GetConnector method gets the connector that is
specified by a connector number.
GetConnectorCount The GetConnectorCount method gets the number of
connectors in the device-topology object.
GetConnectorIdConnectedTo The GetConnectorIdConnectedTo method gets the global ID
of the connector, if any, that this connector is connected to.
GetControlInterface The GetControlInterface method gets a reference to the
specified control interface, if this part supports it.
GetControlInterfaceCount The GetControlInterfaceCount method gets the number of
control interfaces that this part supports.
GetCount Gets the number of supported audio formats in the list.
GetCount The GetCount method retrieves a count of the devices in the
device collection.
GetCount The GetCount method gets the number of parts in the parts
list.
GetCount The GetCount method gets the total number of audio
sessions that are open on the audio device.
GetCurrentPadding The GetCurrentPadding method retrieves the number of
frames of padding in the endpoint buffer.
GetCurrentSharedModeEnginePeriod Returns the current format and periodicity of the audio
engine.
GetDataFlow The GetDataFlow method indicates whether the audio
endpoint device is a rendering device or a capture device.
GetDataFlow The GetDataFlow method gets the direction of data flow
through this connector.
GetDefaultAudioEndpoint The GetDefaultAudioEndpoint method retrieves the default
audio endpoint for the specified data-flow direction and role.
GetDevice The GetDevice method retrieves an audio endpoint device
that is identified by an endpoint ID string.
GetDeviceId The GetDeviceId method gets the device identifier of the
device that is represented by the device-topology object.
GetDeviceIdConnectedTo The GetDeviceIdConnectedTo method gets the device
identifier of the audio device, if any, that this connector is
connected to.
T IT L E DESC RIP T IO N
GetDevicePeriod The GetDevicePeriod method retrieves the length of the
periodic interval separating successive processing passes by
the audio engine on the data in the endpoint buffer.
GetDevicePosition The GetDevicePosition method gets the current device
position, in frames, directly from the hardware.
GetDevicePreferredFormat The GetDevicePreferredFormat method gets the preferred
audio stream format for the connection.
GetDisplayName The GetDisplayName method retrieves the display name for
the audio session.
GetEnabled The GetEnabled method gets the current state (enabled or
disabled) of the AGC.
GetEnabled The GetEnabled method gets the current state (enabled or
disabled) of the loudness control.
GetEngineFormat The GetEngineFormat method retrieves the current data
format of the offloaded audio stream.
GetFormat Gets the format with the specified index in the list. The
formats are listed in order of importance. The most preferable
format is first in the list.
GetFrameCount Gets the total frame count of the
ISpatialAudioMetadataItems, which defines valid item offsets.
GetFrequency The GetFrequency method gets the device frequency.
GetGfxState The GetGfxState method retrieves the GFX state of the
offloaded audio stream.
GetGlobalId The GetGlobalId method gets the global ID of this part.
GetGroupingParam The GetGroupingParam method retrieves the grouping
parameter of the audio session.
GetIconPath The GetIconPath method retrieves the path for the display
icon for the audio session.
GetId The GetId method retrieves an endpoint ID string that
identifies the audio endpoint device.
GetIID The GetIID method gets the interface ID of the function-
specific control interface of the part.
GetInfo Gets the total frame count for the
ISpatialAudioMetadataItems, which defines valid item offsets.
GetItemCount The current number of items stored by the
ISpatialAudioMetadataItems.
T IT L E DESC RIP T IO N
GetJackCount The GetJackCount method gets the number of jacks required
to connect to an audio endpoint device.
GetJackCount The GetJackCount method gets the number of jacks on the
connector, which are required to connect to an endpoint
device.
GetJackDescription The GetJackDescription method gets a description of an audio
jack.
GetJackDescription2 The GetJackDescription2 method gets the description of a
specified audio jack.
GetJackSinkInformation The GetJackSinkInformation method retrieves the sink
information for the specified jack.
GetLevel The GetLevel method gets the peak level that the peak meter
recorded for the specified channel since the peak level for that
channel was previously read.
GetLevel The GetLevel method gets the volume level, in decibels, of the
specified channel.
GetLevelRange The GetLevelRange method gets the range, in decibels, of the
volume level of the specified channel.
GetLocalEffectsState The GetLocalEffectsState method retrieves the local effects
state that is currently applied to the offloaded audio stream.
GetLocalId The GetLocalId method gets the local ID of this part.
GetMasterVolume The GetMasterVolume method retrieves the client volume
level for the audio session.
GetMasterVolumeLevel The GetMasterVolumeLevel method gets the master volume
level, in decibels, of the audio stream that enters or leaves the
audio endpoint device.
GetMasterVolumeLevelScalar The GetMasterVolumeLevelScalar method gets the master
volume level of the audio stream that enters or leaves the
audio endpoint device. The volume level is expressed as a
normalized, audio-tapered value in the range from 0.0 to 1.0.
GetMaxDynamicObjectCount Gets the maximum number of dynamic audio objects for the
spatial audio client.
GetMaxFrameCount Gets the maximum possible frame count per processing pass.
This method can be used to determine the size of the source
buffer that should be allocated to convey audio data for each
processing pass.
GetMaxItemCount The maximum number of items allowed by the
ISpatialAudioMetadataItems, defined when the object is
created.
T IT L E DESC RIP T IO N
GetMaxValueBufferLength The size of the largest command value defined by the
metadata format for the ISpatialAudioMetadataItems.
GetMeterChannelCount Gets the number of available audio channels in the offloaded
stream that can be metered.
GetMeteringChannelCount The GetMeteringChannelCount method gets the number of
channels in the audio stream that are monitored by peak
meters.
GetMeteringData The GetMeteringData method retrieves general information
about the available audio channels in the offloaded stream.
GetMixFormat The GetMixFormat method retrieves the stream format that
the audio engine uses for its internal processing of shared-
mode streams.
GetMute The GetMute method retrieves the mute status of the
offloaded audio stream.
GetMute The GetMute method gets the current state (enabled or
disabled) of the mute control.
GetMute The GetMute method retrieves the current muting state for
the audio session.
GetMute The GetMute method gets the muting state of the audio
stream that enters or leaves the audio endpoint device.
GetName The GetName method gets the friendly name for the audio
function that the control interface encapsulates.
GetName The GetName method gets the friendly name of this part.
GetNativeStaticObjectTypeMask Gets a channel mask which represents the subset of static
speaker bed channels native to current rendering engine.
GetNextPacketSize The GetNextPacketSize method retrieves the number of
frames in the next data packet in the capture endpoint buffer.
GetPart The GetPart method gets a part from the parts list.
GetPartById The GetPartById method gets a part that is identified by its
local ID.
GetPartType The GetPartType method gets the part type of this part.
GetPeakValue The GetPeakValue method gets the peak sample value for the
channels in the audio stream.
GetPosition The GetPosition method gets the current device position.
T IT L E DESC RIP T IO N
GetProcessId The GetProcessId method retrieves the process identifier of
the audio session.
GetSelection The GetSelection method gets the local ID of the part that is
connected to the selector input that is currently selected.
GetSelection The GetSelection method gets the local ID of the part that is
connected to the selector output that is currently selected.
GetService Gets additional services from the
ISpatialAudioObjectRenderStream.
GetService The GetService method accesses additional services from the
audio client object.
GetSession The GetSession method gets the audio session specified by an
audio session number.
GetSessionEnumerator The GetSessionEnumerator method gets a pointer to the
audio session enumerator object.
GetSessionIdentifier The GetSessionIdentifier method retrieves the audio session
identifier.
GetSessionInstanceIdentifier The GetSessionInstanceIdentifier method retrieves the
identifier of the audio session instance.
GetSharedModeEnginePeriod Returns the range of periodicities supported by the engine for
the specified stream format.
GetSignalPath The GetSignalPath method gets a list of parts in the signal
path that links two parts, if the path exists.
GetSimpleAudioVolume The GetSimpleAudioVolume method retrieves a simple audio
volume control.
GetSpatialAudioMetadataItems Gets a pointer to the ISpatialAudioMetadataItems object
which stores metadata items for the
ISpatialAudioObjectForMetadataItems.
GetSpatialAudioMetadataItemsBufferLength Gets the length of the buffer required to store the specified
number of spatial audio metadata items.
GetState The GetState method retrieves the current device state.
GetState The GetState method retrieves the current state of the audio
session.
GetStaticObjectPosition Gets the position in 3D space of the specified static spatial
audio channel.
GetStreamLatency The GetStreamLatency method retrieves the maximum
latency for the current stream and can be called any time
after the stream has been initialized.
T IT L E DESC RIP T IO N
GetSubType The GetSubType method gets the part subtype of this part.
GetSubunit The GetSubunit method gets the subunit that is specified by a
subunit number.
GetSubunitCount The GetSubunitCount method gets the number of subunits in
the device topology.
GetSupportedAudioObjectFormatEnumerator Gets an IAudioFormatEnumerator that contains all supported
audio formats for spatial audio objects, the first item in the list
represents the most preferable format.
GetTopologyObject The GetTopologyObject method gets a reference to the
IDeviceTopology interface of the device-topology object that
contains this part.
GetType The GetType method gets the type of this connector.
GetType The GetType method gets the data type of the device-specific
property value.
GetValue The GetValue method gets the current value of the device-
specific property.
GetVolumeChannelCount The GetVolumeChannelCount method retrieves the number
of available audio channels in the offloaded stream.
GetVolumeRange The GetVolumeRange method gets the volume range, in
decibels, of the audio stream that enters or leaves the audio
endpoint device.
GetVolumeRangeChannel The GetVolumeRangeChannel method gets the volume range
for a specified channel.
GetVolumeStepInfo The GetVolumeStepInfo method gets information about the
current step in the volume range.
Initialize The Initialize method initializes the audio stream.
InitializeSharedAudioStream Initializes a shared stream with the specified periodicity.
IsActive Gets a boolean value indicating whether the
ISpatialAudioObject is valid.
IsAudioObjectFormatSupported Gets a value indicating whether
ISpatialAudioObjectRenderStream supports a the specified
format.
IsConnected The IsConnected method indicates whether this connector is
connected to another connector.
IsFormatSupported The IsFormatSupported method indicates whether the audio
endpoint device supports the specified audio stream format.
T IT L E DESC RIP T IO N
IsFormatSupported The IsFormatSupported method indicates whether the audio
endpoint device supports a particular stream format.
IsLastBufferControlSupported Indicates if last buffer control is supported.
IsOffloadCapable The IsOffloadCapable method retrieves information about
whether or not the endpoint on which a stream is created is
capable of supporting an offloaded audio stream.
IsSpatialAudioStreamAvailable When successful, gets a value indicating whether the currently
active spatial rendering engine supports the specified spatial
audio render stream.
IsSystemSoundsSession The IsSystemSoundsSession method indicates whether the
session is a system sounds session.
Item The Item method retrieves a pointer to the specified item in
the device collection.
OnAvailableDynamicObjectCountChange Notifies the spatial audio client when the rendering capacity
for an ISpatialAudioObjectRenderStream is about to change,
specifies the time after which the change will occur, and
specifies the number of dynamic audio objects that will be
available after the change.
OnChannelVolumeChanged The OnChannelVolumeChanged method notifies the client
that the volume level of an audio channel in the session
submix has changed.
OnDefaultDeviceChanged The OnDefaultDeviceChanged method notifies the client that
the default audio endpoint device for a particular device role
has changed.
OnDeviceAdded The OnDeviceAdded method indicates that a new audio
endpoint device has been added.
OnDeviceRemoved The OnDeviceRemoved method indicates that an audio
endpoint device has been removed.
OnDeviceStateChanged The OnDeviceStateChanged method indicates that the state
of an audio endpoint device has changed.
OnDisplayNameChanged The OnDisplayNameChanged method notifies the client that
the display name for the session has changed.
OnGroupingParamChanged The OnGroupingParamChanged method notifies the client
that the grouping parameter for the session has changed.
OnIconPathChanged The OnIconPathChanged method notifies the client that the
display icon for the session has changed.
OnNotify The OnNotify method notifies the client when the status of a
connector or subunit changes.
T IT L E DESC RIP T IO N
OnNotify The OnNotify method notifies the client that the volume level
or muting state of the audio endpoint device has changed.
OnPropertyValueChanged The OnPropertyValueChanged method indicates that the
value of a property belonging to an audio endpoint device
has changed.
OnSessionCreated The OnSessionCreated method notifies the registered
processes that the audio session has been created.
OnSessionDisconnected The OnSessionDisconnected method notifies the client that
the audio session has been disconnected.
OnSimpleVolumeChanged The OnSimpleVolumeChanged method notifies the client that
the volume level or muting state of the audio session has
changed.
OnStateChanged The OnStateChanged method notifies the client that the
stream-activity state of the session has changed.
OnVolumeDuckNotification The OnVolumeDuckNotification method sends a notification
about a pending system ducking event.
OnVolumeUnduckNotification The OnVolumeUnduckNotification method sends a
notification about a pending system unducking event.
Open Opens an ISpatialAudioMetadataItems object for copying.
Open Opens an ISpatialAudioMetadataItems object for reading.
Open Opens an ISpatialAudioMetadataItems object for writing.
OpenPropertyStore The OpenPropertyStore method retrieves an interface to the
device's property store.
QueryHardwareSupport The QueryHardwareSupport method queries the audio
endpoint device for its hardware-supported functions.
QueryHardwareSupport The QueryHardwareSupport method queries the audio
endpoint device for its hardware-supported functions.
ReadNextItem Gets the number of commands and the sample offset for the
metadata item being read.
ReadNextItemCommand Reads metadata commands and value data for the current
item.
RegisterAudioSessionNotification The RegisterAudioSessionNotification method registers the
client to receive notifications of session events, including
changes in the stream state.
RegisterControlChangeCallback The RegisterControlChangeCallback method registers the
IControlChangeNotify interface, which the client implements
to receive notifications of status changes in this part.
T IT L E DESC RIP T IO N
RegisterControlChangeNotify The RegisterControlChangeNotify method registers a client's
notification callback interface.
RegisterDuckNotification The RegisterDuckNotification method registers the application
with the session manager to receive ducking notifications.
RegisterEndpointNotificationCallback The RegisterEndpointNotificationCallback method registers a
client's notification callback interface.
RegisterSessionNotification The RegisterSessionNotification method registers the
application to receive a notification when a session is created.
ReleaseBuffer The ReleaseBuffer method releases the buffer.
ReleaseBuffer The ReleaseBuffer method releases the buffer space acquired
in the previous call to the IAudioRenderClient::GetBuffer
method.
ReleaseOutputDataPointerForLastBuffer Releases the output data pointer for the last buffer.
Reset Reset a stopped audio stream.
Reset The Reset method resets the audio stream.
ResetToDefault Resets the format to the default setting provided by the
device manufacturer.
SetAllVolumes The SetAllVolumes method sets the individual volume levels
for all the channels in the audio stream.
SetAllVolumes The SetAllVolumes method sets the individual volume levels
for all the channels in the audio session.
SetChannelConfig The SetChannelConfig method sets the channel-configuration
mask in a channel-configuration control.
SetChannelVolume The SetChannelVolume method sets the volume level for the
specified channel in the audio stream.
SetChannelVolume The SetChannelVolume method sets the volume level for the
specified channel in the audio session.
SetChannelVolumeLevel The SetChannelVolumeLevel method sets the volume level, in
decibels, of the specified channel of the audio stream that
enters or leaves the audio endpoint device.
SetChannelVolumeLevelScalar The SetChannelVolumeLevelScalar method sets the
normalized, audio-tapered volume level of the specified
channel in the audio stream that enters or leaves the audio
endpoint device.
SetChannelVolumes The SetChannelVolumes method sets the volume levels for
the various audio channels in the offloaded stream.
T IT L E DESC RIP T IO N
SetClientProperties Sets the properties of the audio stream by populating an
AudioClientProperties structure.
SetDirectivity Sets the spatial audio directivity model for the
ISpatialAudioObjectForHrtf.
SetDisplayName The SetDisplayName method assigns a display name to the
current session.
SetDistanceDecay Sets the decay model that is applied over distance from the
position of an ISpatialAudioObjectForHrtf to the position of
the listener.
SetDuckingPreference The SetDuckingPreference method enables or disables the
default stream attenuation experience (auto-ducking)
provided by the system.
SetEnabled The SetEnabled method enables or disables the AGC.
SetEnabled The SetEnabled method enables or disables the loudness
control.
SetEndOfStream Instructs the system that the final block of audio data has
been submitted for the ISpatialAudioObject so that the object
can be deactivated and it's resources reused.
SetEngineDeviceFormat The SetEngineDeviceFormat method sets the waveform audio
format for the hardware audio engine.
SetEnvironment Sets the type of acoustic environment that is simulated when
audio is processed for the ISpatialAudioObjectForHrtf.
SetEventHandle The SetEventHandle method sets the event handle that the
system signals when an audio buffer is ready to be processed
by the client.
SetGain Sets the gain for the ISpatialAudioObjectForHrtf.
SetGfxState The SetGfxState method sets the GFX state of the offloaded
audio stream.
SetGroupingParam The SetGroupingParam method assigns a session to a
grouping of sessions.
SetIconPath The SetIconPath method assigns a display icon to the current
session.
SetLevel The SetLevel method sets the volume level, in decibels, of the
specified channel.
SetLevelAllChannels The SetLevelAllChannels method sets the volume levels, in
decibels, of all the channels in the audio stream.
T IT L E DESC RIP T IO N
SetLevelUniform The SetLevelUniform method sets all channels in the audio
stream to the same uniform volume level, in decibels.
SetLocalEffectsState The SetLocalEffectsState method sets the local effects state
that is to be applied to the offloaded audio stream.
SetMasterVolume The SetMasterVolume method sets the master volume level
for the audio session.
SetMasterVolumeLevel The SetMasterVolumeLevel method sets the master volume
level, in decibels, of the audio stream that enters or leaves the
audio endpoint device.
SetMasterVolumeLevelScalar The SetMasterVolumeLevelScalar method sets the master
volume level of the audio stream that enters or leaves the
audio endpoint device. The volume level is expressed as a
normalized, audio-tapered value in the range from 0.0 to 1.0.
SetMute The SetMute method sets the mute status of the offloaded
audio stream.
SetMute The SetMute method enables or disables the mute control.
SetMute The SetMute method sets the muting state for the audio
session.
SetMute The SetMute method sets the muting state of the audio
stream that enters or leaves the audio endpoint device.
SetOrientation Sets the orientation in 3D space, relative to the listener's
frame of reference, from which the ISpatialAudioObjectForHrtf
audio data will be rendered.
SetPosition Sets the position in 3D space, relative to the listener, from
which the ISpatialAudioObjectForHrtf audio data will be
rendered.
SetPosition Sets the position in 3D space, relative to the listener, from
which the ISpatialAudioObject audio data will be rendered.
SetSampleRate The SetSampleRate method sets the sample rate of a stream.
SetSelection The SetSelection method selects one of the inputs of the
input selector.
SetSelection The SetSelection method selects one of the outputs of the
output selector.
SetValue The SetValue method sets the value of the device-specific
property.
SetVolume Sets an audio amplitude multiplier that will be applied to the
audio data provided by the ISpatialAudioObject before it is
submitted to the audio rendering engine.
T IT L E DESC RIP T IO N
Start Starts the spatial audio stream.
Start The Start method starts the audio stream.
Stop Stops a running audio stream.
Stop The Stop method stops the audio stream.
UnregisterAudioSessionNotification The UnregisterAudioSessionNotification method deletes a
previous registration by the client to receive notifications.
UnregisterControlChangeCallback The UnregisterControlChangeCallback method removes the
registration of an IControlChangeNotify interface that the
client previously registered by a call to the
IPart::RegisterControlChangeCallback method.
UnregisterControlChangeNotify The UnregisterControlChangeNotify method deletes the
registration of a client's notification callback interface that the
client registered in a previous call to the
IAudioEndpointVolume::RegisterControlChangeNotify
method.
UnregisterDuckNotification The UnregisterDuckNotification method deletes a previous
registration by the application to receive notifications.
UnregisterEndpointNotificationCallback The UnregisterEndpointNotificationCallback method deletes
the registration of a notification interface that the client
registered in a previous call to the
IMMDeviceEnumerator::RegisterEndpointNotificationCallback
method.
UnregisterSessionNotification The UnregisterSessionNotification method deletes the
registration to receive a notification when a session is created.
VolumeStepDown The VolumeStepDown method decrements, by one step, the
volume level of the audio stream that enters or leaves the
audio endpoint device.
VolumeStepUp The VolumeStepUp method increments, by one step, the
volume level of the audio stream that enters or leaves the
audio endpoint device.
WriteNextItem Starts a new metadata item at the specified offset.
WriteNextItemCommand Writes metadata commands and value data to the current
item.
WriteNextMetadataCommand Writes a metadata command to the spatial audio object, each
command may only be added once per object per processing
cycle.
Interfaces
T IT L E DESC RIP T IO N
IActivateAudioInterfaceAsyncOperation Represents an asynchronous operation activating a WASAPI
interface and provides a method to retrieve the results of the
activation.
IActivateAudioInterfaceCompletionHandler Provides a callback to indicate that activation of a WASAPI
interface is complete.
IAudioAutoGainControl The IAudioAutoGainControl interface provides access to a
hardware automatic gain control (AGC).
IAudioBass The IAudioBass interface provides access to a hardware bass-
level control.
IAudioCaptureClient The IAudioCaptureClient interface enables a client to read
input data from a capture endpoint buffer.
IAudioChannelConfig The IAudioChannelConfig interface provides access to a
hardware channel-configuration control.
IAudioClient The IAudioClient interface enables a client to create and
initialize an audio stream between an audio application and
the audio engine (for a shared-mode stream) or the hardware
buffer of an audio endpoint device (for an exclusive-mode
stream).
IAudioClient2 The IAudioClient2 interface is derived from the IAudioClient
interface, with a set of additional methods that enable a
Windows Audio Session API (WASAPI) audio client to do the
following:_opt in for offloading, query stream properties, and
get information from the hardware that handles
offloading.The audio client can be successful in creating an
offloaded stream if the underlying endpoint supports the
hardware audio engine, the endpoint has been enumerated
and discovered by the audio system, and there are still offload
pin instances available on the endpoint.
IAudioClient3 The IAudioClient3 interface is derived from the IAudioClient2
interface, with a set of additional methods that enable a
Windows Audio Session API (WASAPI) audio client to query
for the audio engine's supported periodicities and current
periodicity as well as request initialization a shared audio
stream with a specified periodicity.
IAudioClock The IAudioClock interface enables a client to monitor a
stream's data rate and the current position in the stream.
IAudioClock2 The IAudioClock2 interface is used to get the current device
position.
IAudioClockAdjustment The IAudioClockAdjustment interface is used to adjust the
sample rate of a stream.
IAudioEndpointFormatControl Used for resetting the current audio endpoint device format.
T IT L E DESC RIP T IO N
IAudioEndpointLastBufferControl Provides functionality to allow an offload stream client to
notify the endpoint that the last buffer has been sent only
partially filled.
IAudioEndpointOffloadStreamMeter The IAudioEndpointOffloadStreamMeter interface retrieves
general information about the audio channels in the offloaded
audio stream.
IAudioEndpointOffloadStreamMute The IAudioEndpointOffloadStreamMute interface allows a
client to manipulate the mute status of the offloaded audio
stream.
IAudioEndpointOffloadStreamVolume The IAudioEndpointOffloadStreamVolume interface allows the
client application to manipulate the volume level of the
offloaded audio stream.
IAudioEndpointVolume The IAudioEndpointVolume interface represents the volume
controls on the audio stream to or from an audio endpoint
device.
IAudioEndpointVolumeCallback The IAudioEndpointVolumeCallback interface provides
notifications of changes in the volume level and muting state
of an audio endpoint device.
IAudioEndpointVolumeEx The IAudioEndpointVolumeEx interface provides volume
controls on the audio stream to or from a device endpoint.
IAudioFormatEnumerator Provides a list of supported audio formats. The most
preferred format is first in the list. Get a reference to this
interface by calling
ISpatialAudioClient::GetSupportedAudioObjectFormatEnumer
ator.
IAudioInputSelector The IAudioInputSelector interface provides access to a
hardware multiplexer control (input selector).
IAudioLfxControl The IAudioLfxControl interface allows the client to apply or
remove local effects from the offloaded audio stream.
IAudioLoudness The IAudioLoudness interface provides access to a "loudness"
compensation control.
IAudioMeterInformation The IAudioMeterInformation interface represents a peak
meter on an audio stream to or from an audio endpoint
device.
IAudioMidrange The IAudioMidrange interface provides access to a hardware
midrange-level control.
IAudioMute The IAudioMute interface provides access to a hardware mute
control.
IAudioOutputSelector The IAudioOutputSelector interface provides access to a
hardware demultiplexer control (output selector).
T IT L E DESC RIP T IO N
IAudioPeakMeter The IAudioPeakMeter interface provides access to a hardware
peak-meter control.
IAudioRenderClient The IAudioRenderClient interface enables a client to write
output data to a rendering endpoint buffer.
IAudioSessionControl The IAudioSessionControl interface enables a client to
configure the control parameters for an audio session and to
monitor events in the session.
IAudioSessionControl2 The IAudioSessionControl2 interface can be used by a client
to get information about the audio session.
IAudioSessionEnumerator The IAudioSessionEnumerator interface enumerates audio
sessions on an audio device.
IAudioSessionEvents The IAudioSessionEvents interface provides notifications of
session-related events such as changes in the volume level,
display name, and session state.
IAudioSessionManager The IAudioSessionManager interface enables a client to access
the session controls and volume controls for both cross-
process and process-specific audio sessions.
IAudioSessionManager2 The IAudioSessionManager2 interface enables an application
to manage submixes for the audio device.
IAudioSessionNotification The IAudioSessionNotification interface provides notification
when an audio session is created.
IAudioStreamVolume The IAudioStreamVolume interface enables a client to control
and monitor the volume levels for all of the channels in an
audio stream.
IAudioTreble The IAudioTreble interface provides access to a hardware
treble-level control.
IAudioVolumeDuckNotification The IAudioVolumeDuckNotification interface is used to by the
system to send notifications about stream attenuation
changes.Stream Attenuation, or ducking, is a feature
introduced in Windows 7, where the system adjusts the
volume of a non-communication stream when a new
communication stream is opened. For more information
about this feature, see Default Ducking Experience.
IAudioVolumeLevel The IAudioVolumeLevel interface provides access to a
hardware volume control.
IChannelAudioVolume The IChannelAudioVolume interface enables a client to control
and monitor the volume levels for all of the channels in the
audio session that the stream belongs to.
IConnector The IConnector interface represents a point of connection
between components.
T IT L E DESC RIP T IO N
IControlChangeNotify The IControlChangeNotify interface provides notifications
when the status of a part (connector or subunit) changes.
IControlInterface The IControlInterface interface represents a control interface
on a part (connector or subunit) in a device topology. The
client obtains a reference to a part's IControlInterface
interface by calling the IPart::GetControlInterface method.
IDeviceSpecificProperty The IDeviceSpecificProperty interface provides access to the
control value of a device-specific hardware control.
IDeviceTopology The IDeviceTopology interface provides access to the topology
of an audio device.
IHardwareAudioEngineBase The IHardwareAudioEngineBase interface is implemented by
audio endpoints for the audio stack to use to configure and
retrieve information about the hardware audio engine.
IKsFormatSupport The IKsFormatSupport interface provides information about
the audio data formats that are supported by a software-
configured I/O connection (typically a DMA channel) between
an audio adapter device and system memory.
IKsJackDescription The IKsJackDescription interface provides information about
the jacks or internal connectors that provide a physical
connection between a device on an audio adapter and an
external or internal endpoint device (for example, a
microphone or CD player).
IKsJackDescription2 The IKsJackDescription2 interface provides information about
the jacks or internal connectors that provide a physical
connection between a device on an audio adapter and an
external or internal endpoint device (for example, a
microphone or CD player).
IKsJackSinkInformation The IKsJackSinkInformation interface provides access to jack
sink information if the jack is supported by the hardware.
IMMDevice The IMMDevice interface encapsulates the generic features of
a multimedia device resource.
IMMDeviceCollection The IMMDeviceCollection interface represents a collection of
multimedia device resources.
IMMDeviceEnumerator The IMMDeviceEnumerator interface provides methods for
enumerating multimedia device resources.
IMMEndpoint The IMMEndpoint interface represents an audio endpoint
device.
IMMNotificationClient The IMMNotificationClient interface provides notifications
when an audio endpoint device is added or removed, when
the state or properties of an endpoint device change, or when
there is a change in the default role assigned to an endpoint
device.
T IT L E DESC RIP T IO N
IPart The IPart interface represents a part (connector or subunit) of
a device topology.
IPartsList The IPartsList interface represents a list of parts, each of
which is an object with an IPart interface that represents a
connector or subunit.
IPerChannelDbLevel The IPerChannelDbLevel interface represents a generic
subunit control interface that provides per-channel control
over the volume level, in decibels, of an audio stream or of a
frequency band in an audio stream.
ISimpleAudioVolume The ISimpleAudioVolume interface enables a client to control
the master volume level of an audio session.
ISpatialAudioClient The ISpatialAudioClient interface enables a client to create
audio streams that emit audio from a position in 3D space.
ISpatialAudioMetadataClient Provides a class factory for creating
ISpatialAudioMetadataItems, ISpatialAudioMetadataWriter,
ISpatialAudioMetadataReader, and
ISpatialAudioMetadataCopier objects.
ISpatialAudioMetadataCopier Provides methods for copying all or subsets of metadata
items from a source SpatialAudioMetadataItems into a
destination SpatialAudioMetadataItems.
ISpatialAudioMetadataItems Represents a buffer of spatial audio metadata items.
ISpatialAudioMetadataItemsBuffer Provides methods for attaching buffers to
SpatialAudioMetadataItems for in-place storage of data.
ISpatialAudioMetadataReader Provides methods for extracting spatial audio metadata items
and item command value pairs from an
ISpatialAudioMetadataItems object.
ISpatialAudioMetadataWriter Provides methods for storing spatial audio metadata items
positioned within a range of corresponding audio frames.
ISpatialAudioObject Represents an object that provides audio data to be rendered
from a position in 3D space, relative to the user.
ISpatialAudioObjectBase Base interface that represents an object that provides audio
data to be rendered from a position in 3D space, relative to
the user.
ISpatialAudioObjectForHrtf Represents an object that provides audio data to be rendered
from a position in 3D space, relative to the user, a head-
relative transfer function (HRTF).
ISpatialAudioObjectForMetadataCommands Used to write metadata commands for spatial audio.
ISpatialAudioObjectForMetadataItems Used to write spatial audio metadata for applications that
require multiple metadata items per buffer with frame-
accurate placement.
T IT L E DESC RIP T IO N
ISpatialAudioObjectRenderStream Provides methods for controlling a spatial audio object render
stream, including starting, stopping, and resetting the stream.
ISpatialAudioObjectRenderStreamBase Base interface that provides methods for controlling a spatial
audio object render stream, including starting, stopping, and
resetting the stream.
ISpatialAudioObjectRenderStreamForHrtf Provides methods for controlling an Hrtf spatial audio object
render stream, including starting, stopping, and resetting the
stream.
ISpatialAudioObjectRenderStreamForMetadata Provides methods for controlling a spatial audio object render
stream for metadata, including starting, stopping, and
resetting the stream.
ISpatialAudioObjectRenderStreamNotify Provides notifications for spatial audio clients to respond to
changes in the state of an ISpatialAudioObjectRenderStream.
ISubunit The ISubunit interface represents a hardware subunit (for
example, a volume control) that lies in the data path between
a client and an audio endpoint device.
Structures
T IT L E DESC RIP T IO N
AUDIO_VOLUME_NOTIFICATION_DATA The AUDIO_VOLUME_NOTIFICATION_DATA structure
describes a change in the volume level or muting state of an
audio endpoint device.
AudioExtensionParams This structure is passed to the Control Panel Endpoint
Extension property page through
IShellPropSheetExt::AddPages and is used to create endpoint
PropertyPages.
DIRECTX_AUDIO_ACTIVATION_PARAMS The DIRECTX_AUDIO_ACTIVATION_PARAMS structure
specifies the initialization parameters for a DirectSound
stream.
KSJACK_DESCRIPTION The KSJACK_DESCRIPTION structure describes an audio jack.
KSJACK_DESCRIPTION2 The KSJACK_DESCRIPTION2 structure describes an audio
jack.To get the description of an audio jack of a connector, call
IKsJackDescription2::GetJackDescription2.
KSJACK_SINK_INFORMATION The KSJACK_SINK_INFORMATION structure stores
information about an audio jack sink.
T IT L E DESC RIP T IO N
LUID The LUID structure stores the video port identifier. This
structure is stored in the PortId member of the
KSJACK_SINK_INFORMATION structure.
SpatialAudioClientActivationParams Represents optional activation parameters for a spatial audio
render stream. Pass this structure to
ActivateAudioInterfaceAsync when activating an
ISpatialAudioClient interface.
SpatialAudioHrtfActivationParams Specifies the activation parameters for an
ISpatialAudioRenderStreamForHrtf.
SpatialAudioHrtfDirectivity Represents an omnidirectional model for an
ISpatialAudioObjectForHrtf. The omnidirectional emission is
interpolated linearly with the directivity model specified in the
Type field based on the value of the Scaling field.
SpatialAudioHrtfDirectivityCardioid Represents a cardioid-shaped directivity model for an
ISpatialAudioObjectForHrtf.
SpatialAudioHrtfDirectivityCone Represents a cone-shaped directivity model for an
ISpatialAudioObjectForHrtf.
SpatialAudioHrtfDirectivityUnion Defines a spatial audio directivity model for an
ISpatialAudioObjectForHrtf.
SpatialAudioHrtfDistanceDecay Represents the decay model that is applied over distance from
the position of an ISpatialAudioObjectForHrtf to the position
of the listener.
SpatialAudioMetadataItemsInfo Provides information about an ISpatialAudioMetadataItems
object. Get a copy of this structure by calling GetInfo.
SpatialAudioObjectRenderStreamActivationParams Represents activation parameters for a spatial audio render
stream. Pass this structure to
ISpatialAudioClient::ActivateSpatialAudioStream when
activating a stream.
SpatialAudioObjectRenderStreamForMetadataActivationParam Represents activation parameters for a spatial audio render
s stream for metadata. Pass this structure to
ISpatialAudioClient::ActivateSpatialAudioStream when
activating a stream.
Data Access and Storage
2/7/2020 • 2 minutes to read • Edit Online
Overview of the Data Access and Storage technology.
To develop Data Access and Storage, you need these headers:
clfs.h
clfsmgmt.h
clfsmgmtw32.h
clfsw32.h
dskquota.h
fileapi.h
ktmtypes.h
ktmw32.h
lmshare.h
lmstats.h
lzexpand.h
ntmsapi.h
ntmsmli.h
txfw32.h
winefs.h
wofapi.h
wow64apiset.h
For programming guidance for this technology, see:
Removable Storage Manager
Common Log File System
Local File Systems
Kernel Transaction Manager
Network Share Management
Data Deduplication API
2/7/2020 • 2 minutes to read • Edit Online
Overview of the Data Deduplication API technology.
To develop Data Deduplication API, you need these headers:
ddpbackup.h
For programming guidance for this technology, see:
Data Deduplication API
Enumerations
T IT L E DESC RIP T IO N
DEDUP_BACKUP_SUPPORT_PARAM_TYPE Indicates whether Data Deduplication should perform an
unoptimized or optimized restore.
Functions
T IT L E DESC RIP T IO N
OrderContainersRestore This method provides the application with the ability to
influence the order of the pending reads that are required to
retrieve the target file.
PreviewContainerRead Provides the application with a preview of the sequence of
reads that are pending for a given container file extent.
ReadBackupFile Reads data from a Data Deduplication store metadata or
container file located in the backup store.
RestoreFiles Reconstructs a set of files from a backup store that contains
the fully optimized version of the files (reparse points) and the
Data Deduplication store.
Interfaces
T IT L E DESC RIP T IO N
IDedupBackupSupport Provides a method for restoring a file from a backup store
containing copies of Data Deduplication reparse points,
metadata, and container files.
IDedupReadFileCallback A callback interface, implemented by backup applications, that
enables Data Deduplication to read content from metadata
and container files residing in a backup store and optionally
improve restore efficiency.
Structures
T IT L E DESC RIP T IO N
DDP_FILE_EXTENT DDP_FILE_EXTENT represents the extent of data in a file that is
to be read in a pending call to ReadBackupFile.
DEDUP_CONTAINER_EXTENT A logical container file may be stored in a single segment or
multiple segments in the backup store.
Data Exchange
2/7/2020 • 9 minutes to read • Edit Online
Overview of the Data Exchange technology.
To develop Data Exchange, you need these headers:
dde.h
ddeml.h
wingdi.h
For programming guidance for this technology, see:
Data Exchange
Functions
T IT L E DESC RIP T IO N
AddAtomA Adds a character string to the local atom table and returns a
unique value (an atom) identifying the string.
AddAtomW Adds a character string to the local atom table and returns a
unique value (an atom) identifying the string.
AddClipboardFormatListener Places the given window in the system-maintained clipboard
format listener list.
ChangeClipboardChain Removes a specified window from the chain of clipboard
viewers.
CloseClipboard Closes the clipboard.
CountClipboardFormats Retrieves the number of different data formats currently on
the clipboard.
DdeAbandonTransaction Abandons the specified asynchronous transaction and releases
all resources associated with the transaction.
DdeAccessData Provides access to the data in the specified Dynamic Data
Exchange (DDE) object. An application must call the
DdeUnaccessData function when it has finished accessing the
data in the object.
DdeAddData Adds data to the specified Dynamic Data Exchange (DDE)
object.
DdeClientTransaction Begins a data transaction between a client and a server. Only a
Dynamic Data Exchange (DDE) client application can call this
function, and the application can use it only after establishing
a conversation with the server.
T IT L E DESC RIP T IO N
DdeCmpStringHandles Compares the values of two string handles. The value of a
string handle is not related to the case of the associated
string.
DdeConnect Establishes a conversation with a server application that
supports the specified service name and topic name pair. If
more than one such server exists, the system selects only one.
DdeConnectList Establishes a conversation with all server applications that
support the specified service name and topic name pair.
DdeCreateDataHandle Creates a Dynamic Data Exchange (DDE) object and fills the
object with data from the specified buffer. A DDE application
uses this function during transactions that involve passing
data to the partner application.
DdeCreateStringHandleA Creates a handle that identifies the specified string. A Dynamic
Data Exchange (DDE) client or server application can pass the
string handle as a parameter to other Dynamic Data Exchange
Management Library (DDEML) functions.
DdeCreateStringHandleW Creates a handle that identifies the specified string. A Dynamic
Data Exchange (DDE) client or server application can pass the
string handle as a parameter to other Dynamic Data Exchange
Management Library (DDEML) functions.
DdeDisconnect Terminates a conversation started by either the DdeConnect
or DdeConnectList function and invalidates the specified
conversation handle.
DdeDisconnectList Destroys the specified conversation list and terminates all
conversations associated with the list.
DdeEnableCallback Enables or disables transactions for a specific conversation or
for all conversations currently established by the calling
application.
DdeFreeDataHandle Frees a Dynamic Data Exchange (DDE) object and deletes the
data handle associated with the object.
DdeFreeStringHandle Frees a string handle in the calling application.
DdeGetData Copies data from the specified Dynamic Data Exchange (DDE)
object to the specified local buffer.
DdeGetLastError Retrieves the most recent error code set by the failure of a
Dynamic Data Exchange Management Library (DDEML)
function and resets the error code to DMLERR_NO_ERROR.
DdeImpersonateClient Impersonates a Dynamic Data Exchange (DDE) client
application in a DDE client conversation.
T IT L E DESC RIP T IO N
DdeInitializeA Registers an application with the Dynamic Data Exchange
Management Library (DDEML). An application must call this
function before calling any other Dynamic Data Exchange
Management Library (DDEML) function.
DdeInitializeW Registers an application with the Dynamic Data Exchange
Management Library (DDEML). An application must call this
function before calling any other Dynamic Data Exchange
Management Library (DDEML) function.
DdeKeepStringHandle Increments the usage count associated with the specified
handle.
DdeNameService Registers or unregisters the service names a Dynamic Data
Exchange (DDE) server supports.
DdePostAdvise Causes the system to send an XTYP_ADVREQ transaction to
the calling (server) application's Dynamic Data Exchange (DDE)
callback function for each client with an active advise loop on
the specified topic and item.
DdeQueryConvInfo Retrieves information about a Dynamic Data Exchange (DDE)
transaction and about the conversation in which the
transaction takes place.
DdeQueryNextServer Retrieves the next conversation handle in the specified
conversation list.
DdeQueryStringA Copies text associated with a string handle into a buffer.
DdeQueryStringW Copies text associated with a string handle into a buffer.
DdeReconnect Enables a client Dynamic Data Exchange Management Library
(DDEML) application to attempt to reestablish a conversation
with a service that has terminated a conversation with the
client.
DdeSetQualityOfService Specifies the quality of service (QOS) a raw Dynamic Data
Exchange (DDE) application desires for future DDE
conversations it initiates.
DdeSetUserHandle Associates an application-defined value with a conversation
handle or a transaction identifier. This is useful for simplifying
the processing of asynchronous transactions. An application
can use the DdeQueryConvInfo function to retrieve this value.
DdeUnaccessData Unaccesses a Dynamic Data Exchange (DDE) object. An
application must call this function after it has finished
accessing the object.
DdeUninitialize Frees all Dynamic Data Exchange Management Library
(DDEML) resources associated with the calling application.
T IT L E DESC RIP T IO N
DeleteAtom Decrements the reference count of a local string atom. If the
atom's reference count is reduced to zero, DeleteAtom
removes the string associated with the atom from the local
atom table.
EmptyClipboard Empties the clipboard and frees handles to data in the
clipboard. The function then assigns ownership of the
clipboard to the window that currently has the clipboard open.
EnumClipboardFormats Enumerates the data formats currently available on the
clipboard.
FindAtomA Searches the local atom table for the specified character string
and retrieves the atom associated with that string.
FindAtomW Searches the local atom table for the specified character string
and retrieves the atom associated with that string.
FreeDDElParam Frees the memory specified by the lParam parameter of a
posted Dynamic Data Exchange (DDE) message. An
application receiving a posted DDE message should call this
function after it has used the UnpackDDElParam function to
unpack the lParam value.
GetAtomNameA Retrieves a copy of the character string associated with the
specified local atom.
GetAtomNameW Retrieves a copy of the character string associated with the
specified local atom.
GetClipboardData Retrieves data from the clipboard in a specified format. The
clipboard must have been opened previously.
GetClipboardFormatNameA Retrieves from the clipboard the name of the specified
registered format. The function copies the name to the
specified buffer.
GetClipboardFormatNameW Retrieves from the clipboard the name of the specified
registered format. The function copies the name to the
specified buffer.
GetClipboardOwner Retrieves the window handle of the current owner of the
clipboard.
GetClipboardSequenceNumber Retrieves the clipboard sequence number for the current
window station.
GetClipboardViewer Retrieves the handle to the first window in the clipboard
viewer chain.
GetOpenClipboardWindow Retrieves the handle to the window that currently has the
clipboard open.
GetPriorityClipboardFormat Retrieves the first available clipboard format in the specified
list.
T IT L E DESC RIP T IO N
GetUpdatedClipboardFormats Retrieves the currently supported clipboard formats.
GlobalAddAtomA Adds a character string to the global atom table and returns a
unique value (an atom) identifying the string.
GlobalAddAtomExA Adds a character string to the global atom table and returns a
unique value (an atom) identifying the string.
GlobalAddAtomExW Adds a character string to the global atom table and returns a
unique value (an atom) identifying the string.
GlobalAddAtomW Adds a character string to the global atom table and returns a
unique value (an atom) identifying the string.
GlobalDeleteAtom Decrements the reference count of a global string atom. If the
atom's reference count reaches zero, GlobalDeleteAtom
removes the string associated with the atom from the global
atom table.
GlobalFindAtomA Searches the global atom table for the specified character
string and retrieves the global atom associated with that
string.
GlobalFindAtomW Searches the global atom table for the specified character
string and retrieves the global atom associated with that
string.
GlobalGetAtomNameA Retrieves a copy of the character string associated with the
specified global atom.
GlobalGetAtomNameW Retrieves a copy of the character string associated with the
specified global atom.
ImpersonateDdeClientWindow Enables a Dynamic Data Exchange (DDE) server application to
impersonate a DDE client application's security context. This
protects secure server data from unauthorized DDE clients.
InitAtomTable Initializes the local atom table and sets the number of hash
buckets to the specified size.
IsClipboardFormatAvailable Determines whether the clipboard contains data in the
specified format.
MAKEINTATOM Converts the specified atom into a string, so it can be passed
to functions which accept either atoms or strings.
OpenClipboard Opens the clipboard for examination and prevents other
applications from modifying the clipboard content.
T IT L E DESC RIP T IO N
PackDDElParam Packs a Dynamic Data Exchange (DDE) lParam value into an
internal structure used for sharing DDE data between
processes.
PFNCALLBACK An application-defined callback function used with the
Dynamic Data Exchange Management Library (DDEML)
functions.
RegisterClipboardFormatA Registers a new clipboard format. This format can then be
used as a valid clipboard format.
RegisterClipboardFormatW Registers a new clipboard format. This format can then be
used as a valid clipboard format.
RemoveClipboardFormatListener Removes the given window from the system-maintained
clipboard format listener list.
ReuseDDElParam Enables an application to reuse a packed Dynamic Data
Exchange (DDE) lParam parameter, rather than allocating a
new packed lParam. Using this function reduces reallocations
for applications that pass packed DDE messages.
SetClipboardData Places data on the clipboard in a specified clipboard format.
SetClipboardViewer Adds the specified window to the chain of clipboard viewers.
Clipboard viewer windows receive a WM_DRAWCLIPBOARD
message whenever the content of the clipboard changes. This
function is used for backward compatibility with earlier
versions of Windows.
UnpackDDElParam Unpacks a Dynamic Data Exchange (DDE)lParam value
received from a posted DDE message.
Structures
T IT L E DESC RIP T IO N
CONVCONTEXT Contains information supplied by a Dynamic Data Exchange
(DDE) client application. The information is useful for
specialized or cross-language DDE conversations.
CONVINFO Contains information about a Dynamic Data Exchange (DDE)
conversation.
COPYDATASTRUCT Contains data to be passed to another application by the
WM_COPYDATA message.
DDEACK Contains status flags that a DDE application passes to its
partner as part of the WM_DDE_ACK message.
DDEADVISE Contains flags that specify how a DDE server application
should send data to a client application during an advise loop.
A client passes a handle to a DDEADVISE structure to a server
as part of a WM_DDE_ADVISE message.
T IT L E DESC RIP T IO N
DDEDATA Contains the data, and information about the data, sent as
part of a WM_DDE_DATA message.
DDEML_MSG_HOOK_DATA Contains information about a Dynamic Data Exchange (DDE)
message, and provides read access to the data referenced by
the message. This structure is intended to be used by a
Dynamic Data Exchange Management Library (DDEML)
monitoring application.
DDEPOKE Contains the data, and information about the data, sent as
part of a WM_DDE_POKE message.
HSZPAIR Contains a DDE service name and topic name. A DDE server
application can use this structure during an
XTYP_WILDCONNECT transaction to enumerate the service-
topic pairs that it supports.
METAFILEPICT Defines the metafile picture format used for exchanging
metafile data through the clipboard.
MONCBSTRUCT Contains information about the current Dynamic Data
Exchange (DDE) transaction. A DDE debugging application can
use this structure when monitoring transactions that the
system passes to the DDE callback functions of other
applications.
MONCONVSTRUCT Contains information about a Dynamic Data Exchange (DDE)
conversation. A DDE monitoring application can use this
structure to obtain information about a conversation that has
been established or has terminated.
MONERRSTRUCT Contains information about the current Dynamic Data
Exchange (DDE) error. A DDE monitoring application can use
this structure to monitor errors returned by DDE
Management Library functions.
MONHSZSTRUCTA Contains information about a Dynamic Data Exchange (DDE)
string handle. A DDE monitoring application can use this
structure when monitoring the activity of the string manager
component of the DDE Management Library.
MONHSZSTRUCTW Contains information about a Dynamic Data Exchange (DDE)
string handle. A DDE monitoring application can use this
structure when monitoring the activity of the string manager
component of the DDE Management Library.
MONLINKSTRUCT Contains information about a Dynamic Data Exchange (DDE)
advise loop. A DDE monitoring application can use this
structure to obtain information about an advise loop that has
started or ended.
MONMSGSTRUCT Contains information about a Dynamic Data Exchange (DDE)
message. A DDE monitoring application can use this structure
to obtain information about a DDE message that was sent or
posted.
Debugging and authoring support
2/7/2020 • 2 minutes to read • Edit Online
Overview of the Debugging and authoring support technology.
To develop Debugging and authoring support, you need these headers:
webapplication.h
For programming guidance for this technology, see:
Debugging and authoring support
Desktop Window Manager (DWM)
2/7/2020 • 3 minutes to read • Edit Online
Overview of the Desktop Window Manager (DWM) technology.
To develop Desktop Window Manager (DWM), you need these headers:
dwmapi.h
For programming guidance for this technology, see:
Desktop Window Manager (DWM)
Enumerations
T IT L E DESC RIP T IO N
DWM_SOURCE_FRAME_SAMPLING Flags used by the DwmSetPresentParameters function to
specify the frame sampling type.
DWM_TAB_WINDOW_REQUIREMENTS Returned by DwmGetUnmetTabRequirements to indicate the
requirements needed for a window to put tabs in the
application title bar.
DWMFLIP3DWINDOWPOLICY Flags used by the DwmSetWindowAttribute function to specify
the Flip3D window policy.
DWMNCRENDERINGPOLICY Flags used by the DwmSetWindowAttribute function to specify
the non-client area rendering policy.
DWMTRANSITION_OWNEDWINDOW_TARGET Identifies the target.
DWMWINDOWATTRIBUTE Flags used by the DwmGetWindowAttribute and
DwmSetWindowAttribute functions to specify window
attributes for Desktop Window Manager (DWM) non-client
rendering.
GESTURE_TYPE Identifies the gesture type specified in DwmRenderGesture.
Functions
T IT L E DESC RIP T IO N
DwmAttachMilContent This function is not implemented.
DwmDefWindowProc Default window procedure for Desktop Window Manager
(DWM) hit testing within the non-client area.
DwmDetachMilContent This function is not implemented.
DwmEnableBlurBehindWindow Enables the blur effect on a specified window.
T IT L E DESC RIP T IO N
DwmEnableComposition Enables or disables Desktop Window Manager (DWM)
composition.
DwmEnableMMCSS Notifies the Desktop Window Manager (DWM) to opt in to or
out of Multimedia Class Schedule Service (MMCSS) scheduling
while the calling process is alive.
DwmExtendFrameIntoClientArea Extends the window frame into the client area.
DwmFlush Issues a flush call that blocks the caller until the next present,
when all of the Microsoft DirectX surface updates that are
currently outstanding have been made. This compensates for
very complex scenes or calling processes with very low priority.
DwmGetColorizationColor Retrieves the current color used for Desktop Window Manager
(DWM) glass composition.
DwmGetCompositionTimingInfo Retrieves the current composition timing information for a
specified window.
DwmGetGraphicsStreamClient This function is not implemented.
DwmGetGraphicsStreamTransformHint This function is not implemented.
DwmGetTransportAttributes Retrieves transport attributes.
DwmGetUnmetTabRequirements Note This function is publically available, but nonfunctional,
for Windows 10, version 1803.Checks the requirements
needed to get tabs in the application title bar for the specified
window.
DwmGetWindowAttribute Retrieves the current value of a specified Desktop Window
Manager (DWM) attribute applied to a window.
DwmInvalidateIconicBitmaps Called by an application to indicate that all previously provided
iconic bitmaps from a window, both thumbnails and peek
representations, should be refreshed.
DwmIsCompositionEnabled Obtains a value that indicates whether Desktop Window
Manager (DWM) composition is enabled. Applications on
machines running Windows 7 or earlier can listen for
composition state changes by handling the
WM_DWMCOMPOSITIONCHANGED notification.
DwmModifyPreviousDxFrameDuration Changes the number of monitor refreshes through which the
previous frame will be displayed.
DwmModifyPreviousDxFrameDuration is no longer supported.
Starting with Windows 8.1, calls to
DwmModifyPreviousDxFrameDuration always return
E_NOTIMPL.
DwmQueryThumbnailSourceSize Retrieves the source size of the Desktop Window Manager
(DWM) thumbnail.
T IT L E DESC RIP T IO N
DwmRegisterThumbnail Creates a Desktop Window Manager (DWM) thumbnail
relationship between the destination and source windows.
DwmRenderGesture Notifies Desktop Window Manager (DWM) that a touch
contact has been recognized as a gesture, and that DWM
should draw feedback for that gesture.
DwmSetDxFrameDuration Sets the number of monitor refreshes through which to
display the presented frame. DwmSetDxFrameDuration is no
longer supported. Starting with Windows 8.1, calls to
DwmSetDxFrameDuration always return E_NOTIMPL.
DwmSetIconicLivePreviewBitmap Sets a static, iconic bitmap to display a live preview (also
known as a Peek preview) of a window or tab. The taskbar can
use this bitmap to show a full-sized preview of a window or
tab.
DwmSetIconicThumbnail Sets a static, iconic bitmap on a window or tab to use as a
thumbnail representation. The taskbar can use this bitmap as
a thumbnail switch target for the window or tab.
DwmSetPresentParameters Sets the present parameters for frame composition.
DwmSetPresentParameters is no longer supported. Starting
with Windows 8.1, calls to DwmSetPresentParameters always
return E_NOTIMPL.
DwmSetWindowAttribute Sets the value of Desktop Window Manager (DWM) non-client
rendering attributes for a window.
DwmShowContact Called by an app or framework to specify the visual feedback
type to draw in response to a particular touch or pen contact.
DwmTetherContact Enables the graphical feedback of touch and drag interactions
to the user.
DwmTransitionOwnedWindow Coordinates the animations of tool windows with the Desktop
Window Manager (DWM).
DwmUnregisterThumbnail Removes a Desktop Window Manager (DWM) thumbnail
relationship created by the DwmRegisterThumbnail function.
DwmUpdateThumbnailProperties Updates the properties for a Desktop Window Manager
(DWM) thumbnail.
Structures
T IT L E DESC RIP T IO N
DWM_BLURBEHIND Specifies Desktop Window Manager (DWM) blur-behind
properties. Used by the DwmEnableBlurBehindWindow
function.
T IT L E DESC RIP T IO N
DWM_PRESENT_PARAMETERS Specifies Desktop Window Manager (DWM) video frame
parameters for frame composition. Used by the
DwmSetPresentParameters function.
DWM_THUMBNAIL_PROPERTIES Specifies Desktop Window Manager (DWM) thumbnail
properties. Used by the DwmUpdateThumbnailProperties
function.
DWM_TIMING_INFO Specifies Desktop Window Manager (DWM) composition
timing information. Used by the
DwmGetCompositionTimingInfo function.
MilMatrix3x2D Specifies a 3x2 matrix that describes a transform.
UNSIGNED_RATIO Defines a data type used by the Desktop Window Manager
(DWM) APIs. It represents a generic ratio and is used for
different purposes and units even within a single API.
Developer licensing
2/7/2020 • 2 minutes to read • Edit Online
Overview of the Developer licensing technology.
To develop Developer licensing, you need these headers:
wsdevlicensing.h
For programming guidance for this technology, see:
Developer licensing
Functions
T IT L E DESC RIP T IO N
AcquireDeveloperLicense Acquires a developer license.
CheckDeveloperLicense Checks to see if a developer license exists.
RemoveDeveloperLicense Removes a developer license.
Developer Notes
2/7/2020 • 2 minutes to read • Edit Online
Overview of the Developer Notes technology.
To develop Developer Notes, you need these headers:
advpub.h
apiquery2.h
appcompatapi.h
aux_ulib.h
avrfsdk.h
camerauicontrol.h
capi.h
comppkgsup.h
dciman.h
ddrawgdi.h
editionupgradehelper.h
exdisp.h
exposeenums2managed.h
fci.h
fdi.h
fdi_fci_types.h
featurestagingapi.h
fhcfg.h
fhsvcctl.h
filehc.h
icwcfg.h
ime.h
isolatedapplauncher.h
iwscapi.h
lmaccess.h
loadperf.h
msxml.h
ntsecpkg.h
rpcndr.h
rtlsupportapi.h
stralign.h
tcpioctl.h
tdiinfo.h
vdmdbg.h
wininet.h
winnls32.h
winreg.h
wscapi.h
For programming guidance for this technology, see:
Developer Notes
Using the Windows Headers
Functions
T IT L E DESC RIP T IO N
Int32x32To64 Multiplies two signed 32-bit integers, returning a signed 64-
bit integer result.
Int64ShllMod32 Performs a left logical shift operation on an unsigned 64-bit
integer value. The function provides improved shifting code
for left logical shifts where the shift count is in the range 0-
31.
Int64ShraMod32 Performs a right arithmetic shift operation on a signed 64-
bit integer value. The function provides improved shifting
code for right arithmetic shifts where the shift count is in the
range 0-31.
Int64ShrlMod32 Performs a right logical shift operation on an unsigned 64-
bit integer value. The function provides improved shifting
code for right logical shifts where the shift count is in the
range 0-31.
MulDiv Multiplies two 32-bit values and then divides the 64-bit
result by a third 32-bit value.
Multiply128 Multiplies two 64-bit integers to produce a 128-bit integer.
MultiplyExtract128 Multiplies two 64-bit integers to produce a 128-bit integer,
shifts the product to the right by the specified number of
bits, and returns the low 64 bits of the result.
MultiplyHigh Multiplies two 64-bit integers to produce a 128-bit integer
and gets the high 64 bits.
PopulationCount64 Counts the number of one bits (population count) in a 64-
bit unsigned integer.
ShiftLeft128 Shifts 128-bit left.
ShiftRight128 Shifts 128-bit right.
UInt32x32To64 Multiplies two unsigned 32-bit integers, returning an
unsigned 64-bit integer result.
UnsignedMultiply128 Multiplies two unsigned 64-bit integers to produce an
unsigned 128-bit integer.
UnsignedMultiplyExtract128 Multiplies two unsigned 64-bit integers to produce an
unsigned 128-bit integer, shifts the product to the right by
the specified number of bits, and returns the low 64 bits of
the result.
T IT L E DESC RIP T IO N
UnsignedMultiplyHigh Multiplies two 64-bit integers to produce a 128-bit integer
and gets the high unsigned 64 bits.
Device Access API
2/7/2020 • 2 minutes to read • Edit Online
Overview of the Device Access API technology.
To develop Device Access API, you need these headers:
deviceaccess.h
For programming guidance for this technology, see:
Device Access API
Functions
T IT L E DESC RIP T IO N
Cancel The Cancel method attempts to cancel an asynchronous
operation that is in progress.
CancelOperation The CancelOperation method attempts to cancel a previously
issued call by using the DeviceIoControlAsync method.
Close The Close method performs cleanup after the asynchronous
operation is completed and you retrieve the results.
CreateDeviceAccessInstance Creates the object that's used to access a device. The
instantiated object implements the IDeviceIoControl and
ICreateDeviceAccessAsync interfaces.
DeviceIoControlAsync The DeviceIoControlAsync method sends an asynchronous
device input/output (I/O) control request to the device
interface that the call to the CreateDeviceAccessInstance
function specified.
DeviceIoControlSync The DeviceIoControlSync method sends a synchronous device
input/output (I/O) control request to the device interface that
the call to the CreateDeviceAccessInstance function specified.
GetResult Retrieves an IDeviceIoControl object that's bound to the
device interface that's specified in a call to the
CreateDeviceAccessInstance function.
RequestCompletion Implement the RequestCompletion method to handle the
completion of calls to the DeviceIoControlAsyncmethod.
Wait The Wait method waits a specified length of time for an
asynchronous bind operation that is in progress to finish.
Interfaces
T IT L E DESC RIP T IO N
ICreateDeviceAccessAsync The ICreateDeviceAccessAsync interface is returned from a call
to CreateDeviceAccessInstance.
IDeviceIoControl Sends a control code to a device driver.This action causes the
device to perform the corresponding operation.
IDeviceRequestCompletionCallback Provides a method to handle the completion of calls to the
DeviceIoControlAsyncmethod.
Device and Driver Installation Reference
2/7/2020 • 36 minutes to read • Edit Online
Overview of the Device and Driver Installation Reference technology.
To develop Device and Driver Installation Reference, you need these headers:
cfg.h
cfgmgr32.h
newdev.h
For programming guidance for this technology, see:
Device and Driver Installation Reference
Enumerations
T IT L E DESC RIP T IO N
CM_NOTIFY_ACTION This enumeration identifies Plug and Play device event types.
PNP_VETO_TYPE If the PnP manager rejects a request to perform an operation,
the PNP_VETO_TYPE enumeration is used to identify the
reason for the rejection.
Functions
T IT L E DESC RIP T IO N
CM_Add_Empty_Log_Conf The CM_Add_Empty_Log_Conf function creates an empty
logical configuration, for a specified configuration type and a
specified device instance, on the local machine.
CM_Add_Empty_Log_Conf_Ex The CM_Add_Empty_Log_Conf_Ex function creates an empty
logical configuration, for a specified configuration type and a
specified device instance, on either the local or a remote
machine.
CM_Add_ID_ExW The CM_Add_ID_Ex function appends a device ID (if not
already present) to a device instance's hardware ID list or
compatible ID list, on either the local or a remote machine.
CM_Add_IDW The CM_Add_ID function appends a specified device ID (if not
already present) to a device instance's hardware ID list or
compatible ID list.
CM_Add_Res_Des The CM_Add_Res_Des function adds a resource descriptor to a
logical configuration.
CM_Add_Res_Des_Ex The CM_Add_Res_Des_Ex function adds a resource descriptor
to a logical configuration. The logical configuration can be on
either the local or a remote machine.
T IT L E DESC RIP T IO N
CM_Connect_MachineW The CM_Connect_Machine function creates a connection to a
remote machine.
CM_Delete_Class_Key The CM_Delete_Class_Key function removes the specified
installed device class from the system.
CM_Delete_Device_Interface_Key_ExA The CM_Delete_Device_Interface_Key_ExA function deletes the
registry subkey that is used by applications and drivers to
store interface-specific information.
CM_Delete_Device_Interface_Key_ExW The CM_Delete_Device_Interface_Key_ExW function deletes the
registry subkey that is used by applications and drivers to
store interface-specific information.
CM_Delete_Device_Interface_KeyW The CM_Delete_Device_Interface_Key function deletes the
registry subkey that is used by applications and drivers to
store interface-specific information.
CM_Delete_DevNode_Key The CM_Delete_DevNode_Key function deletes the specified
user-accessible registry keys that are associated with a device.
CM_Disable_DevNode The CM_Disable_DevNode function disables a device.
CM_Disconnect_Machine The CM_Disconnect_Machine function removes a connection
to a remote machine.
CM_Enable_DevNode The CM_Enable_DevNode function enables a device.
CM_Enumerate_Classes The CM_Enumerate_Classes function, when called repeatedly,
enumerates the local machine's installed device classes by
supplying each class's GUID.
CM_Enumerate_Classes_Ex The CM_Enumerate_Classes_Ex function, when called
repeatedly, enumerates a local or a remote machine's installed
device classes, by supplying each class's GUID.
CM_Enumerate_Enumerators_ExW The CM_Enumerate_Enumerators_Ex function enumerates a
local or a remote machine's device enumerators, by supplying
each enumerator's name.
CM_Enumerate_EnumeratorsW The CM_Enumerate_Enumerators function enumerates the
local machine's device enumerators by supplying each
enumerator's name.
CM_Free_Log_Conf The CM_Free_Log_Conf function removes a logical
configuration and all associated resource descriptors from the
local machine.
CM_Free_Log_Conf_Ex The CM_Free_Log_Conf_Ex function removes a logical
configuration and all associated resource descriptors from
either a local or a remote machine.
CM_Free_Log_Conf_Handle The CM_Free_Log_Conf_Handle function invalidates a logical
configuration handle and frees its associated memory
allocation.
T IT L E DESC RIP T IO N
CM_Free_Res_Des The CM_Free_Res_Des function removes a resource descriptor
from a logical configuration on the local machine.
CM_Free_Res_Des_Ex The CM_Free_Res_Des_Ex function removes a resource
descriptor from a logical configuration on either a local or a
remote machine.
CM_Free_Res_Des_Handle The CM_Free_Res_Des_Handle function invalidates a resource
description handle and frees its associated memory allocation.
CM_Free_Resource_Conflict_Handle The CM_Free_Resource_Conflict_Handle function invalidates a
handle to a resource conflict list, and frees the handle's
associated memory allocation.
CM_Get_Child The CM_Get_Child function is used to retrieve a device
instance handle to the first child node of a specified device
node (devnode) in the local machine's device tree.
CM_Get_Child_Ex The CM_Get_Child_Ex function is used to retrieve a device
instance handle to the first child node of a specified device
node (devnode) in a local or a remote machine's device tree.
CM_Get_Class_Property_ExW The CM_Get_Class_Property_ExW function retrieves a device
property that is set for a device interface class or device setup
class.
CM_Get_Class_Property_Keys The CM_Get_Class_Property_Keys function retrieves an array
of the device property keys that represent the device
properties that are set for a device interface class or device
setup class.
CM_Get_Class_Property_Keys_Ex The CM_Get_Class_Property_Keys_Ex function retrieves an
array of the device property keys that represent the device
properties that are set for a device interface class or device
setup class.
CM_Get_Class_PropertyW The CM_Get_Class_Property function retrieves a device
property that is set for a device interface class or device setup
class.
CM_Get_Class_Registry_PropertyW The CM_Get_Class_Registry_Property function retrieves a
device setup class property.
CM_Get_Depth The CM_Get_Depth function is used to obtain the depth of a
specified device node (devnode) within the local machine's
device tree.
CM_Get_Depth_Ex The CM_Get_Depth_Ex function is used to obtain the depth of
a specified device node (devnode) within a local or a remote
machine's device tree.
T IT L E DESC RIP T IO N
CM_Get_Device_ID_ExW The CM_Get_Device_ID_Ex function retrieves the device
instance ID for a specified device instance on a local or a
remote machine.
CM_Get_Device_ID_List_ExW The CM_Get_Device_ID_List_Ex function retrieves a list of
device instance IDs for the device instances on a local or a
remote machine.
CM_Get_Device_ID_List_Size_ExW The CM_Get_Device_ID_List_Size_Ex function retrieves the
buffer size required to hold a list of device instance IDs for a
local or a remote machine's device instances.
CM_Get_Device_ID_List_SizeA The CM_Get_Device_ID_List_Size function retrieves the buffer
size required to hold a list of device instance IDs for the local
machine's device instances.
CM_Get_Device_ID_List_SizeW The CM_Get_Device_ID_List_Size function retrieves the buffer
size required to hold a list of device instance IDs for the local
machine's device instances.
CM_Get_Device_ID_ListA The CM_Get_Device_ID_List function retrieves a list of device
instance IDs for the local computer's device instances.
CM_Get_Device_ID_ListW The CM_Get_Device_ID_List function retrieves a list of device
instance IDs for the local computer's device instances.
CM_Get_Device_ID_Size The CM_Get_Device_ID_Size function retrieves the buffer size
required to hold a device instance ID for a device instance on
the local machine.
CM_Get_Device_ID_Size_Ex The CM_Get_Device_ID_Size_Ex function retrieves the buffer
size required to hold a device instance ID for a device instance
on a local or a remote machine.
CM_Get_Device_IDW The CM_Get_Device_ID function retrieves the device instance
ID for a specified device instance on the local machine.
CM_Get_Device_Interface_AliasW The CM_Get_Device_Interface_Alias function returns the alias
of the specified device interface instance, if the alias exists.
CM_Get_Device_Interface_List_SizeA The CM_Get_Device_Interface_List_Size function retrieves the
buffer size that must be passed to the
CM_Get_Device_Interface_List function.
CM_Get_Device_Interface_List_SizeW The CM_Get_Device_Interface_List_Size function retrieves the
buffer size that must be passed to the
CM_Get_Device_Interface_List function.
CM_Get_Device_Interface_ListA The CM_Get_Device_Interface_List function retrieves a list of
device interface instances that belong to a specified device
interface class.
CM_Get_Device_Interface_ListW The CM_Get_Device_Interface_List function retrieves a list of
device interface instances that belong to a specified device
interface class.
T IT L E DESC RIP T IO N
CM_Get_Device_Interface_Property_ExW The CM_Get_Device_Interface_Property_ExW function retrieves
a device property that is set for a device interface.
CM_Get_Device_Interface_Property_Keys_ExW The CM_Get_Device_Interface_Property_Keys_ExW function
retrieves an array of device property keys that represent the
device properties that are set for a device interface.
CM_Get_Device_Interface_Property_KeysW The CM_Get_Device_Interface_Property_Keys function
retrieves an array of device property keys that represent the
device properties that are set for a device interface.
CM_Get_Device_Interface_PropertyW The CM_Get_Device_Interface_Property function retrieves a
device property that is set for a device interface.
CM_Get_DevNode_Property_ExW The CM_Get_DevNode_Property_ExW function retrieves a
device instance property.
CM_Get_DevNode_Property_Keys The CM_Get_DevNode_Property_Keys function retrieves an
array of the device property keys that represent the device
properties that are set for a device instance.
CM_Get_DevNode_Property_Keys_Ex The CM_Get_DevNode_Property_Keys_Ex function retrieves an
array of the device property keys that represent the device
properties that are set for a device instance.
CM_Get_DevNode_PropertyW The CM_Get_DevNode_Property function retrieves a device
instance property.
CM_Get_DevNode_Registry_PropertyW The CM_Get_DevNode_Registry_Property function retrieves a
specified device property from the registry.
CM_Get_DevNode_Status The CM_Get_DevNode_Status function obtains the status of a
device instance from its device node (devnode) in the local
machine's device tree.
CM_Get_DevNode_Status_Ex The CM_Get_DevNode_Status_Ex function obtains the status
of a device instance from its device node (devnode) on a local
or a remote machine's device tree.
CM_Get_First_Log_Conf The CM_Get_First_Log_Conf function obtains the first logical
configuration, of a specified configuration type, associated with
a specified device instance on the local machine.
CM_Get_First_Log_Conf_Ex The CM_Get_First_Log_Conf_Ex function obtains the first
logical configuration associated with a specified device instance
on a local or a remote machine.
CM_Get_HW_Prof_Flags_ExA The CM_Get_HW_Prof_Flags_Ex function retrieves the
hardware profile-specific configuration flags for a device
instance on a remote machine or a local machine.
CM_Get_HW_Prof_Flags_ExW The CM_Get_HW_Prof_Flags_Ex function retrieves the
hardware profile-specific configuration flags for a device
instance on a remote machine or a local machine.
T IT L E DESC RIP T IO N
CM_Get_HW_Prof_FlagsA The CM_Get_HW_Prof_Flags function retrieves the hardware
profile-specific configuration flags for a device instance on a
local machine.
CM_Get_HW_Prof_FlagsW The CM_Get_HW_Prof_Flags function retrieves the hardware
profile-specific configuration flags for a device instance on a
local machine.
CM_Get_Log_Conf_Priority The CM_Get_Log_Conf_Priority function obtains the
configuration priority of a specified logical configuration on the
local machine.
CM_Get_Log_Conf_Priority_Ex The CM_Get_Log_Conf_Priority_Ex function obtains the
configuration priority of a specified logical configuration on a
local or a remote machine.
CM_Get_Next_Log_Conf The CM_Get_Next_Log_Conf function obtains the next logical
configuration associated with a specific device instance on the
local machine.
CM_Get_Next_Log_Conf_Ex The CM_Get_Next_Log_Conf_Ex function obtains the next
logical configuration associated with a specific device instance
on a local or a remote machine.
CM_Get_Next_Res_Des The CM_Get_Next_Res_Des function obtains a handle to the
next resource descriptor, of a specified resource type, for a
logical configuration on the local machine.
CM_Get_Next_Res_Des_Ex The CM_Get_Next_Res_Des_Ex function obtains a handle to
the next resource descriptor, of a specified resource type, for a
logical configuration on a local or a remote machine.
CM_Get_Parent The CM_Get_Parent function obtains a device instance handle
to the parent node of a specified device node (devnode) in the
local machine's device tree.
CM_Get_Parent_Ex The CM_Get_Parent_Ex function obtains a device instance
handle to the parent node of a specified device node
(devnode) in a local or a remote machine's device tree.
CM_Get_Res_Des_Data The CM_Get_Res_Des_Data function retrieves the information
stored in a resource descriptor on the local machine.
CM_Get_Res_Des_Data_Ex The CM_Get_Res_Des_Data_Ex function retrieves the
information stored in a resource descriptor on a local or a
remote machine.
CM_Get_Res_Des_Data_Size The CM_Get_Res_Des_Data_Size function obtains the buffer
size required to hold the information contained in a specified
resource descriptor on the local machine.
CM_Get_Res_Des_Data_Size_Ex The CM_Get_Res_Des_Data_Size_Ex function obtains the buffer
size required to hold the information contained in a specified
resource descriptor on a local or a remote machine.
T IT L E DESC RIP T IO N
CM_Get_Resource_Conflict_Count The CM_Get_Resource_Conflict_Count function obtains the
number of conflicts contained in a specified resource conflict
list.
CM_Get_Resource_Conflict_DetailsW The CM_Get_Resource_Conflict_Details function obtains the
details about one of the resource conflicts in a conflict list.
CM_Get_Sibling The CM_Get_Sibling function obtains a device instance handle
to the next sibling node of a specified device node (devnode)
in the local machine's device tree.
CM_Get_Sibling_Ex The CM_Get_Sibling_Ex function obtains a device instance
handle to the next sibling node of a specified device node, in a
local or a remote machine's device tree.
CM_Get_Version The CM_Get_Version function returns version 4.0 of the Plug
and Play (PnP) Configuration Manager DLL (Cfgmgr32.dll) for
a local machine.
CM_Get_Version_Ex The CM_Get_Version_Ex function returns version 4.0 of the
Plug and Play (PnP) Configuration Manager DLL
(Cfgmgr32.dll) for a local or a remote machine.
CM_Is_Dock_Station_Present The CM_Is_Dock_Station_Present function identifies whether a
docking station is present in a local machine.
CM_Is_Dock_Station_Present_Ex The CM_Is_Dock_Station_Present_Ex function identifies
whether a docking station is present in a local or a remote
machine.
CM_Is_Version_Available The CM_Is_Version_Available function indicates whether a
specified version of the Plug and Play (PnP) Configuration
Manager DLL (Cfgmgr32.dll) is supported by a local machine.
CM_Is_Version_Available_Ex The CM_Is_Version_Available_Ex function indicates whether a
specified version of the Plug and Play (PNP) Configuration
Manager DLL (Cfgmgr32.dll) is supported by a local or a
remote machine.
CM_Locate_DevNode_ExW The CM_Locate_DevNode_Ex function obtains a device
instance handle to the device node that is associated with a
specified device instance ID, on a local machine or a remote
machine.
CM_Locate_DevNodeA The CM_Locate_DevNode function obtains a device instance
handle to the device node that is associated with a specified
device instance ID on the local machine.
CM_Locate_DevNodeW The CM_Locate_DevNode function obtains a device instance
handle to the device node that is associated with a specified
device instance ID on the local machine.
CM_MapCrToWin32Err Converts a specified CONFIGRET code to its equivalent system
error code.
T IT L E DESC RIP T IO N
CM_Modify_Res_Des The CM_Modify_Res_Des function modifies a specified
resource descriptor on the local machine.
CM_Modify_Res_Des_Ex The CM_Modify_Res_Des_Ex function modifies a specified
resource descriptor on a local or a remote machine.
CM_Open_Class_KeyW The CM_Open_Class_Key function opens the device setup
class registry key, the device interface class registry key, or a
specific subkey of a class.
CM_Open_Device_Interface_Key_ExA The CM_Open_Device_Interface_Key_ExA function opens the
registry subkey that is used by applications and drivers to
store information that is specific to a device interface.
CM_Open_Device_Interface_Key_ExW The CM_Open_Device_Interface_Key_ExW function opens the
registry subkey that is used by applications and drivers to
store information that is specific to a device interface.
CM_Open_Device_Interface_KeyA The CM_Open_Device_Interface_Key function opens the
registry subkey that is used by applications and drivers to
store information that is specific to a device interface.
CM_Open_Device_Interface_KeyW The CM_Open_Device_Interface_Key function opens the
registry subkey that is used by applications and drivers to
store information that is specific to a device interface.
CM_Open_DevNode_Key The CM_Open_DevNode_Key function opens a registry key for
device-specific configuration information.
CM_Query_And_Remove_SubTree_ExW The CM_Query_And_Remove_SubTree_Ex function checks
whether a device instance and its children can be removed
and, if so, it removes them.
CM_Query_And_Remove_SubTreeW The CM_Query_And_Remove_SubTree function checks whether
a device instance and its children can be removed and, if so, it
removes them.
CM_Query_Resource_Conflict_List The CM_Query_Resource_Conflict_List function identifies
device instances having resource requirements that conflict
with a specified device instance's resource description.
CM_Reenumerate_DevNode The CM_Reenumerate_DevNode function enumerates the
devices identified by a specified device node and all of its
children.
CM_Reenumerate_DevNode_Ex The CM_Reenumerate_DevNode_Ex function enumerates the
devices identified by a specified device node and all of its
children.
CM_Register_Notification Use RegisterDeviceNotification instead of
CM_Register_Notification if your code targets Windows 7 or
earlier versions of Windows. Kernel mode callers should use
IoRegisterPlugPlayNotification instead.
T IT L E DESC RIP T IO N
CM_Request_Device_Eject_ExW The CM_Request_Device_Eject_Ex function prepares a local or a
remote device instance for safe removal, if the device is
removable. If the device can be physically ejected, it will be.
CM_Request_Device_EjectW The CM_Request_Device_Eject function prepares a local device
instance for safe removal, if the device is removable. If the
device can be physically ejected, it will be.
CM_Request_Eject_PC The CM_Request_Eject_PC function requests that a portable
PC, which is inserted in a local docking station, be ejected.
CM_Request_Eject_PC_Ex The CM_Request_Eject_PC_Ex function requests that a
portable PC, which is inserted in a local or a remote docking
station, be ejected.
CM_Set_Class_Property_ExW The CM_Set_Class_Property_ExW function sets a class
property for a device setup class or a device interface class.
CM_Set_Class_PropertyW The CM_Set_Class_Property function sets a class property for
a device setup class or a device interface class.
CM_Set_Class_Registry_PropertyW The CM_Set_Class_Registry_Property function sets or deletes a
property of a device setup class.
CM_Set_Device_Interface_Property_ExW The CM_Set_Device_Interface_Property_ExW function sets a
device property of a device interface.
CM_Set_Device_Interface_PropertyW The CM_Set_Device_Interface_Property function sets a device
property of a device interface.
CM_Set_DevNode_Problem The CM_Set_DevNode_Problem function sets a problem code
for a device that is installed in a local machine.
CM_Set_DevNode_Problem_Ex The CM_Set_DevNode_Problem_Ex function sets a problem
code for a device that is installed in a local or a remote
machine.
CM_Set_DevNode_Property_ExW The CM_Set_DevNode_Property_ExW function sets a device
instance property.
CM_Set_DevNode_PropertyW The CM_Set_DevNode_Property function sets a device
instance property.
CM_Set_DevNode_Registry_PropertyW The CM_Set_DevNode_Registry_Property function sets a
specified device property in the registry.
CM_Setup_DevNode The CM_Setup_DevNode function restarts a device instance
that is not running because there is a problem with the device
configuration.
CM_Uninstall_DevNode The CM_Uninstall_DevNode function removes all persistent
state associated with a device instance.
T IT L E DESC RIP T IO N
CM_Unregister_Notification Use UnregisterDeviceNotification instead of
CM_Unregister_Notification if your code targets Windows 7 or
earlier versions of Windows.
CM_WaitNoPendingInstallEvents The CMP_WaitNoPendingInstallEvents
(CM_WaitNoPendingInstallEvents) function waits until there
are no pending device installation activities for the PnP
manager to perform.
DiInstallDevice The DiInstallDevice function installs a specified driver that is
preinstalled in the driver store on a specified device that is
present in the system.
DiInstallDriverA The DiInstallDriver function preinstalls a driver in the driver
store and then installs the driver on devices present in the
system that the driver supports.
DiInstallDriverW The DiInstallDriver function preinstalls a driver in the driver
store and then installs the driver on devices present in the
system that the driver supports.
DiRollbackDriver The DiRollbackDriver function rolls back the driver that is
installed on a specified device.
DiShowUpdateDevice The DiShowUpdateDevice function displays the Hardware
Update wizard for a specified device.
DiUninstallDevice The DiUninstallDevice function uninstalls a device and removes
its device node (devnode) from the system.
DiUninstallDriverW The DiUninstallDriver function removes a driver from any
devices it is installed on by installing those devices with
another matching driver, if available, or the null driver (link to
whatever the DiInstallDevice page tries to link to for null driver
after Ted resolves the email I just sent) if no other matching
driver is available. Then the specified driver is removed from
the driver store.
SetupDiAskForOEMDisk The SetupDiAskForOEMDisk function displays a dialog that
asks the user for the path of an OEM installation disk.
SetupDiBuildClassInfoList The SetupDiBuildClassInfoList function returns a list of setup
class GUIDs that identify the classes that are installed on a
local computer.
SetupDiBuildClassInfoListExA The SetupDiBuildClassInfoListEx function returns a list of setup
class GUIDs that includes every class installed on the local
system or a remote system.
SetupDiBuildClassInfoListExW The SetupDiBuildClassInfoListEx function returns a list of setup
class GUIDs that includes every class installed on the local
system or a remote system.
T IT L E DESC RIP T IO N
SetupDiBuildDriverInfoList The SetupDiBuildDriverInfoList function builds a list of drivers
that is associated with a specific device or with the global class
driver list for a device information set.
SetupDiCallClassInstaller The SetupDiCallClassInstaller function calls the appropriate
class installer, and any registered co-installers, with the
specified installation request (DIF code).
SetupDiCancelDriverInfoSearch The SetupDiCancelDriverInfoSearch function cancels a driver
list search that is currently in progress in a different thread.
SetupDiChangeState The SetupDiChangeState function is the default handler for the
DIF_PROPERTYCHANGE installation request.
SetupDiClassGuidsFromNameA The SetupDiClassGuidsFromName function retrieves the
GUID(s) associated with the specified class name. This list is
built based on the classes currently installed on the system.
SetupDiClassGuidsFromNameExA The SetupDiClassGuidsFromNameEx function retrieves the
GUIDs associated with the specified class name. This resulting
list contains the classes currently installed on a local or remote
computer.
SetupDiClassGuidsFromNameExW The SetupDiClassGuidsFromNameEx function retrieves the
GUIDs associated with the specified class name. This resulting
list contains the classes currently installed on a local or remote
computer.
SetupDiClassGuidsFromNameW The SetupDiClassGuidsFromName function retrieves the
GUID(s) associated with the specified class name. This list is
built based on the classes currently installed on the system.
SetupDiClassNameFromGuidA The SetupDiClassNameFromGuid function retrieves the class
name associated with a class GUID.
SetupDiClassNameFromGuidExA The SetupDiClassNameFromGuidEx function retrieves the class
name associated with a class GUID. The class can be installed
on a local or remote computer.
SetupDiClassNameFromGuidExW The SetupDiClassNameFromGuidEx function retrieves the class
name associated with a class GUID. The class can be installed
on a local or remote computer.
SetupDiClassNameFromGuidW The SetupDiClassNameFromGuid function retrieves the class
name associated with a class GUID.
SetupDiCreateDeviceInfoA The SetupDiCreateDeviceInfo function creates a new device
information element and adds it as a new member to the
specified device information set.
SetupDiCreateDeviceInfoList The SetupDiCreateDeviceInfoList function creates an empty
device information set and optionally associates the set with a
device setup class and a top-level window.
T IT L E DESC RIP T IO N
SetupDiCreateDeviceInfoListExA The SetupDiCreateDeviceInfoList function creates an empty
device information set on a remote or a local computer and
optionally associates the set with a device setup class .
SetupDiCreateDeviceInfoListExW The SetupDiCreateDeviceInfoList function creates an empty
device information set on a remote or a local computer and
optionally associates the set with a device setup class .
SetupDiCreateDeviceInfoW The SetupDiCreateDeviceInfo function creates a new device
information element and adds it as a new member to the
specified device information set.
SetupDiCreateDeviceInterfaceA The SetupDiCreateDeviceInterface function registers a device
interface on a local system or a remote system.
SetupDiCreateDeviceInterfaceRegKeyA The SetupDiCreateDeviceInterfaceRegKey function creates a
registry key for storing information about a device interface
and returns a handle to the key.
SetupDiCreateDeviceInterfaceRegKeyW The SetupDiCreateDeviceInterfaceRegKey function creates a
registry key for storing information about a device interface
and returns a handle to the key.
SetupDiCreateDeviceInterfaceW The SetupDiCreateDeviceInterface function registers a device
interface on a local system or a remote system.
SetupDiCreateDevRegKeyA The SetupDiCreateDevRegKey function creates a registry key
for device-specific configuration information and returns a
handle to the key.
SetupDiCreateDevRegKeyW The SetupDiCreateDevRegKey function creates a registry key
for device-specific configuration information and returns a
handle to the key.
SetupDiDeleteDeviceInfo The SetupDiDeleteDeviceInfo function deletes a device
information element from a device information set. This
function does not delete the actual device.
SetupDiDeleteDeviceInterfaceData The SetupDiDeleteDeviceInterfaceData function deletes a
device interface from a device information set.
SetupDiDeleteDeviceInterfaceRegKey The SetupDiDeleteDeviceInterfaceRegKey function deletes the
registry subkey that is used by applications and drivers to
store interface-specific information.
SetupDiDeleteDevRegKey The SetupDiDeleteDevRegKey function deletes specified user-
accessible registry keys that are associated with a device
information element.
SetupDiDestroyClassImageList The SetupDiDestroyClassImageList function destroys a class
image list that was built by a call to SetupDiGetClassImageList
or SetupDiGetClassImageListEx.
SetupDiDestroyDeviceInfoList The SetupDiDestroyDeviceInfoList function deletes a device
information set and frees all associated memory.
T IT L E DESC RIP T IO N
SetupDiDestroyDriverInfoList The SetupDiDestroyDriverInfoList function deletes a driver list.
SetupDiDrawMiniIcon The SetupDiDrawMiniIcon function draws the specified mini-
icon at the location requested.
SetupDiEnumDeviceInfo The SetupDiEnumDeviceInfo function returns a
SP_DEVINFO_DATA structure that specifies a device
information element in a device information set.
SetupDiEnumDeviceInterfaces The SetupDiEnumDeviceInterfaces function enumerates the
device interfaces that are contained in a device information
set.
SetupDiEnumDriverInfoA The SetupDiEnumDriverInfo function enumerates the
members of a driver list.
SetupDiEnumDriverInfoW The SetupDiEnumDriverInfo function enumerates the
members of a driver list.
SetupDiGetActualModelsSectionA The SetupDiGetActualModelsSection function retrieves the
appropriate decorated INF Models section to use when
installing a device from a device INF file.
SetupDiGetActualModelsSectionW The SetupDiGetActualModelsSection function retrieves the
appropriate decorated INF Models section to use when
installing a device from a device INF file.
SetupDiGetActualSectionToInstallA The SetupDiGetActualSectionToInstall function retrieves the
appropriate INF DDInstall section to use when installing a
device from a device INF file on a local computer.
SetupDiGetActualSectionToInstallExA The SetupDiGetActualSectionToInstallEx function retrieves the
name of the INF DDInstall section that installs a device for a
specified operating system and processor architecture.
SetupDiGetActualSectionToInstallExW The SetupDiGetActualSectionToInstallEx function retrieves the
name of the INF DDInstall section that installs a device for a
specified operating system and processor architecture.
SetupDiGetActualSectionToInstallW The SetupDiGetActualSectionToInstall function retrieves the
appropriate INF DDInstall section to use when installing a
device from a device INF file on a local computer.
SetupDiGetClassBitmapIndex The SetupDiGetClassBitmapIndex function retrieves the index
of the mini-icon supplied for the specified class.
SetupDiGetClassDescriptionA The SetupDiGetClassDescription function retrieves the class
description associated with the specified setup class GUID.
SetupDiGetClassDescriptionExA The SetupDiGetClassDescriptionEx function retrieves the
description of a setup class installed on a local or remote
computer.
T IT L E DESC RIP T IO N
SetupDiGetClassDescriptionExW The SetupDiGetClassDescriptionEx function retrieves the
description of a setup class installed on a local or remote
computer.
SetupDiGetClassDescriptionW The SetupDiGetClassDescription function retrieves the class
description associated with the specified setup class GUID.
SetupDiGetClassDevPropertySheetsA The SetupDiGetClassDevPropertySheets function retrieves
handles to the property sheets of a device information
element or of the device setup class of a device information
set.
SetupDiGetClassDevPropertySheetsW The SetupDiGetClassDevPropertySheets function retrieves
handles to the property sheets of a device information
element or of the device setup class of a device information
set.
SetupDiGetClassDevsExA The SetupDiGetClassDevsEx function returns a handle to a
device information set that contains requested device
information elements for a local or a remote computer.
SetupDiGetClassDevsExW The SetupDiGetClassDevsEx function returns a handle to a
device information set that contains requested device
information elements for a local or a remote computer.
SetupDiGetClassDevsW The SetupDiGetClassDevs function returns a handle to a
device information set that contains requested device
information elements for a local computer.
SetupDiGetClassImageIndex The SetupDiGetClassImageIndex function retrieves the index
within the class image list of a specified class.
SetupDiGetClassImageList The SetupDiGetClassImageList function builds an image list
that contains bitmaps for every installed class and returns the
list in a data structure.
SetupDiGetClassImageListExA The SetupDiGetClassImageListEx function builds an image list
of bitmaps for every class installed on a local or remote
system.
SetupDiGetClassImageListExW The SetupDiGetClassImageListEx function builds an image list
of bitmaps for every class installed on a local or remote
system.
SetupDiGetClassInstallParamsA The SetupDiGetClassInstallParams function retrieves class
installation parameters for a device information set or a
particular device information element.
SetupDiGetClassInstallParamsW The SetupDiGetClassInstallParams function retrieves class
installation parameters for a device information set or a
particular device information element.
SetupDiGetClassPropertyExW The SetupDiGetClassPropertyEx function retrieves a class
property for a device setup class or a device interface class on
a local or remote computer.
T IT L E DESC RIP T IO N
SetupDiGetClassPropertyKeys The SetupDiGetClassPropertyKeys function retrieves an array
of the device property keys that represent the device
properties that are set for a device setup class or a device
interface class.
SetupDiGetClassPropertyKeysExW The SetupDiGetClassPropertyKeysEx function retrieves an
array of the device property keys that represent the device
properties that are set for a device setup class or a device
interface class on a local or a remote computer.
SetupDiGetClassPropertyW The SetupDiGetClassProperty function retrieves a device
property that is set for a device setup class or a device
interface class.
SetupDiGetClassRegistryPropertyA The SetupDiGetClassRegistryProperty function retrieves a
property for a specified device setup class from the registry.
SetupDiGetClassRegistryPropertyW The SetupDiGetClassRegistryProperty function retrieves a
property for a specified device setup class from the registry.
SetupDiGetCustomDevicePropertyA The SetupDiGetCustomDeviceProperty function retrieves a
specified custom device property from the registry.
SetupDiGetCustomDevicePropertyW The SetupDiGetCustomDeviceProperty function retrieves a
specified custom device property from the registry.
SetupDiGetDeviceInfoListClass The SetupDiGetDeviceInfoListClass function retrieves the
GUID for the device setup class associated with a device
information set if the set has an associated class.
SetupDiGetDeviceInfoListDetailA The SetupDiGetDeviceInfoListDetail function retrieves
information associated with a device information set including
the class GUID, remote computer handle, and remote
computer name.
SetupDiGetDeviceInfoListDetailW The SetupDiGetDeviceInfoListDetail function retrieves
information associated with a device information set including
the class GUID, remote computer handle, and remote
computer name.
SetupDiGetDeviceInstallParamsA The SetupDiGetDeviceInstallParams function retrieves device
installation parameters for a device information set or a
particular device information element.
SetupDiGetDeviceInstallParamsW The SetupDiGetDeviceInstallParams function retrieves device
installation parameters for a device information set or a
particular device information element.
SetupDiGetDeviceInstanceIdA The SetupDiGetDeviceInstanceId function retrieves the device
instance ID that is associated with a device information
element.
SetupDiGetDeviceInstanceIdW The SetupDiGetDeviceInstanceId function retrieves the device
instance ID that is associated with a device information
element.
T IT L E DESC RIP T IO N
SetupDiGetDeviceInterfaceAlias The SetupDiGetDeviceInterfaceAlias function returns an alias
of a specified device interface.
SetupDiGetDeviceInterfaceDetailA The SetupDiGetDeviceInterfaceDetail function returns details
about a device interface.
SetupDiGetDeviceInterfaceDetailW The SetupDiGetDeviceInterfaceDetail function returns details
about a device interface.
SetupDiGetDeviceInterfacePropertyKeys The SetupDiGetDeviceInterfacePropertyKeys function retrieves
an array of device property keys that represent the device
properties that are set for a device interface.
SetupDiGetDeviceInterfacePropertyW The SetupDiGetDeviceInterfaceProperty function retrieves a
device property that is set for a device interface.
SetupDiGetDevicePropertyKeys The SetupDiGetDevicePropertyKeys function retrieves an array
of the device property keys that represent the device
properties that are set for a device instance.
SetupDiGetDevicePropertyW The SetupDiGetDeviceProperty function retrieves a device
instance property.
SetupDiGetDeviceRegistryPropertyA The SetupDiGetDeviceRegistryProperty function retrieves a
specified Plug and Play device property.
SetupDiGetDeviceRegistryPropertyW The SetupDiGetDeviceRegistryProperty function retrieves a
specified Plug and Play device property.
SetupDiGetDriverInfoDetailA The SetupDiGetDriverInfoDetail function retrieves driver
information detail for a device information set or a particular
device information element in the device information set.
SetupDiGetDriverInfoDetailW The SetupDiGetDriverInfoDetail function retrieves driver
information detail for a device information set or a particular
device information element in the device information set.
SetupDiGetDriverInstallParamsA The SetupDiGetDriverInstallParams function retrieves driver
installation parameters for a device information set or a
particular device information element.
SetupDiGetDriverInstallParamsW The SetupDiGetDriverInstallParams function retrieves driver
installation parameters for a device information set or a
particular device information element.
SetupDiGetHwProfileFriendlyNameA The SetupDiGetHwProfileFriendlyName function retrieves the
friendly name associated with a hardware profile ID.
SetupDiGetHwProfileFriendlyNameExA The SetupDiGetHwProfileFriendlyNameEx function retrieves
the friendly name associated with a hardware profile ID on a
local or remote computer.
SetupDiGetHwProfileFriendlyNameExW The SetupDiGetHwProfileFriendlyNameEx function retrieves
the friendly name associated with a hardware profile ID on a
local or remote computer.
T IT L E DESC RIP T IO N
SetupDiGetHwProfileFriendlyNameW The SetupDiGetHwProfileFriendlyName function retrieves the
friendly name associated with a hardware profile ID.
SetupDiGetHwProfileList The SetupDiGetHwProfileList function retrieves a list of all
currently defined hardware profile IDs.
SetupDiGetHwProfileListExA The SetupDiGetHwProfileListEx function retrieves a list of all
currently defined hardware profile IDs on a local or remote
computer.
SetupDiGetHwProfileListExW The SetupDiGetHwProfileListEx function retrieves a list of all
currently defined hardware profile IDs on a local or remote
computer.
SetupDiGetINFClassA The SetupDiGetINFClass function returns the class of a
specified device INF file.
SetupDiGetINFClassW The SetupDiGetINFClass function returns the class of a
specified device INF file.
SetupDiGetSelectedDevice The SetupDiGetSelectedDevice function retrieves the selected
device information element in a device information set.
SetupDiGetSelectedDriverA The SetupDiGetSelectedDriver function retrieves the selected
driver for a device information set or a particular device
information element.
SetupDiGetSelectedDriverW The SetupDiGetSelectedDriver function retrieves the selected
driver for a device information set or a particular device
information element.
SetupDiInstallClassA The SetupDiInstallClass function installs the ClassInstall32
section of the specified INF file.
SetupDiInstallClassExA The SetupDiInstallClassEx function installs a class installer or an
interface class.
SetupDiInstallClassExW The SetupDiInstallClassEx function installs a class installer or an
interface class.
SetupDiInstallClassW The SetupDiInstallClass function installs the ClassInstall32
section of the specified INF file.
SetupDiInstallDevice The SetupDiInstallDevice function is the default handler for the
DIF_INSTALLDEVICE installation request.
SetupDiInstallDeviceInterfaces The SetupDiInstallDeviceInterfaces function is the default
handler for the DIF_INSTALLINTERFACES installation request.
T IT L E DESC RIP T IO N
SetupDiInstallDriverFiles The SetupDiInstallDriverFiles function is the default handler for
the DIF_INSTALLDEVICEFILES installation request.
SetupDiLoadClassIcon The SetupDiLoadClassIcon function loads both the large and
mini-icon for the specified class.
SetupDiLoadDeviceIcon The SetupDiLoadDeviceIcon function retrieves an icon for a
specified device.
SetupDiOpenClassRegKey The SetupDiOpenClassRegKey function opens the setup class
registry key or a specific class's subkey.
SetupDiOpenClassRegKeyExA The SetupDiOpenClassRegKeyEx function opens the device
setup class registry key, the device interface class registry key,
or a specific class's subkey. This function opens the specified
key on the local computer or on a remote computer.
SetupDiOpenClassRegKeyExW The SetupDiOpenClassRegKeyEx function opens the device
setup class registry key, the device interface class registry key,
or a specific class's subkey. This function opens the specified
key on the local computer or on a remote computer.
SetupDiOpenDeviceInfoA The SetupDiOpenDeviceInfo function adds a device
information element for a device instance to a device
information set, if one does not already exist in the device
information set, and retrieves information that identifies the
device information element for the device instance in the
device information set.
SetupDiOpenDeviceInfoW The SetupDiOpenDeviceInfo function adds a device
information element for a device instance to a device
information set, if one does not already exist in the device
information set, and retrieves information that identifies the
device information element for the device instance in the
device information set.
SetupDiOpenDeviceInterfaceA The SetupDiOpenDeviceInterface function retrieves
information about a device interface and adds the interface to
the specified device information set for a local system or a
remote system.
SetupDiOpenDeviceInterfaceRegKey The SetupDiOpenDeviceInterfaceRegKey function opens the
registry subkey that is used by applications and drivers to
store information that is specific to a device interface.
SetupDiOpenDeviceInterfaceW The SetupDiOpenDeviceInterface function retrieves
information about a device interface and adds the interface to
the specified device information set for a local system or a
remote system.
SetupDiOpenDevRegKey The SetupDiOpenDevRegKey function opens a registry key for
device-specific configuration information.
SetupDiRegisterCoDeviceInstallers The SetupDiRegisterCoDeviceInstallers function is the default
handler for DIF_REGISTER_COINSTALLERS.
T IT L E DESC RIP T IO N
SetupDiRegisterDeviceInfo The SetupDiRegisterDeviceInfo function is the default handler
for the DIF_REGISTERDEVICE request.
SetupDiRemoveDevice The SetupDiRemoveDevice function is the default handler for
the DIF_REMOVE installation request.
SetupDiRemoveDeviceInterface The SetupDiRemoveDeviceInterface function removes a
registered device interface from the system.
SetupDiRestartDevices The SetupDiRestartDevices function restarts a specified device
or, if necessary, restarts all devices that are operated by the
same function and filter drivers that operate the specified
device.
SetupDiSelectBestCompatDrv The SetupDiSelectBestCompatDrv function is the default
handler for the DIF_SELECTBESTCOMPATDRV installation
request.
SetupDiSelectDevice The SetupDiSelectDevice function is the default handler for the
DIF_SELECTDEVICE request.
SetupDiSelectOEMDrv The SetupDiSelectOEMDrv function selects a driver for a
device information set or a particular device information
element that uses an OEM path supplied by the user.
SetupDiSetClassInstallParamsA The SetupDiSetClassInstallParams function sets or clears class
install parameters for a device information set or a particular
device information element.
SetupDiSetClassInstallParamsW The SetupDiSetClassInstallParams function sets or clears class
install parameters for a device information set or a particular
device information element.
SetupDiSetClassPropertyExW The SetupDiSetClassPropertyEx function sets a device
property for a device setup class or a device interface class on
a local or remote computer.
SetupDiSetClassPropertyW The SetupDiSetClassProperty function sets a class property for
a device setup class or a device interface class.
SetupDiSetClassRegistryPropertyA The SetupDiSetClassRegistryProperty function sets a specified
device class property in the registry.
SetupDiSetClassRegistryPropertyW The SetupDiSetClassRegistryProperty function sets a specified
device class property in the registry.
SetupDiSetDeviceInstallParamsA The SetupDiSetDeviceInstallParams function sets device
installation parameters for a device information set or a
particular device information element.
SetupDiSetDeviceInstallParamsW The SetupDiSetDeviceInstallParams function sets device
installation parameters for a device information set or a
particular device information element.
T IT L E DESC RIP T IO N
SetupDiSetDeviceInterfaceDefault The SetupDiSetDeviceInterfaceDefault function sets a device
interface as the default interface for a device interface class.
SetupDiSetDeviceInterfacePropertyW The SetupDiSetDeviceInterfaceProperty function sets a device
property of a device interface.
SetupDiSetDevicePropertyW The SetupDiSetDeviceProperty function sets a device instance
property.
SetupDiSetDeviceRegistryPropertyA The SetupDiSetDeviceRegistryProperty function sets a Plug
and Play device property for a device.
SetupDiSetDeviceRegistryPropertyW The SetupDiSetDeviceRegistryProperty function sets a Plug
and Play device property for a device.
SetupDiSetDriverInstallParamsA The SetupDiSetDriverInstallParams function sets driver
installation parameters for a driver information element.
SetupDiSetDriverInstallParamsW The SetupDiSetDriverInstallParams function sets driver
installation parameters for a driver information element.
SetupDiSetSelectedDevice The SetupDiSetSelectedDevice function sets a device
information element as the selected member of a device
information set. This function is typically used by an
installation wizard.
SetupDiSetSelectedDriverA The SetupDiSetSelectedDriver function sets, or resets, the
selected driver for a device information element or the
selected class driver for a device information set.
SetupDiSetSelectedDriverW The SetupDiSetSelectedDriver function sets, or resets, the
selected driver for a device information element or the
selected class driver for a device information set.
SetupDiUnremoveDevice The SetupDiUnremoveDevice function is the default handler
for the DIF_UNREMOVE installation request.
SetupGetInfDriverStoreLocationA The SetupGetInfDriverStoreLocation function retrieves the fully
qualified file name (directory path and file name) of an INF file
in the driver store that corresponds to a specified INF file in
the system INF file directory or a specified INF file in the driver
store.
SetupGetInfDriverStoreLocationW The SetupGetInfDriverStoreLocation function retrieves the fully
qualified file name (directory path and file name) of an INF file
in the driver store that corresponds to a specified INF file in
the system INF file directory or a specified INF file in the driver
store.
SetupGetInfPublishedNameA The SetupGetInfPublishedName function retrieves the fully
qualified file name (directory path and file name) of an INF file
in the system INF file directory that corresponds to a specified
INF file in the driver store or a specified INF file in the system
INF file directory.
T IT L E DESC RIP T IO N
SetupGetInfPublishedNameW The SetupGetInfPublishedName function retrieves the fully
qualified file name (directory path and file name) of an INF file
in the system INF file directory that corresponds to a specified
INF file in the driver store or a specified INF file in the system
INF file directory.
SetupGetNonInteractiveMode The SetupGetNonInteractiveMode function returns the value
of a SetupAPI non-interactive flag that indicates whether the
caller's process can interact with a user through user interface
components, such as dialog boxes.
SetupGetThreadLogToken The SetupGetThreadLogToken function retrieves the log token
for the thread from which this function was called.
SetupSetNonInteractiveMode The SetupSetNonInteractiveMode function sets a non-
interactive SetupAPI flag that determines whether SetupAPI
can interact with a user in the caller's context.
SetupSetThreadLogToken The SetupSetThreadLogToken function sets the log context, as
represented by a log token, for the thread from which this
function was called.
SetupWriteTextLog The SetupWriteTextLog function writes a log entry in a
SetupAPI text log.
SetupWriteTextLogError The SetupWriteTextLogError function writes information about
a SetupAPI-specific error or a Win32 system error to a
SetupAPI text log.
SetupWriteTextLogInfLine The SetupWriteTextLogInfLine function writes a log entry in a
SetupAPI text log that contains the text of a specified INF file
line.
UpdateDriverForPlugAndPlayDevicesA Given an INF file and a hardware ID, the
UpdateDriverForPlugAndPlayDevices function installs updated
drivers for devices that match the hardware ID.
UpdateDriverForPlugAndPlayDevicesW Given an INF file and a hardware ID, the
UpdateDriverForPlugAndPlayDevices function installs updated
drivers for devices that match the hardware ID.
Structures
T IT L E DESC RIP T IO N
BUSNUMBER_DES The BUSNUMBER_DES structure is used for specifying either a
resource list or a resource requirements list that describes bus
number usage for a device instance.
BUSNUMBER_RANGE The BUSNUMBER_RANGE structure specifies a resource
requirements list that describes bus number usage for a device
instance. For more information about resource requirements
lists, see Hardware Resources.
T IT L E DESC RIP T IO N
BUSNUMBER_RESOURCE The BUSNUMBER_RESOURCE structure specifies either a
resource list or a resource requirements list that describes bus
number usage for a device instance. For more information
about resource lists and resource requirements lists, see
Hardware Resources.
CM_NOTIFY_EVENT_DATA This is a device notification event data structure.
CM_NOTIFY_FILTER Device notification filter structure.
CONFLICT_DETAILS_A The CONFLICT_DETAILS structure is used as a parameter to
the CM_Get_Resource_Conflict_Details function.
CONFLICT_DETAILS_W The CONFLICT_DETAILS structure is used as a parameter to
the CM_Get_Resource_Conflict_Details function.
CS_DES The CS_DES structure is used for specifying a resource list that
describes device class-specific resource usage for a device
instance. For more information about resource lists, see
Hardware Resources.
CS_RESOURCE The CS_RESOURCE structure is used for specifying a resource
list that describes device class-specific resource usage for a
device instance. For more information about resource lists, see
Hardware Resources.
DMA_DES The DMA_DES structure is used for specifying either a
resource list or a resource requirements list that describes
direct memory access (DMA) channel usage for a device
instance.
DMA_RANGE The DMA_RANGE structure specifies a resource requirements
list that describes DMA channel usage for a device instance.
For more information about resource requirements lists, see
Hardware Resources.
DMA_RESOURCE The DMA_RESOURCE structure is used for specifying either a
resource list or a resource requirements list that describes
DMA channel usage for a device instance.
IO_DES The IO_DES structure is used for specifying either a resource
list or a resource requirements list that describes I/O port
usage for a device instance. For more information about
resource lists and resource requirements lists, see Hardware
Resources.
IO_RANGE The IO_RANGE structure specifies a resource requirements list
that describes I/O port usage for a device instance. For more
information about resource requirements lists, see Hardware
Resources.
IO_RESOURCE The IO_RESOURCE structure is used for specifying either a
resource list or a resource requirements list that describes I/O
port usage for a device instance.
T IT L E DESC RIP T IO N
IRQ_DES_32 The IRQ_DES structure is used for specifying either a resource
list or a resource requirements list that describes IRQ line
usage for a device instance. For more information about
resource lists and resource requirements lists, see Hardware
Resources.
IRQ_DES_64 The IRQ_DES structure is used for specifying either a resource
list or a resource requirements list that describes IRQ line
usage for a device instance. For more information about
resource lists and resource requirements lists, see Hardware
Resources.
IRQ_RANGE The IRQ_RANGE structure specifies a resource requirements
list that describes IRQ line usage for a device instance. For
more information about resource requirements lists, see
Hardware Resources.
IRQ_RESOURCE_32 The IRQ_RESOURCE structure is used for specifying either a
resource list or a resource requirements list that describes IRQ
line usage for a device instance.
IRQ_RESOURCE_64 The IRQ_RESOURCE structure is used for specifying either a
resource list or a resource requirements list that describes IRQ
line usage for a device instance.
MEM_DES The MEM_DES structure is used for specifying either a
resource list or a resource requirements list that describes
memory usage for a device instance. For more information
about resource lists and resource requirements lists, see
Hardware Resources.
MEM_RANGE The MEM_RANGE structure specifies a resource requirements
list that describes memory usage for a device instance. For
more information about resource requirements lists, see
Hardware Resources.
MEM_RESOURCE The MEM_RESOURCE structure is used for specifying either a
resource list or a resource requirements list that describes
memory usage for a device instance. For more information
about resource lists and resource requirements lists, see
Hardware Resources.
MFCARD_DES The MFCARD_DES structure is used for specifying either a
resource list or a resource requirements list that describes
resource usage by one of the hardware functions provided by
an instance of a multifunction device.
MFCARD_RESOURCE The MFCARD_RESOURCE structure is used for specifying
either a resource list or a resource requirements list that
describes resource usage by one of the hardware functions
provided by an instance of a multifunction device.
PCCARD_DES The PCCARD_DES structure is used for specifying either a
resource list or a resource requirements list that describes
resource usage by a PC Card instance. For more information
about resource lists and resource requirements lists, see
Hardware Resources.
T IT L E DESC RIP T IO N
PCCARD_RESOURCE The PCCARD_RESOURCE structure is used for specifying either
a resource list or a resource requirements list that describes
resource usage by a PC Card instance.
SP_CLASSIMAGELIST_DATA An SP_CLASSIMAGELIST_DATA structure describes a class
image list.
SP_CLASSINSTALL_HEADER An SP_CLASSINSTALL_HEADER is the first member of any class
install parameters structure. It contains the device installation
request code that defines the format of the rest of the install
parameters structure.
SP_DETECTDEVICE_PARAMS An SP_DETECTDEVICE_PARAMS structure corresponds to a
DIF_DETECT installation request.
SP_DEVICE_INTERFACE_DATA An SP_DEVICE_INTERFACE_DATA structure defines a device
interface in a device information set.
SP_DEVICE_INTERFACE_DETAIL_DATA_A An SP_DEVICE_INTERFACE_DETAIL_DATA structure contains
the path for a device interface.
SP_DEVICE_INTERFACE_DETAIL_DATA_W An SP_DEVICE_INTERFACE_DETAIL_DATA structure contains
the path for a device interface.
SP_DEVINFO_DATA An SP_DEVINFO_DATA structure defines a device instance that
is a member of a device information set.
SP_DEVINFO_LIST_DETAIL_DATA_A An SP_DEVINFO_LIST_DETAIL_DATA structure contains
information about a device information set, such as its
associated setup class GUID (if it has an associated setup
class).
SP_DEVINFO_LIST_DETAIL_DATA_W An SP_DEVINFO_LIST_DETAIL_DATA structure contains
information about a device information set, such as its
associated setup class GUID (if it has an associated setup
class).
SP_DEVINSTALL_PARAMS_A An SP_DEVINSTALL_PARAMS structure contains device
installation parameters associated with a particular device
information element or associated globally with a device
information set.
SP_DEVINSTALL_PARAMS_W An SP_DEVINSTALL_PARAMS structure contains device
installation parameters associated with a particular device
information element or associated globally with a device
information set.
SP_DRVINFO_DATA_V1_A An SP_DRVINFO_DATA structure contains information about a
driver. This structure is a member of a driver information list
that can be associated with a particular device instance or
globally with a device information set.
T IT L E DESC RIP T IO N
SP_DRVINFO_DATA_V1_W An SP_DRVINFO_DATA structure contains information about a
driver. This structure is a member of a driver information list
that can be associated with a particular device instance or
globally with a device information set.
SP_DRVINFO_DATA_V2_A An SP_DRVINFO_DATA structure contains information about a
driver. This structure is a member of a driver information list
that can be associated with a particular device instance or
globally with a device information set.
SP_DRVINFO_DATA_V2_W An SP_DRVINFO_DATA structure contains information about a
driver. This structure is a member of a driver information list
that can be associated with a particular device instance or
globally with a device information set.
SP_DRVINFO_DETAIL_DATA_A An SP_DRVINFO_DETAIL_DATA structure contains detailed
information about a particular driver information structure.
SP_DRVINFO_DETAIL_DATA_W An SP_DRVINFO_DETAIL_DATA structure contains detailed
information about a particular driver information structure.
SP_DRVINSTALL_PARAMS An SP_DRVINSTALL_PARAMS structure contains driver
installation parameters associated with a particular driver
information element.
SP_NEWDEVICEWIZARD_DATA An SP_NEWDEVICEWIZARD_DATA structure is used by
installers to extend the operation of the hardware installation
wizard by adding custom pages. It is used with
DIF_NEWDEVICEWIZARD_XXX installation requests.
SP_POWERMESSAGEWAKE_PARAMS_A An SP_POWERMESSAGEWAKE_PARAMS structure corresponds
to a DIF_POWERMESSAGEWAKE installation request.
SP_POWERMESSAGEWAKE_PARAMS_W An SP_POWERMESSAGEWAKE_PARAMS structure corresponds
to a DIF_POWERMESSAGEWAKE installation request.
SP_PROPCHANGE_PARAMS An SP_PROPCHANGE_PARAMS structure corresponds to a
DIF_PROPERTYCHANGE installation request.
SP_PROPSHEETPAGE_REQUEST An SP_PROPSHEETPAGE_REQUEST structure can be passed as
the first parameter (lpv) to the ExtensionPropSheetPageProc
entry point in the SetupAPI DLL.
SP_REMOVEDEVICE_PARAMS An SP_REMOVEDEVICE_PARAMS structure corresponds to the
DIF_REMOVE installation request.
SP_SELECTDEVICE_PARAMS_A An SP_SELECTDEVICE_PARAMS structure corresponds to a
DIF_SELECTDEVICE installation request.
SP_SELECTDEVICE_PARAMS_W An SP_SELECTDEVICE_PARAMS structure corresponds to a
DIF_SELECTDEVICE installation request.
SP_TROUBLESHOOTER_PARAMS_A An SP_TROUBLESHOOTER_PARAMS structure corresponds to
a DIF_TROUBLESHOOTER installation request.
T IT L E DESC RIP T IO N
SP_TROUBLESHOOTER_PARAMS_W An SP_TROUBLESHOOTER_PARAMS structure corresponds to
a DIF_TROUBLESHOOTER installation request.
SP_UNREMOVEDEVICE_PARAMS An SP_UNREMOVEDEVICE_PARAMS structure corresponds to
a DIF_UNREMOVE installation request.
Dialog Boxes
2/7/2020 • 10 minutes to read • Edit Online
Overview of the Dialog Boxes technology.
To develop Dialog Boxes, you need these headers:
commdlg.h
For programming guidance for this technology, see:
Dialog Boxes
Functions
T IT L E DESC RIP T IO N
CommDlgExtendedError Returns a common dialog box error code. This code indicates
the most recent error to occur during the execution of one of
the common dialog box functions.
CreateDialogA Creates a modeless dialog box from a dialog box template
resource. The CreateDialog macro uses the CreateDialogParam
function.
CreateDialogIndirectA Creates a modeless dialog box from a dialog box template in
memory. The CreateDialogIndirect macro uses the
CreateDialogIndirectParam function.
CreateDialogIndirectParamA Creates a modeless dialog box from a dialog box template in
memory.
CreateDialogIndirectParamW Creates a modeless dialog box from a dialog box template in
memory.
CreateDialogIndirectW Creates a modeless dialog box from a dialog box template in
memory. The CreateDialogIndirect macro uses the
CreateDialogIndirectParam function.
CreateDialogParamA Creates a modeless dialog box from a dialog box template
resource.
CreateDialogParamW Creates a modeless dialog box from a dialog box template
resource.
CreateDialogW Creates a modeless dialog box from a dialog box template
resource. The CreateDialog macro uses the CreateDialogParam
function.
DefDlgProcW Calls the default dialog box window procedure to provide
default processing for any window messages that a dialog box
with a private window class does not process.
T IT L E DESC RIP T IO N
DialogBoxA Creates a modal dialog box from a dialog box template
resource. DialogBox does not return control until the specified
callback function terminates the modal dialog box by calling
the EndDialog function.
DialogBoxIndirectA Creates a modal dialog box from a dialog box template in
memory. DialogBoxIndirect does not return control until the
specified callback function terminates the modal dialog box by
calling the EndDialog function.
DialogBoxIndirectParamA Creates a modal dialog box from a dialog box template in
memory.
DialogBoxIndirectParamW Creates a modal dialog box from a dialog box template in
memory.
DialogBoxIndirectW Creates a modal dialog box from a dialog box template in
memory. DialogBoxIndirect does not return control until the
specified callback function terminates the modal dialog box by
calling the EndDialog function.
DialogBoxParamA Creates a modal dialog box from a dialog box template
resource.
DialogBoxParamW Creates a modal dialog box from a dialog box template
resource.
DialogBoxW Creates a modal dialog box from a dialog box template
resource. DialogBox does not return control until the specified
callback function terminates the modal dialog box by calling
the EndDialog function.
DLGPROC Application-defined callback function used with the
CreateDialog and DialogBox families of functions.
EndDialog Destroys a modal dialog box, causing the system to end any
processing for the dialog box.
FindTextA Creates a system-defined modeless Find dialog box that lets
the user specify a string to search for and options to use when
searching for text in a document.
FindTextW Creates a system-defined modeless Find dialog box that lets
the user specify a string to search for and options to use when
searching for text in a document.
GetCurrentDevMode Fills a DEVMODE structure with information about the
currently selected printer for use with PrintDlgEx.
GetCurrentPortName Retrieves the name of the current port for use with PrintDlgEx.
GetCurrentPrinterName Retrieves the name of the currently selected printer, for use
with PrintDlgEx.
T IT L E DESC RIP T IO N
GetDialogBaseUnits Retrieves the system's dialog base units, which are the average
width and height of characters in the system font.
GetDlgCtrlID Retrieves the identifier of the specified control.
GetDlgItem Retrieves a handle to a control in the specified dialog box.
GetDlgItemInt Translates the text of a specified control in a dialog box into an
integer value.
GetDlgItemTextA Retrieves the title or text associated with a control in a dialog
box.
GetDlgItemTextW Retrieves the title or text associated with a control in a dialog
box.
GetFileTitleA Retrieves the name of the specified file.
GetFileTitleW Retrieves the name of the specified file.
GetNextDlgGroupItem Retrieves a handle to the first control in a group of controls
that precedes (or follows) the specified control in a dialog box.
GetNextDlgTabItem Retrieves a handle to the first control that has the
WS_TABSTOP style that precedes (or follows) the specified
control.
GetOpenFileNameA Creates an Open dialog box that lets the user specify the
drive, directory, and the name of a file or set of files to be
opened.
GetOpenFileNameW Creates an Open dialog box that lets the user specify the
drive, directory, and the name of a file or set of files to be
opened.
GetSaveFileNameA Creates a Save dialog box that lets the user specify the drive,
directory, and name of a file to save.
GetSaveFileNameW Creates a Save dialog box that lets the user specify the drive,
directory, and name of a file to save.
HandleMessage Called by PrintDlgEx to give your application an opportunity
to handle messages sent to the child dialog box in the lower
portion of the General page of the Print Property Sheet.
InitDone Called by PrintDlgEx when the system has finished initializing
the General page of the Print Property Sheet.
IsDialogMessageA Determines whether a message is intended for the specified
dialog box and, if it is, processes the message.
IsDialogMessageW Determines whether a message is intended for the specified
dialog box and, if it is, processes the message.
T IT L E DESC RIP T IO N
LPCCHOOKPROC Receives messages or notifications intended for the default
dialog box procedure of the Color dialog box. This is an
application-defined or library-defined callback function that is
used with the ChooseColor function.
LPCFHOOKPROC Receives messages or notifications intended for the default
dialog box procedure of the Font dialog box. This is an
application-defined or library-defined callback procedure that
is used with the ChooseFont function.
LPFRHOOKPROC Receives messages or notifications intended for the default
dialog box procedure of the Find or Replace dialog box.
LPOFNHOOKPROC Receives notification messages sent from the dialog box.
LPPAGEPAINTHOOK Receives messages that allow you to customize drawing of the
sample page in the Page Setup dialog box. The PagePaintHook
hook procedure is an application-defined or library-defined
callback function used with the PageSetupDlg function.
LPPAGESETUPHOOK Receives messages or notifications intended for the default
dialog box procedure of the Page Setup dialog box. The
PageSetupHook hook procedure is an application-defined or
library-defined callback function used with the PageSetupDlg
function.
LPPRINTHOOKPROC Receives messages or notifications intended for the default
dialog box procedure of the Print dialog box. This is an
application-defined or library-defined callback function that is
used with the PrintDlg function.
LPSETUPHOOKPROC An application-defined or library-defined callback function
used with the PrintDlg function. The hook procedure receives
messages or notifications intended for the default dialog box
procedure of the Print Setup dialog box.
MapDialogRect Converts the specified dialog box units to screen units (pixels).
MessageBox Displays a modal dialog box that contains a system icon, a set
of buttons, and a brief application-specific message, such as
status or error information. The message box returns an
integer value that indicates which button the user clicked.
MessageBoxA Displays a modal dialog box that contains a system icon, a set
of buttons, and a brief application-specific message, such as
status or error information. The message box returns an
integer value that indicates which button the user clicked.
MessageBoxExA Creates, displays, and operates a message box.
MessageBoxExW Creates, displays, and operates a message box.
MessageBoxIndirectA Creates, displays, and operates a message box. The message
box contains application-defined message text and title, any
icon, and any combination of predefined push buttons.
T IT L E DESC RIP T IO N
MessageBoxIndirectW Creates, displays, and operates a message box. The message
box contains application-defined message text and title, any
icon, and any combination of predefined push buttons.
MessageBoxW Displays a modal dialog box that contains a system icon, a set
of buttons, and a brief application-specific message, such as
status or error information. The message box returns an
integer value that indicates which button the user clicked.
ReplaceTextA Creates a system-defined modeless dialog box that lets the
user specify a string to search for and a replacement string, as
well as options to control the find and replace operations.
ReplaceTextW Creates a system-defined modeless dialog box that lets the
user specify a string to search for and a replacement string, as
well as options to control the find and replace operations.
SelectionChange Called by PrintDlgEx when the user selects a different printer
from the list of installed printers on the General page of the
Print Property Sheet.
SendDlgItemMessageA Sends a message to the specified control in a dialog box.
SendDlgItemMessageW Sends a message to the specified control in a dialog box.
SetDlgItemInt Sets the text of a control in a dialog box to the string
representation of a specified integer value.
SetDlgItemTextA Sets the title or text of a control in a dialog box.
SetDlgItemTextW Sets the title or text of a control in a dialog box.
Interfaces
T IT L E DESC RIP T IO N
IPrintDialogCallback Provides methods that enable an application to receive
notifications and messages from the PrintDlgEx function while
the Print Property Sheet is displayed.
IPrintDialogServices Provides methods that enable an application using the
PrintDlgEx function to retrieve information about the currently
selected printer.
Structures
T IT L E DESC RIP T IO N
CHOOSEFONTA Contains information that the ChooseFont function uses to
initialize the Font dialog box. After the user closes the dialog
box, the system returns information about the user's selection
in this structure.
T IT L E DESC RIP T IO N
CHOOSEFONTW Contains information that the ChooseFont function uses to
initialize the Font dialog box. After the user closes the dialog
box, the system returns information about the user's selection
in this structure.
DEVNAMES Contains strings that identify the driver, device, and output
port names for a printer.
DLGITEMTEMPLATE Defines the dimensions and style of a control in a dialog box.
One or more of these structures are combined with a
DLGTEMPLATE structure to form a standard template for a
dialog box.
DLGTEMPLATE Defines the dimensions and style of a dialog box.
FINDREPLACEA Contains information that the FindText and ReplaceText
functions use to initialize the Find and Replace dialog boxes.
FINDREPLACEW Contains information that the FindText and ReplaceText
functions use to initialize the Find and Replace dialog boxes.
MSGBOXPARAMSA Contains information used to display a message box. The
MessageBoxIndirect function uses this structure.
MSGBOXPARAMSW Contains information used to display a message box. The
MessageBoxIndirect function uses this structure.
OFNOTIFYA Contains information about a WM_NOTIFY message sent to
an OFNHookProc hook procedure for an Open or Save As
dialog box. The lParam parameter of the WM_NOTIFY message
is a pointer to an OFNOTIFY structure.
OFNOTIFYEXA Contains information about a CDN_INCLUDEITEM notification
message.
OFNOTIFYEXW Contains information about a CDN_INCLUDEITEM notification
message.
OFNOTIFYW Contains information about a WM_NOTIFY message sent to
an OFNHookProc hook procedure for an Open or Save As
dialog box. The lParam parameter of the WM_NOTIFY message
is a pointer to an OFNOTIFY structure.
OPENFILENAME_NT4A The OPENFILENAME_NT4 structure is identical to
OPENFILENAME with _WIN32_WINNT set to 0x0400.
OPENFILENAME_NT4W The OPENFILENAME_NT4 structure is identical to
OPENFILENAME with _WIN32_WINNT set to 0x0400.
OPENFILENAMEA Contains information that the GetOpenFileName and
GetSaveFileName functions use to initialize an Open or Save
As dialog box. After the user closes the dialog box, the system
returns information about the user's selection in this structure.
T IT L E DESC RIP T IO N
OPENFILENAMEW Contains information that the GetOpenFileName and
GetSaveFileName functions use to initialize an Open or Save
As dialog box. After the user closes the dialog box, the system
returns information about the user's selection in this structure.
PAGESETUPDLGA Contains information the PageSetupDlg function uses to
initialize the Page Setup dialog box. After the user closes the
dialog box, the system returns information about the user-
defined page parameters in this structure.
PAGESETUPDLGW Contains information the PageSetupDlg function uses to
initialize the Page Setup dialog box. After the user closes the
dialog box, the system returns information about the user-
defined page parameters in this structure.
PRINTDLGA Contains information that the PrintDlg function uses to
initialize the Print Dialog Box. After the user closes the dialog
box, the system uses this structure to return information
about the user's selections.
PRINTDLGEXA Contains information that the PrintDlgEx function uses to
initialize the Print property sheet. After the user closes the
property sheet, the system uses this structure to return
information about the user's selections.
PRINTDLGEXW Contains information that the PrintDlgEx function uses to
initialize the Print property sheet. After the user closes the
property sheet, the system uses this structure to return
information about the user's selections.
PRINTDLGW Contains information that the PrintDlg function uses to
initialize the Print Dialog Box. After the user closes the dialog
box, the system uses this structure to return information
about the user's selections.
PRINTPAGERANGE Represents a range of pages in a print job. A print job can
have more than one page range. This information is supplied
in the PRINTDLGEX structure when calling the PrintDlgEx
function.
Direct Manipulation
2/7/2020 • 7 minutes to read • Edit Online
Overview of the Direct Manipulation technology.
To develop Direct Manipulation, you need these headers:
directmanipulation.h
For programming guidance for this technology, see:
Direct Manipulation
Enumerations
T IT L E DESC RIP T IO N
DIRECTMANIPULATION_AUTOSCROLL_CONFIGURATION Determines the type and direction of automatic scrolling
animation to apply.
DIRECTMANIPULATION_CONFIGURATION Defines the interaction configuration states available in Direct
Manipulation.
DIRECTMANIPULATION_DRAG_DROP_CONFIGURATION Defines behaviors for the drag-drop interaction.
DIRECTMANIPULATION_DRAG_DROP_STATUS Defines the drag-and-drop interaction states for the viewport.
DIRECTMANIPULATION_GESTURE_CONFIGURATION Defines the gestures that can be passed to SetManualGesture.
DIRECTMANIPULATION_HITTEST_TYPE Defines how hit testing is handled by Direct Manipulation
when using a dedicated hit-test thread registered through
RegisterHitTestTarget.
DIRECTMANIPULATION_HORIZONTALALIGNMENT Defines the horizontal alignment options for content within a
viewport.
DIRECTMANIPULATION_INPUT_MODE Defines the threading behavior for SetInputMode or
SetUpdateMode. The exact meaning of each constant depends
on the method called.
DIRECTMANIPULATION_INTERACTION_TYPE Defines gestures recognized by Direct Manipulation.
DIRECTMANIPULATION_MOTION_TYPES Defines the Direct Manipulation motion type.
DIRECTMANIPULATION_SNAPPOINT_COORDINATE Defines the coordinate system for a collection of snap points.
DIRECTMANIPULATION_SNAPPOINT_TYPE Modifies how the final inertia end position is calculated.
DIRECTMANIPULATION_STATUS Defines the possible states of Direct Manipulation.
DIRECTMANIPULATION_VERTICALALIGNMENT Defines the vertical alignment settings for content within the
viewport.
T IT L E DESC RIP T IO N
DIRECTMANIPULATION_VIEWPORT_OPTIONS Defines the input behavior options for the viewport.
Functions
T IT L E DESC RIP T IO N
Abandon Releases all resources that are used by the viewport and
prepares it for destruction from memory.
Activate Activates Direct Manipulation for processing input and
handling callbacks on the specified window.
ActivateConfiguration Sets the configuration for input interaction.
AddBehavior Adds a behavior to the viewport and returns a cookie to the
caller.
AddConfiguration Adds an interaction configuration for the viewport.
AddContent Associates content (owned by the caller) with the compositor,
assigns a composition device to the content, and specifies the
position of the content in the composition tree relative to
other composition visuals.
AddContent Adds secondary content, such as a panning indicator, to a
viewport.
AddContentWithCrossProcessChaining Associates content (owned by the component host) with the
compositor, assigns a composition device to the content, and
specifies the position of the content in the composition tree
relative to other composition visuals.
AddEventHandler Adds a new event handler to listen for viewport events.
CancelContact Cancel all scheduled calls to SetContact for this pointerId.
CancelDeferral Cancel the deferral set in DeferContact and process the
scheduled SetContact call for this pointerId.
CreateBehavior Factory method to create a behavior.
CreateContent The factory method that is used to create an instance of
secondary content (such as a panning indicator) inside a
viewport.
CreateViewport The factory method that is used to create a new
IDirectManipulationViewport object.
Deactivate Deactivates Direct Manipulation for processing input and
handling callbacks on the specified window.
T IT L E DESC RIP T IO N
DeferContact Specifies the amount of time to defer the execution of a call to
SetContact for this pointerId.
Disable Stops input processing by the viewport.
Enable Starts or resumes input processing by the viewport.
Flush Commits all pending updates in the compositor to the system
for rendering.
GetCenterPoint Retrieves the center point of the manipulation in content
coordinates.
GetContentRect Retrieves the bounding rectangle of the content, relative to
the bounding rectangle of the viewport (if defined).
GetContentTransform Retrieves the transform applied to the content.
GetInertiaEndTransform Gets the final transform, including inertia, of the primary
content.
GetNextFrameInfo Retrieves the composition timing information from the
compositor.
GetOutputTransform Gets the final transform applied to the content.
GetPrimaryContent Gets the primary content of a viewport that implements
IDirectManipulationContent and
IDirectManipulationPrimaryContent.
GetService Retrieves an IDirectManipulationDeferContactService object.
GetStatus Gets the status of the drag-drop interaction for the viewport
this behavior is attached to.
GetStatus Gets the state of the viewport.
GetTag Retrieves the tag object set on this content.
GetTag Gets the tag value of a viewport.
GetUpdateManager Gets a pointer to an IDirectManipulationUpdateManager
object that receives compositor updates.
GetViewport Retrieves the viewport that contains the content.
GetViewportRect Retrieves the rectangle for the viewport relative to the origin
of the viewport coordinate system specified by
SetViewportRect.
OnContentUpdated Called when content inside a viewport is updated.
T IT L E DESC RIP T IO N
OnDragDropStatusChange Called when a status change happens in the viewport that the
drag-and-drop behavior is attached to.
OnInteraction Called when an interaction is detected.
OnViewportStatusChanged Called when the status of a viewport changes.
OnViewportUpdated Called after all content in the viewport has been updated.
ProcessInput Passes keyboard and mouse messages to the manipulation
manager on the app's UI thread.
RegisterHitTestTarget Registers a dedicated thread for hit testing.
RegisterWaitHandleCallback Registers a callback that is triggered by a handle.
ReleaseAllContacts Removes all contacts that are associated with the viewport.
Inertia is started if the viewport supports inertia.
ReleaseContact Removes a contact that is associated with a viewport.
RemoveAllBehaviors Removes all behaviors added to the viewport.
RemoveBehavior Removes a behavior from the viewport that matches the given
cookie.
RemoveConfiguration Removes an interaction configuration for the viewport.
RemoveContent Removes content from the compositor.
RemoveContent Removes secondary content from a viewport.
RemoveEventHandler Removes an existing event handler from the viewport.
SetChaining Specifies the motion types supported in a viewport that can
be chained to a parent viewport.
SetConfiguration Performs the auto-scroll animation for the viewport this
behavior is attached to.
SetConfiguration Sets the configuration of the drag-drop interaction for the
viewport this behavior is attached to.
SetContact Specifies an association between a contact and the viewport.
SetContentRect Specifies the bounding rectangle of the content, relative to its
viewport.
SetHorizontalAlignment Sets the horizontal alignment of the primary content relative
to the viewport.
SetInputMode Specifies if input is visible to the UI thread.
T IT L E DESC RIP T IO N
SetManualGesture Sets which gestures are ignored by Direct Manipulation.
SetSnapCoordinate Specifies the coordinate system for snap points or snap
intervals.
SetSnapInterval Specifies snap points for the inertia end position at uniform
intervals.
SetSnapPoints Specifies the snap points for the inertia rest position.
SetSnapType Specifies the type of snap point.
SetTag Specifies the tag object for the content.
SetTag Sets a viewport tag.
SetUpdateManager Sets the update manager used to send compositor updates to
Direct Manipulation.
SetUpdateMode Specifies whether a viewport updates content manually
instead of during an input event.
SetVerticalAlignment Specifies the vertical alignment of the primary content in the
viewport.
SetViewportOptions Sets how the viewport handles input and output.
SetViewportRect Sets the bounding rectangle for the viewport, relative to the
origin of the viewport coordinate system.
SetViewportTransform Specifies the transform from the viewport coordinate system
to the window client coordinate system.
SetZoomBoundaries Specifies the minimum and maximum boundaries for zoom.
Stop Stops the manipulation and returns the viewport to a ready
state.
SyncContentTransform Modifies the content transform while maintaining the output
transform.
SyncDisplayTransform Specifies a display transform for the viewport, and
synchronizes the output transform with the new value of the
display transform.
UnregisterWaitHandleCallback Deregisters a callback.
Update Notifies the compositor when to update inertia animation.
Update Updates Direct Manipulation at the current time.
T IT L E DESC RIP T IO N
ZoomToRect Moves the viewport to a specific area of the primary content
and specifies whether to animate the transition.
Interfaces
T IT L E DESC RIP T IO N
IDirectManipulationAutoScrollBehavior Represents the auto-scroll animation behavior of content as it
approaches the boundary of a given axis or axes.
IDirectManipulationCompositor Represents a compositor object that associates manipulated
content with a drawing surface, such as canvas (Windows app
using JavaScript) or Canvas (Windows Store app using C++,
C#, or Visual Basic).
IDirectManipulationCompositor2 Represents a compositor object that associates manipulated
content with drawing surfaces across multiple processes.
IDirectManipulationContent Encapsulates content inside a viewport, where content
represents a visual surface clipped inside the viewport.
IDirectManipulationDeferContactService Represents a service for managing associations between a
contact and a viewport.
IDirectManipulationDragDropBehavior Represents behaviors for drag and drop interactions, which are
triggered by cross-slide or press-and-hold gestures.
IDirectManipulationDragDropEventHandler Defines methods to handle drag-drop behavior events.
IDirectManipulationFrameInfoProvider Represents a time-keeping object that measures the latency of
the composition infrastructure used by the application and
provides this data to Direct Manipulation.
IDirectManipulationInteractionEventHandler Defines methods to handle interactions when they are
detected.
IDirectManipulationManager Provides access to all the Direct Manipulation features and
APIs available to the client application.
IDirectManipulationManager2 Extends the IDirectManipulationManager interface that
provides access to all the Direct Manipulation features and
APIs available to the client application.
IDirectManipulationManager3 Extends the IDirectManipulationManager2 interface that
provides access to all the Direct Manipulation features and
APIs available to the client application.
IDirectManipulationPrimaryContent Encapsulates the primary content inside a viewport.
IDirectManipulationUpdateHandler Defines methods for handling manipulation update events.
IDirectManipulationUpdateManager Manages how compositor updates are sent to Direct
Manipulation.
T IT L E DESC RIP T IO N
IDirectManipulationViewport Defines a region within a window (referred to as a viewport)
that is able to receive and process input from user
interactions.
IDirectManipulationViewport2 Provides management of behaviors on a viewport. A behavior
affects the functionality of a particular part of the Direct
Manipulation workflow.
IDirectManipulationViewportEventHandler Defines methods for handling status and update events for
the viewport.
Direct2D
2/7/2020 • 79 minutes to read • Edit Online
Overview of the Direct2D technology.
To develop Direct2D, you need these headers:
d2d1.h
d2d1_1.h
d2d1_1helper.h
d2d1_2.h
d2d1_3.h
d2d1_3helper.h
d2d1effectauthor.h
d2d1effectauthor_1.h
d2d1effecthelpers.h
d2d1effecthelpers.hlsli
d2d1effects.h
d2d1effects_1.h
d2d1effects_2.h
d2d1helper.h
d2d1svg.h
dcommon.h
For programming guidance for this technology, see:
Direct2D
Class
T IT L E DESC RIP T IO N
ColorF Defines a set of constants that represents known colors and
provides convenience methods for instantiating different
colors.
Matrix3x2F The Matrix3x2F class represents a 3-by-2 matrix and provides
convenience methods for creating matrices.
Matrix4x4F The Matrix4x4F class represents a 4-by-4 matrix and provides
convenience methods for creating matrices.
Enumerations
T IT L E DESC RIP T IO N
T IT L E DESC RIP T IO N
D2D1_2DAFFINETRANSFORM_INTERPOLATION_MODE The interpolation mode to be used with the 2D affine
transform effect to scale the image. There are 6 scale modes
that range in quality and speed.
D2D1_2DAFFINETRANSFORM_PROP Identifiers for properties of the 2D affine transform effect.
D2D1_3DPERSPECTIVETRANSFORM_INTERPOLATION_MODE The interpolation mode the 3D perspective transform effect
uses on the image. There are 5 scale modes that range in
quality and speed.
D2D1_3DPERSPECTIVETRANSFORM_PROP Identifiers for the properties of the 3D perspective transform
effect.
D2D1_3DTRANSFORM_INTERPOLATION_MODE The interpolation mode the 3D transform effect uses on the
image. There are 5 scale modes that range in quality and
speed.
D2D1_3DTRANSFORM_PROP Identifiers for properties of the 3D transform effect.
D2D1_ALPHA_MODE Specifies how the alpha value of a bitmap or render target
should be treated.
D2D1_ANTIALIAS_MODE Specifies how the edges of nontext primitives are rendered.
D2D1_ARC_SIZE Specifies whether an arc should be greater than 180 degrees.
D2D1_ARITHMETICCOMPOSITE_PROP Identifiers for the properties of the Arithmetic composite
effect.
D2D1_ATLAS_PROP Identifiers for properties of the Atlas effect.
D2D1_BITMAP_INTERPOLATION_MODE Specifies the algorithm that is used when images are scaled or
rotated.
D2D1_BITMAP_OPTIONS Specifies how a bitmap can be used.
D2D1_BITMAPSOURCE_ALPHA_MODE Specifies the alpha mode of the output of the Bitmap source
effect.
D2D1_BITMAPSOURCE_INTERPOLATION_MODE The interpolation mode used to scale the image in the Bitmap
source effect.
D2D1_BITMAPSOURCE_ORIENTATION Speficies whether a flip and/or rotation operation should be
performed by the Bitmap source effect.
D2D1_BITMAPSOURCE_PROP Identifiers for properties of the Bitmap source effect.
D2D1_BLEND Specifies how one of the color sources is to be derived and
optionally specifies a preblend operation on the color source.
D2D1_BLEND_MODE The blend mode used for the Blend effect.
D2D1_BLEND_OPERATION Specifies the blend operation on two color sources.
T IT L E DESC RIP T IO N
D2D1_BLEND_PROP Identifiers for properties of the Blend effect.
D2D1_BORDER_EDGE_MODE The edge mode for the Border effect.
D2D1_BORDER_MODE Specifies how the Crop effect handles the crop rectangle falling
on fractional pixel coordinates.
D2D1_BORDER_PROP Identifiers for properties of the Border effect.
D2D1_BRIGHTNESS_PROP Identifiers for the properties of the Brightness effect.
D2D1_BUFFER_PRECISION Represents the bit depth of the imaging pipeline in Direct2D.
D2D1_CAP_STYLE Describes the shape at the end of a line or segment.
D2D1_CHANGE_TYPE Describes flags that influence how the renderer interacts with
a custom vertex shader.
D2D1_CHANNEL_DEPTH Allows a caller to control the channel depth of a stage in the
rendering pipeline.
D2D1_CHANNEL_SELECTOR Specifies the color channel the Displacement map
effectextracts the intensity from and uses it to spatially
displace the image in the X or Y direction.
D2D1_CHROMAKEY_PROP Identifiers for properties of the Chroma-key effect.
D2D1_COLOR_BITMAP_GLYPH_SNAP_OPTION Specifies the pixel snapping policy when rendering color
bitmap glyphs.
D2D1_COLOR_CONTEXT_TYPE Specifies which way a color profile is defined.
D2D1_COLOR_INTERPOLATION_MODE Defines how to interpolate between colors.
D2D1_COLOR_SPACE Defines options that should be applied to the color space.
D2D1_COLORMANAGEMENT_ALPHA_MODE Indicates how the Color management effect should interpret
alpha data that is contained in the input image.
D2D1_COLORMANAGEMENT_PROP Identifiers for the properties of the Color management effect.
D2D1_COLORMANAGEMENT_QUALITY The quality level of the transform for the Color management
effect.
D2D1_COLORMANAGEMENT_RENDERING_INTENT Specifies which ICC rendering intent the Color management
effect should use.
D2D1_COLORMATRIX_ALPHA_MODE The alpha mode of the output of the Color matrix effect.
D2D1_COLORMATRIX_PROP Identifiers for the properties of the Color matrix effect.
T IT L E DESC RIP T IO N
D2D1_COMBINE_MODE Specifies the different methods by which two geometries can
be combined.
D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS Specifies additional features supportable by a compatible
render target when it is created. This enumeration allows a
bitwise combination of its member values.
D2D1_COMPOSITE_MODE Used to specify the blend mode for all of the Direct2D
blending operations.
D2D1_COMPOSITE_PROP Identifiers for properties of the Composite effect.
D2D1_CONTRAST_PROP Identifiers for properties of the Contrast effect.
D2D1_CONVOLVEMATRIX_PROP Identifiers for properties of the Convolve matrix effect.
D2D1_CONVOLVEMATRIX_SCALE_MODE The interpolation mode the Convolve matrix effect uses to
scale the image to the corresponding kernel unit length. There
are six scale modes that range in quality and speed.
D2D1_CROP_PROP Identifiers for properties of the Crop effect.
D2D1_DASH_STYLE Describes the sequence of dashes and gaps in a stroke.
D2D1_DC_INITIALIZE_MODE Specifies how a device context is initialized for GDI rendering
when it is retrieved from the render target.
D2D1_DEBUG_LEVEL Indicates the type of information provided by the Direct2D
Debug Layer.
D2D1_DEVICE_CONTEXT_OPTIONS This specifies options that apply to the device context for its
lifetime.
D2D1_DIRECTIONALBLUR_OPTIMIZATION Specifies the optimization mode for the Directional blur effect.
D2D1_DIRECTIONALBLUR_PROP Identifiers for properties of the Directional blur effect.
D2D1_DISCRETETRANSFER_PROP Identifiers for properties of the Discrete transfer effect.
D2D1_DISPLACEMENTMAP_PROP Identifiers for properties of the Displacement map effect.
D2D1_DISTANTDIFFUSE_PROP Identifiers for properties of the Distant-diffuse lighting effect.
D2D1_DISTANTDIFFUSE_SCALE_MODE The interpolation mode the effect uses to scale the image to
the corresponding kernel unit length. There are six scale
modes that range in quality and speed.
D2D1_DISTANTSPECULAR_PROP Identifiers for properties of the Distant-specular lighting effect.
D2D1_DISTANTSPECULAR_SCALE_MODE The interpolation mode the Distant-specular lighting effect
uses to scale the image to the corresponding kernel unit
length. There are six scale modes that range in quality and
speed.
T IT L E DESC RIP T IO N
D2D1_DPICOMPENSATION_INTERPOLATION_MODE The interpolation mode the DPI compensation effect uses to
scale the image.
D2D1_DPICOMPENSATION_PROP Identifiers for properties of the DPI compensation effect.
D2D1_DRAW_TEXT_OPTIONS Specifies whether text snapping is suppressed or clipping to
the layout rectangle is enabled. This enumeration allows a
bitwise combination of its member values.
D2D1_EDGEDETECTION_MODE Values for the D2D1_EDGEDETECTION_PROP_MODE property
of the Edge Detection effect.
D2D1_EDGEDETECTION_PROP Identifiers for properties of the Edge Detection effect.
D2D1_EMBOSS_PROP Identifiers for properties of the Emboss effect.
D2D1_EXPOSURE_PROP Identifiers for properties of the Exposure effect.
D2D1_EXTEND_MODE Specifies how a brush paints areas outside of its normal
content area.
D2D1_FACTORY_TYPE Specifies whether Direct2D provides synchronization for an
ID2D1Factory and the resources it creates, so that they may
be safely accessed from multiple threads.
D2D1_FEATURE Defines capabilities of the underlying Direct3D device which
may be queried using
ID2D1EffectContext::CheckFeatureSupport.
D2D1_FEATURE_LEVEL Describes the minimum DirectX support required for hardware
rendering by a render target.
D2D1_FIGURE_BEGIN Indicates whether a specific ID2D1SimplifiedGeometrySink
figure is filled or hollow.
D2D1_FIGURE_END Indicates whether a specific ID2D1SimplifiedGeometrySink
figure is open or closed.
D2D1_FILL_MODE Specifies how the intersecting areas of geometries or figures
are combined to form the area of the composite geometry.
D2D1_FILTER Represents filtering modes that a transform may select to use
on input textures.
D2D1_FLOOD_PROP Identifiers for properties of the Flood effect.
D2D1_GAMMA Specifies which gamma is used for interpolation.
D2D1_GAMMA1 Determines what gamma is used for interpolation and
blending.
D2D1_GAMMATRANSFER_PROP Identifiers for properties of the Gamma transfer effect.
T IT L E DESC RIP T IO N
D2D1_GAUSSIANBLUR_OPTIMIZATION The optimization mode for the Gaussian blur effect.
D2D1_GAUSSIANBLUR_PROP Identifiers for properties of the Gaussian blur effect.
D2D1_GEOMETRY_RELATION Describes how one geometry object is spatially related to
another geometry object.
D2D1_GEOMETRY_SIMPLIFICATION_OPTION Specifies how a geometry is simplified to an
ID2D1SimplifiedGeometrySink.
D2D1_HDRTONEMAP_DISPLAY_MODE Defines constants that specify a value for the
D2D1_HDRTONEMAP_PROP_DISPLAY_MODE property of the
HDR Tone Map effect.
D2D1_HDRTONEMAP_PROP Defines constants that identify the top level properties of the
HDR Tone Map effect.
D2D1_HIGHLIGHTSANDSHADOWS_INPUT_GAMMA Values for the
D2D1_HIGHLIGHTSANDSHADOWS_PROP_INPUT_GAMMA
property of the Highlights and Shadows effect.
D2D1_HIGHLIGHTSANDSHADOWS_PROP Identifiers for properties of the Highlights and Shadows effect.
D2D1_HISTOGRAM_PROP Identifiers for properties of the Histogram effect.
D2D1_HUEROTATION_PROP Identifiers for properties of the Hue rotate effect.
D2D1_HUETORGB_INPUT_COLOR_SPACE Values for the D2D1_HUETORGB_PROP_INPUT_COLOR_SPACE
property of the Hue to RGB effect.
D2D1_HUETORGB_PROP Identifiers for properties of the Hue to RGB effect.
D2D1_IMAGE_SOURCE_FROM_DXGI_OPTIONS Option flags controlling primary conversion performed by
CreateImageSourceFromDxgi, if any.
D2D1_IMAGE_SOURCE_LOADING_OPTIONS Controls option flags for a new ID2D1ImageSource when it is
created.
D2D1_INK_NIB_SHAPE Specifies the appearance of the ink nib (pen tip) as part of an
D2D1_INK_STYLE_PROPERTIES structure.
D2D1_INTERPOLATION_MODE This is used to specify the quality of image scaling with
ID2D1DeviceContext::DrawImage and with the 2D affine
transform effect.
D2D1_LAYER_OPTIONS Specifies options that can be applied when a layer resource is
applied to create a layer.
D2D1_LAYER_OPTIONS1 Specifies how the layer contents should be prepared.
D2D1_LINE_JOIN Describes the shape that joins two lines or segments.
D2D1_LINEARTRANSFER_PROP Identifiers for properties of the Linear transfer effect.
T IT L E DESC RIP T IO N
D2D1_LOOKUPTABLE3D_PROP Identifiers for the properties of the 3D Lookup Table effect.
D2D1_MAP_OPTIONS Specifies how the memory to be mapped from the
corresponding ID2D1Bitmap1 should be treated.
D2D1_MORPHOLOGY_MODE The mode for the Morphology effect.
D2D1_MORPHOLOGY_PROP Identifiers for properties of the Morphology effect.
D2D1_OPACITY_MASK_CONTENT Describes whether an opacity mask contains graphics or text.
Direct2D uses this information to determine which gamma
space to use when blending the opacity mask.
D2D1_OPACITYMETADATA_PROP Identifiers for properties of the Opacity metadata effect.
D2D1_ORIENTATION Specifies the flip and rotation at which an image appears.
D2D1_PATCH_EDGE_MODE Specifies how to render gradient mesh edges.
D2D1_PATH_SEGMENT Indicates whether a segment should be stroked and whether
the join between this segment and the previous one should be
smooth. This enumeration allows a bitwise combination of its
member values.
D2D1_PIXEL_OPTIONS Indicates how pixel shader sampling will be restricted.
D2D1_POINTDIFFUSE_PROP Identifiers for properties of the Point-diffuse lighting effect.
D2D1_POINTDIFFUSE_SCALE_MODE The interpolation mode the Point-diffuse lighting effect uses to
scale the image to the corresponding kernel unit length. There
are six scale modes that range in quality and speed.
D2D1_POINTSPECULAR_PROP Identifiers for properties of the Point-specular lighting effect.
D2D1_POINTSPECULAR_SCALE_MODE The interpolation mode the Point-specular lighting effect uses
to scale the image to the corresponding kernel unit length.
There are six scale modes that range in quality and speed.
D2D1_POSTERIZE_PROP Identifiers for properties of the Posterize effect.
D2D1_PRESENT_OPTIONS Describes how a render target behaves when it presents its
content. This enumeration allows a bitwise combination of its
member values.
D2D1_PRIMITIVE_BLEND Used to specify the geometric blend mode for all Direct2D
primitives.
D2D1_PRINT_FONT_SUBSET_MODE Defines when font resources should be subset during printing.
D2D1_PROPERTY Specifies the indices of the system properties present on the
ID2D1Properties interface for an ID2D1Effect.
T IT L E DESC RIP T IO N
D2D1_PROPERTY_TYPE Specifies the types of properties supported by the Direct2D
property interface.
D2D1_RENDER_TARGET_TYPE Describes whether a render target uses hardware or software
rendering, or if Direct2D should select the rendering mode.
D2D1_RENDER_TARGET_USAGE Describes how a render target is remoted and whether it
should be GDI-compatible. This enumeration allows a bitwise
combination of its member values.
D2D1_RENDERING_PRIORITY The rendering priority affects the extent to which Direct2D will
throttle its rendering workload.
D2D1_RGBTOHUE_OUTPUT_COLOR_SPACE Values for the
D2D1_RGBTOHUE_PROP_OUTPUT_COLOR_SPACE property of
the RGB to Hue effect.
D2D1_RGBTOHUE_PROP Indentifiers for properties of the RGB to Hue effect.
D2D1_SATURATION_PROP Identifiers for properties of the Saturation effect.
D2D1_SCALE_INTERPOLATION_MODE The interpolation mode the Scale effect uses to scale the
image. There are 6 scale modes that range in quality and
speed.
D2D1_SCALE_PROP Identifiers for properties of the Scale effect.
D2D1_SEPIA_PROP Identifiers for properties of the Sepia effect.
D2D1_SHADOW_OPTIMIZATION The level of performance optimization for the Shadow effect.
D2D1_SHADOW_PROP Identifiers for properties of the Shadow effect.
D2D1_SHARPEN_PROP Identifiers for properties of the Sharpen effect.
D2D1_SPOTDIFFUSE_PROP Identifiers for properties of the Spot-diffuse lighting effect.
D2D1_SPOTDIFFUSE_SCALE_MODE The interpolation mode the Spot-diffuse lighting effect uses to
scale the image to the corresponding kernel unit length. There
are six scale modes that range in quality and speed.
D2D1_SPOTSPECULAR_PROP Identifiers for properties of the Spot-specular lighting effect.
D2D1_SPOTSPECULAR_SCALE_MODE The interpolation mode the Spot-specular lighting effect uses
to scale the image to the corresponding kernel unit length.
There are six scale modes that range in quality and speed.
D2D1_SPRITE_OPTIONS Specifies additional aspects of how a sprite batch is to be
drawn, as part of a call to
ID2D1DeviceContext3::DrawSpriteBatch.
D2D1_STRAIGHTEN_PROP Identifiers for properties of the Straighten effect.
T IT L E DESC RIP T IO N
D2D1_STRAIGHTEN_SCALE_MODE Values for the D2D1_STRAIGHTEN_PROP_SCALE_MODE
property of the Straighten effect.
D2D1_STROKE_TRANSFORM_TYPE Defines how the world transform, dots per inch (dpi), and
stroke width affect the shape of the pen used to stroke a
primitive.
D2D1_SUBPROPERTY Specifies the indices of the system sub-properties that may be
present in any property.
D2D1_SVG_ASPECT_ALIGN The alignment portion of the SVG preserveAspectRatio
attribute.
D2D1_SVG_ASPECT_SCALING The meetOrSlice portion of the SVG preserveAspectRatio
attribute.
D2D1_SVG_ATTRIBUTE_POD_TYPE Defines the type of SVG POD attribute to set or get.
D2D1_SVG_ATTRIBUTE_STRING_TYPE Defines the type of SVG string attribute to set or get.
D2D1_SVG_DISPLAY Specifies a value for the SVG display property.
D2D1_SVG_LENGTH_UNITS Specifies the units for an SVG length.
D2D1_SVG_LINE_CAP Specifies a value for the SVG stroke-linecap property.
D2D1_SVG_LINE_JOIN Specifies a value for the SVG stroke-linejoin property.
D2D1_SVG_OVERFLOW Specifies a value for the SVG overflow property.
D2D1_SVG_PAINT_TYPE Specifies the paint type for an SVG fill or stroke.
D2D1_SVG_PATH_COMMAND Represents a path commmand. Each command may reference
floats from the segment data. Commands ending in
_ABSOLUTE interpret data as absolute coordinate. Commands
ending in _RELATIVE interpret data as being relative to the
previous point.
D2D1_SVG_UNIT_TYPE Defines the coordinate system used for SVG gradient or
clipPath elements.
D2D1_SVG_VISIBILITY Specifies a value for the SVG visibility property.
D2D1_SWEEP_DIRECTION Defines the direction that an elliptical arc is drawn.
D2D1_TABLETRANSFER_PROP Identifiers for properties of the Table transfer effect.
D2D1_TEMPERATUREANDTINT_PROP Identifiers for properties of the Temperature and Tint effect.
D2D1_TEXT_ANTIALIAS_MODE Describes the antialiasing mode used for drawing text.
T IT L E DESC RIP T IO N
D2D1_THREADING_MODE Specifies the threading mode used while simultaneously
creating the device, factory, and device context.
D2D1_TILE_PROP Identifiers for properties of the Tile effect.
D2D1_TRANSFORMED_IMAGE_SOURCE_OPTIONS Option flags for transformed image sources.
D2D1_TURBULENCE_NOISE The turbulence noise mode for the Turbulence effect. Indicates
whether to generate a bitmap based on Fractal Noise or the
Turbulence function.
D2D1_TURBULENCE_PROP Identifiers for properties of the Turbulence effect.
D2D1_UNIT_MODE Specifies how units in Direct2D will be interpreted.
D2D1_VERTEX_OPTIONS Describes flags that influence how the renderer interacts with
a custom vertex shader.
D2D1_VERTEX_USAGE Indicates whether the vertex buffer changes infrequently or
frequently.
D2D1_VIGNETTE_PROP Identifiers for properties of the Vignette effect.
D2D1_WHITELEVELADJUSTMENT_PROP Defines constants that identify the top level properties of the
White Level Adjustment effect.
D2D1_WINDOW_STATE Describes whether a window is occluded.
D2D1_YCBCR_CHROMA_SUBSAMPLING Specifies the chroma subsampling of the input chroma image
used by the YCbCr effect.
D2D1_YCBCR_INTERPOLATION_MODE Specifies the interpolation mode for the YCbCr effect.
D2D1_YCBCR_PROP Identifiers for properties of the YCbCr effect.
Functions
T IT L E DESC RIP T IO N
AddArc Creates a single arc and adds it to the path geometry.
AddArc Adds a single arc to the path geometry.
AddBezier Creates a cubic Bezier curve between the current point and
the specified endpoint.
AddBezier Creates a cubic Bezier curve between the current point and
the specified end point.
AddBeziers Creates a sequence of cubic Bezier curves and adds them to
the geometry sink.
T IT L E DESC RIP T IO N
AddLine Creates a line segment between the current point and the
specified end point and adds it to the geometry sink.
AddLines Creates a sequence of lines using the specified points and
adds them to the geometry sink.
AddNode Adds the provided node to the transform graph.
AddPage Converts Direct2D primitives in the passed-in command list
into a fixed page representation for use by the print
subsystem.
AddQuadraticBezier Creates a quadratic Bezier curve between the current point
and the specified end point and adds it to the geometry sink.
AddQuadraticBezier Creates a quadratic Bezier curve between the current point
and the specified end point.
AddQuadraticBeziers Adds a sequence of quadratic Bezier segments as an array in a
single call.
AddSegments Adds the given segments to the end of this ink object.
AddSprites Adds the given sprites to the end of this sprite batch.
AddTriangles Copies the specified triangles to the sink.
AppendChild Appends an element to the list of children.
ArcSegment Creates a D2D1_ARC_SEGMENT structure.
BeginDraw Initiates drawing on this render target.
BeginDraw Notifies the implementation of the command sink that
drawing is about to commence.
BeginFigure Starts a new figure at the specified point.
BezierSegment Creates a D2D1_BEZIER_SEGMENT structure.
BindDC Binds the render target to the device context to which it issues
drawing commands.
BitmapBrushProperties Creates a D2D1_BITMAP_BRUSH_PROPERTIES structure.
BitmapBrushProperties1 Creates a D2D1_BITMAP_BRUSH_PROPERTIES1 structure.
BitmapProperties Creates a D2D1_BITMAP_PROPERTIES structure.
BitmapProperties1 Creates a D2D1_BITMAP_PROPERTIES1 structure.
T IT L E DESC RIP T IO N
BlendImage Draws an image to the device context using the specified
blend mode. Results are equivalent to using Direct2D's built-in
Blend effect.
BlendImage Draws an image to the device context using the specified
blend mode. Results are equivalent to using Direct2D's built-in
Blend effect.
BrushProperties Creates a D2D1_BRUSH_PROPERTIES structure.
CalculateThreadgroups This method allows a compute-shader–based transform to
select the number of thread groups to execute based on the
number of output pixels it needs to fill.
CheckFeatureSupport This indicates whether an optional capability is supported by
the D3D device.
CheckWindowState Indicates whether the HWND associated with this render
target is occluded.
Clear Clears the drawing area to the specified color.
Clear Clears the drawing area to the specified color.
Clear Clears the drawing area to the specified color.
Clear Clears the transform nodes and all connections from the
transform graph.
Clear Removes all sprites from this sprite batch.
ClearResources Clears all of the rendering resources used by Direct2D.
Clone Creates a clone of this attribute value. On creation, the cloned
attribute is not set on any element.
Close Closes the geometry sink, indicates whether it is in an error
state, and resets the sink's error state.
Close Closes the sink and returns its error status.
Close Instructs the command list to stop accepting commands so
that you can use it as an input to an effect or in a call to
ID2D1DeviceContext::DrawImage.
Close Passes all remaining resources to the print sub-system, then
clean up and close the current print job.
ColorF Instantiates a new instance of the ColorF class that contains
the specified RGB and alpha values.
ColorF Instantiates a new instance of the ColorF class that contains
the specified red, green, blue, and alpha values.
T IT L E DESC RIP T IO N
CombineWithGeometry Combines this geometry with the specified geometry and
stores the result in an ID2D1SimplifiedGeometrySink.
CombineWithGeometry Combines this geometry with the specified geometry and
stores the result in an ID2D1SimplifiedGeometrySink.
CombineWithGeometry Combines this geometry with the specified geometry and
stores the result in an ID2D1SimplifiedGeometrySink.
CombineWithGeometry Combines this geometry with the specified geometry and
stores the result in an ID2D1SimplifiedGeometrySink.
CompareWithGeometry Describes the intersection between this geometry and the
specified geometry. The comparison is performed by using the
specified flattening tolerance.
CompareWithGeometry Describes the intersection between this geometry and the
specified geometry. The comparison is performed using the
specified flattening tolerance.
CompareWithGeometry Describes the intersection between this geometry and the
specified geometry. The comparison is performed using the
default flattening tolerance.
CompareWithGeometry Describes the intersection between this geometry and the
specified geometry. The comparison is performed using the
default flattening tolerance.
ComputeArea Computes the area of the geometry after it has been
transformed by the specified matrix and flattened using the
specified tolerance.
ComputeArea Computes the area of the geometry after it has been
transformed by the specified matrix and flattened using the
specified tolerance.
ComputeArea Computes the area of the geometry after it has been
transformed by the specified matrix and flattened using the
specified tolerance.
ComputeArea Computes the area of the geometry after it has been
transformed by the specified matrix and flattened using the
default tolerance.
ComputeLength Calculates the length of the geometry as though each
segment were unrolled into a line.
ComputeLength Calculates the length of the geometry as though each
segment were unrolled into a line.
ComputeLength Calculates the length of the geometry as though each
segment were unrolled into a line.
ComputeLength Calculates the length of the geometry as though each
segment were unrolled into a line.
T IT L E DESC RIP T IO N
ComputePointAndSegmentAtLength Computes the point that exists at a given distance along the
path geometry along with the index of the segment the point
is on and the directional vector at that point.
ComputePointAndSegmentAtLength Computes the point that exists at a given distance along the
path geometry along with the index of the segment the point
is on and the directional vector at that point.
ComputePointAndSegmentAtLength Computes the point that exists at a given distance along the
path geometry along with the index of the segment the point
is on and the directional vector at that point.
ComputePointAndSegmentAtLength Computes the point that exists at a given distance along the
path geometry along with the index of the segment the point
is on and the directional vector at that point.
ComputePointAtLength Calculates the point and tangent vector at the specified
distance along the geometry after it has been transformed by
the specified matrix and flattened using the specified tolerance.
ComputePointAtLength Calculates the point and tangent vector at the specified
distance along the geometry after it has been transformed by
the specified matrix and flattened using the specified tolerance.
ComputePointAtLength Calculates the point and tangent vector at the specified
distance along the geometry after it has been transformed by
the specified matrix and flattened using the default tolerance.
ComputePointAtLength Calculates the point and tangent vector at the specified
distance along the geometry after it has been transformed by
the specified matrix and flattened using the default tolerance.
ConnectNode Connects two nodes inside the transform graph.
ConnectToEffectInput Connects a transform node inside the graph to the
corresponding effect input of the encapsulating effect.
ConvertColorSpace Convert a D2D1_COLOR_F from one color space to another.
CopyFromBitmap Copies the specified region from the specified bitmap into the
current bitmap.
CopyFromMemory Copies the specified region from memory into the current
bitmap.
CopyFromRenderTarget Copies the specified region from the specified render target
into the current bitmap.
CreateBitmap Creates an ID2D1BitmapBrush from the specified bitmap.
T IT L E DESC RIP T IO N
CreateBitmap Creates a Direct2D bitmap from a pointer to in-memory
source data.
CreateBitmap Creates an uninitialized Direct2D bitmap.
CreateBitmap Creates a bitmap that can be used as a target surface, for
reading back to the CPU, or as a source for the DrawBitmap
and ID2D1BitmapBrush APIs. In addition, color context
information can be passed to the bitmap.
CreateBitmap Creates a bitmap that can be used as a target surface, for
reading back to the CPU, or as a source for the DrawBitmap
and ID2D1BitmapBrush APIs. In addition, color context
information can be passed to the bitmap.
CreateBitmapBrush Creates an ID2D1BitmapBrush from the specified bitmap.
CreateBitmapBrush Creates an ID2D1BitmapBrush from the specified bitmap. The
brush uses the default values for its extend mode,
interpolation mode, opacity, and transform.
CreateBitmapBrush Creates an ID2D1BitmapBrush from the specified bitmap. The
brush uses the default values for its opacity and transform.
CreateBitmapBrush Creates an ID2D1BitmapBrush from the specified bitmap.
CreateBitmapBrush Creates a bitmap brush, the input image is a Direct2D bitmap
object.
CreateBitmapBrush Creates a bitmap brush, the input image is a Direct2D bitmap
object.
CreateBitmapBrush Creates a bitmap brush, the input image is a Direct2D bitmap
object.
CreateBitmapBrush Creates a bitmap brush, the input image is a Direct2D bitmap
object.
CreateBitmapFromDxgiSurface Creates a bitmap from a DXGI surface that can be set as a
target surface or have additional color context information
specified.
CreateBitmapFromDxgiSurface Creates a bitmap from a DXGI surface that can be set as a
target surface or have additional color context information
specified.
CreateBitmapFromWicBitmap Creates an ID2D1Bitmap by copying the specified Microsoft
Windows Imaging Component (WIC) bitmap.
CreateBitmapFromWicBitmap Creates an ID2D1Bitmap by copying the specified Microsoft
Windows Imaging Component (WIC) bitmap.
CreateBitmapFromWicBitmap Creates an ID2D1Bitmap by copying the specified Microsoft
Windows Imaging Component (WIC) bitmap.
T IT L E DESC RIP T IO N
CreateBitmapFromWicBitmap Creates a Direct2D bitmap by copying a WIC bitmap.
CreateBitmapFromWicBitmap Creates a Direct2D bitmap by copying a WIC bitmap.
CreateBitmapFromWicBitmap Creates an ID2D1Bitmap by copying the specified Microsoft
Windows Imaging Component (WIC) bitmap.
CreateBlendTransform This creates a blend transform that can be inserted into a
transform graph.
CreateBorderTransform Creates a transform that extends its input infinitely in every
direction based on the passed in extend mode.
CreateBoundsAdjustmentTransform Creates and returns a bounds adjustment transform.
CreateChild Creates an element from a tag name. The element is
appended to the list of children.
CreateColorContext Creates a color context.
CreateColorContext Creates a color context from a color space.
CreateColorContextFromDxgiColorSpace Creates a color context from a DXGI color space type. It is only
valid to use this with the Color Management Effect in 'Best'
mode.
CreateColorContextFromFilename Creates a color context by loading it from the specified
filename. The profile bytes are the contents of the file specified
by Filename.
CreateColorContextFromFilename Creates a color context by loading it from the specified
filename. The profile bytes are the contents of the file specified
by filename.
CreateColorContextFromSimpleColorProfile Creates a color context from a simple color profile. It is only
valid to use this with the Color Management Effect in 'Best'
mode.
CreateColorContextFromSimpleColorProfile Creates a color context from a simple color profile. It is only
valid to use this with the Color Management Effect in 'Best'
mode.
CreateColorContextFromWicColorContext Creates a color context from an IWICColorContext. The
D2D1ColorContext space of the resulting context varies, see
Remarks for more info.
CreateColorContextFromWicColorContext Creates a color context from an IWICColorContext. The
D2D1ColorContext space of the resulting context varies, see
Remarks for more info.
CreateCommandList Creates a ID2D1CommandList object.
T IT L E DESC RIP T IO N
CreateCompatibleRenderTarget Creates a new bitmap render target for use during
intermediate offscreen drawing that is compatible with the
current render target .
CreateCompatibleRenderTarget Creates a new bitmap render target for use during
intermediate offscreen drawing that is compatible with the
current render target and has the same size, DPI, and pixel
format (but not alpha mode) as the current render target.
CreateCompatibleRenderTarget Creates a new bitmap render target for use during
intermediate offscreen drawing that is compatible with the
current render target and has the same pixel format (but not
alpha mode) as the current render target.
CreateCompatibleRenderTarget Creates a bitmap render target for use during intermediate
off-screen drawing that is compatible with the current render
target. The new bitmap render target has the same pixel
format (but not alpha mode) as the current render target.
CreateCompatibleRenderTarget Creates a bitmap render target for use during intermediate
offscreen drawing that is compatible with the current render
target.
CreateCompatibleRenderTarget Creates a bitmap render target for use during intermediate
offscreen drawing that is compatible with the current render
target.
CreateDCRenderTarget Creates a render target that draws to a Windows Graphics
Device Interface (GDI) device context.
CreateDevice Creates a ID2D1Device object.
CreateDevice Creates an ID2D1Device2 object.
CreateDevice Creates an ID2D1Device3 object.
CreateDevice Creates an ID2D1Device4 object.
CreateDevice Creates a new Direct2D device from the given IDXGIDevice.
CreateDevice Creates a new Direct2D device from the given IDXGIDevice.
CreateDevice Creates an ID2D1Device1 object.
CreateDeviceContext Creates a new device context from a Direct2D device.
CreateDeviceContext Creates a new ID2D1DeviceContext2 from a Direct2D device.
CreateDeviceContext Creates a new ID2D1DeviceContext3 from this Direct2D
device.
CreateDeviceContext Creates a new ID2D1DeviceContext4 from this Direct2D
device.
T IT L E DESC RIP T IO N
CreateDeviceContext Creates a new device context with no initially assigned target.
CreateDeviceContext Creates a new device context with no initially assigned target.
CreateDrawingStateBlock Creates an ID2D1DrawingStateBlock that can be used with the
SaveDrawingState and RestoreDrawingState methods of a
render target.
CreateDrawingStateBlock Creates an ID2D1DrawingStateBlock that can be used with the
SaveDrawingState and RestoreDrawingState methods of a
render target.
CreateDrawingStateBlock Creates an ID2D1DrawingStateBlock that can be used with the
SaveDrawingState and RestoreDrawingState methods of a
render target.
CreateDrawingStateBlock Creates a new drawing state block, this can be used in
subsequent SaveDrawingState and RestoreDrawingState
operations on the render target.
CreateDrawingStateBlock Creates a new drawing state block, this can be used in
subsequent SaveDrawingState and RestoreDrawingState
operations on the render target.
CreateDrawingStateBlock Creates a new drawing state block, this can be used in
subsequent SaveDrawingState and RestoreDrawingState
operations on the render target.
CreateDxgiSurfaceRenderTarget Creates a render target that draws to a DirectX Graphics
Infrastructure (DXGI) surface.
CreateDxgiSurfaceRenderTarget Creates a render target that draws to a DirectX Graphics
Infrastructure (DXGI) surface.
CreateEffect Creates an effect for the specified class ID.
CreateEffect Creates a Direct2D effect for the specified class ID.
CreateEllipseGeometry Creates an ID2D1EllipseGeometry.
CreateEllipseGeometry Creates an ID2D1EllipseGeometry.
CreateFilledGeometryRealization Creates a device-dependent representation of the fill of the
geometry that can be subsequently rendered.
CreateGdiMetafile Creates a new ID2D1GdiMetafile object that you can use to
replay metafile content.
CreateGeometryGroup Creates an ID2D1GeometryGroup, which is an object that
holds other geometries.
CreateGradientMesh Creates a new ID2D1GradientMesh instance using the given
array of patches.
T IT L E DESC RIP T IO N
CreateGradientStopCollection Creates an ID2D1GradientStopCollection from the specified
array of D2D1_GRADIENT_STOP structures.
CreateGradientStopCollection Creates an ID2D1GradientStopCollection from the specified
gradient stops that uses the D2D1_GAMMA_2_2 color
interpolation gamma and the clamp extend mode.
CreateGradientStopCollection Creates a gradient stop collection, enabling the gradient to
contain color channels with values outside of [0,1] and also
enabling rendering to a high-color render target with
interpolation in sRGB space.
CreateHwndRenderTarget Creates an ID2D1HwndRenderTarget, a render target that
renders to a window.
CreateHwndRenderTarget Creates an ID2D1HwndRenderTarget, a render target that
renders to a window.
CreateImageBrush Creates an image brush. The input image can be any type of
image, including a bitmap, effect, or a command list.
CreateImageBrush Creates an image brush. The input image can be any type of
image, including a bitmap, effect, or a command list.
CreateImageBrush Creates an image brush. The input image can be any type of
image, including a bitmap, effect, or a command list.
CreateImageSourceFromDxgi Creates an image source from a set of DXGI surface(s). The
YCbCr surface(s) are converted to RGBA automatically during
subsequent drawing.
CreateImageSourceFromWic Creates an image source object from a WIC bitmap source,
while populating all pixel memory within the image source.
The image is loaded and stored while using a minimal amount
of memory.
CreateImageSourceFromWic Creates an image source object from a WIC bitmap source,
while populating all pixel memory within the image source.
The image is loaded and stored while using a minimal amount
of memory.
CreateImageSourceFromWic Creates an image source object from a WIC bitmap source,
while populating all pixel memory within the image source.
The image is loaded and stored while using a minimal amount
of memory.
CreateInk Creates a new ID2D1Ink object that starts at the given point.
CreateInk Creates a new ID2D1Ink object that starts at the given point.
CreateInkStyle Creates a new ID2D1InkStyle object, for use with ink rendering
methods such as DrawInk.
CreateInkStyle Creates a new ID2D1InkStyle object, for use with ink rendering
methods such as DrawInk.
T IT L E DESC RIP T IO N
CreateLayer Creates a layer resource that can be used with this render
target and its compatible render targets.
CreateLayer Creates a layer resource that can be used with this render
target and its compatible render targets. The new layer has
the specified initial size.
CreateLayer Creates a layer resource that can be used with this render
target and its compatible render targets.
CreateLinearGradientBrush Creates an ID2D1LinearGradientBrush object for painting
areas with a linear gradient.
CreateLinearGradientBrush Creates an ID2D1LinearGradientBrush that contains the
specified gradient stops, has no transform, and has a base
opacity of 1.0.
CreateLinearGradientBrush Creates an ID2D1LinearGradientBrush that contains the
specified gradient stops and has the specified transform and
base opacity.
CreateLookupTable3D Creates a 3D lookup table for mapping a 3-channel input to a
3-channel output. The table data must be provided in 4-
channel format.
CreateLookupTable3D Creates a 3D lookup table for mapping a 3-channel input to a
3-channel output. The table data must be provided in 4-
channel format.
CreateMesh Create a mesh that uses triangles to describe a shape.
CreateOffsetTransform Creates and returns an offset transform.
CreatePaint Creates a paint object which can be used to set the 'fill' or
'stroke' properties.
CreatePaint Creates a paint object which can be used to set the 'fill' or
'stroke' properties.
CreatePathData Creates a path data object which can be used to set a 'd'
attribute on a 'path' element.
CreatePathGeometry Creates an empty ID2D1PathGeometry.
CreatePathGeometry Creates an ID2D1PathGeometry1 object.
CreatePathGeometry Creates a path geometry object representing the path data.
CreatePointCollection Creates a points object which can be used to set a points
attribute on a polygon or polyline element.
T IT L E DESC RIP T IO N
CreatePrintControl Creates an ID2D1PrintControl object that converts Direct2D
primitives stored in ID2D1CommandList into a fixed page
representation. The print sub-system then consumes the
primitives.
CreatePrintControl Creates an ID2D1PrintControl object that converts Direct2D
primitives stored in ID2D1CommandList into a fixed page
representation. The print sub-system then consumes the
primitives.
CreateRadialGradientBrush Creates an ID2D1RadialGradientBrush object that can be used
to paint areas with a radial gradient.
CreateRadialGradientBrush Creates an ID2D1RadialGradientBrush that contains the
specified gradient stops, has no transform, and has a base
opacity of 1.0.
CreateRadialGradientBrush Creates an ID2D1RadialGradientBrush that contains the
specified gradient stops and has the specified transform and
base opacity.
CreateRectangleGeometry Creates an ID2D1RectangleGeometry.
CreateRectangleGeometry Creates an ID2D1RectangleGeometry.
CreateResourceTexture Creates or finds the given resource texture, depending on
whether a resource id is specified.
CreateRoundedRectangleGeometry Creates an ID2D1RoundedRectangleGeometry.
CreateRoundedRectangleGeometry Creates an ID2D1RoundedRectangleGeometry.
CreateSharedBitmap Creates an ID2D1Bitmap whose data is shared with another
resource.
CreateSolidColorBrush Creates a new ID2D1SolidColorBrush that can be used to
paint areas with a solid color.
CreateSolidColorBrush Creates a new ID2D1SolidColorBrush that has the specified
color and a base opacity of 1.0f.
CreateSolidColorBrush Creates a new ID2D1SolidColorBrush that has the specified
color and opacity.
CreateSpriteBatch Creates a new, empty sprite batch. After creating a sprite
batch, use ID2D1SpriteBatch::AddSprites to add sprites to it,
then use ID2D1DeviceContext3::DrawSpriteBatch to draw it.
CreateStrokeDashArray Creates a dash array object which can be used to set the
stroke-dasharray property.
CreateStrokedGeometryRealization Creates a device-dependent representation of the stroke of a
geometry that can be subsequently rendered.
T IT L E DESC RIP T IO N
CreateStrokeStyle Creates an ID2D1StrokeStyle that describes start cap, dash
pattern, and other features of a stroke.
CreateStrokeStyle Creates an ID2D1StrokeStyle that describes start cap, dash
pattern, and other features of a stroke.
CreateStrokeStyle Creates a ID2D1StrokeStyle1 object.
CreateStrokeStyle Creates a ID2D1StrokeStyle1 object.
CreateSvgDocument Creates an SVG document from a stream.
CreateSvgGlyphStyle Creates an SVG glyph style object.
CreateTransformedGeometry Transforms the specified geometry and stores the result as an
ID2D1TransformedGeometry object.
CreateTransformedGeometry Transforms the specified geometry and stores the result as an
ID2D1TransformedGeometry object.
CreateTransformedImageSource Creates an image source which shares resources with an
original.
CreateTransformNodeFromEffect Wraps an effect graph into a single transform node and then
inserted into a transform graph. This allows an effect to
aggregate other effects.
CreateVertexBuffer Creates a vertex buffer or finds a standard vertex buffer and
optionally initializes it with vertices.
CreateWicBitmapRenderTarget Creates a render target that renders to a Microsoft Windows
Imaging Component (WIC) bitmap.
CreateWicBitmapRenderTarget Creates a render target that renders to a Microsoft Windows
Imaging Component (WIC) bitmap.
CreationProperties Returns a D2D1_CREATION_PROPERTIES that describes root-
level creation details.
D2D1ComputeMaximumScaleFactor Computes the maximum factor by which a given transform
can stretch any vector.
D2D1ConvertColorSpace Converts the given color from one colorspace to another.
D2D1CreateDevice Creates a new Direct2D device associated with the provided
DXGI device.
D2D1CreateDeviceContext Creates a new Direct2D device context associated with a DXGI
surface.
D2D1CreateFactory Creates a factory object that can be used to create Direct2D
resources.
T IT L E DESC RIP T IO N
D2D1CreateFactory Creates a factory object that can be used to create Direct2D
resources.
D2D1GetGradientMeshInteriorPointsFromCoonsPatch Returns the interior points for a gradient mesh patch based on
the points defining a Coons patch.
D2D1InvertMatrix Tries to invert the specified matrix.
D2D1IsMatrixInvertible Indicates whether the specified matrix is invertible.
D2D1MakeRotateMatrix Creates a rotation transformation that rotates by the specified
angle about the specified point.
D2D1MakeSkewMatrix Creates a skew transformation that has the specified x-axis
angle, y-axis angle, and center point.
D2D1SinCos Returns the sine and cosine of an angle.
D2D1Tan Returns the tangent of an angle.
D2D1Vec3Length Returns the length of a 3 dimensional vector.
Deserialize Deserializes a subtree from the stream. The stream must have
only one root element, but that root element need not be an
'svg' element. The output element is not inserted into this
document tree.
Determinant Calculates the determinant of the matrix.
Determinant Calculates the determinant of the matrix.
Draw Draws the transform to the graphics processing unit (GPU)–
based Direct2D pipeline.
DrawBitmap Draws the specified bitmap after scaling it to the size of the
specified rectangle.
DrawBitmap Draws the specified bitmap after scaling it to the size of the
specified rectangle.
DrawBitmap Draws the specified bitmap after scaling it to the size of the
specified rectangle.
DrawBitmap Draws a bitmap to the render target.
DrawBitmap Draws a bitmap to the render target.
DrawBitmap Draws a bitmap to the render target.
DrawBitmap Draws a bitmap to the render target.
DrawBitmap Draws a bitmap to the render target.
T IT L E DESC RIP T IO N
DrawColorBitmapGlyphRun Draws a color bitmap glyph run using one of the bitmap
formats.
DrawEllipse Draws the outline of an ellipse with the specified dimensions
and stroke.
DrawEllipse Draws the outline of the specified ellipse using the specified
stroke style.
DrawGdiMetafile Draw a metafile to the device context.
DrawGdiMetafile Draw a metafile to the device context.
DrawGdiMetafile Draw a metafile to the device context.
DrawGdiMetafile Draws a metafile to the command sink using the given source
and destination rectangles.
DrawGdiMetafile Draws a metafile to the device context using the given source
and destination rectangles.
DrawGdiMetafile Draws a metafile to the device context using the given source
and destination rectangles.
DrawGdiMetafile Draws a metafile to the device context using the given source
and destination rectangles.
DrawGeometry Draws the outline of the specified geometry using the
specified stroke style.
DrawGeometry Indicates the geometry to be drawn to the command sink.
DrawGeometryRealization Renders a given geometry realization to the target with the
specified brush.
DrawGlyphRun Draws the specified glyphs.
DrawGlyphRun Indicates the glyphs to be drawn.
DrawGlyphRun Draws a series of glyphs to the device context.
DrawGradientM