Microsoft Corporation
December 2002
In November 2001, Microsoft, the U.S. Department of Justice, and nine State Attorneys General agreed to a proposed settlement of the government's antitrust case. On November 1, 2002, the settlement was approved by Judge Kollar-Kotelly and became final on November 12, 2002. For more information (including a comprehensive archive of documents and transcripts of proceedings) about the consent decree, see the Microsoft Press Pass Settlement Proceedings Web page. For more information about how Microsoft has fulfilled its obligations under the consent decree, or if you wish to submit an inquiry or complaint about Microsoft's compliance under the consent decree, please see the Microsoft Settlement Program Web page.
As part of that settlement, Microsoft agreed to document the interfaces used by "Microsoft Middleware" (as defined in the proposed consent decree) to obtain services from the Microsoft® Windows® 2000 and Windows XP desktop client operating systems. The vast majority of these interfaces were already documented among the thousands of Application Programming Interfaces (APIs) in the Microsoft Platform Software Development Kit (SDK).
Microsoft teams identified a few hundred undocumented Windows interfaces or parameters that were used by one or more of the Microsoft Middleware components. Microsoft's technical writers have documented these interfaces and made them available as APIs in the MSDN Online Library.
These new or updated interface reference pages are listed below and are organized according to functional areas of MSDN where other similar APIs can be found. Each entry in the list includes a link to the documentation in the MSDN Library. Like other Microsoft APIs, code that may help applications use the interfaces is available via the Platform SDK, which is a separate download. To access these interfaces without this code, applications can use the functions LoadLibrary and GetProcAddr. After Microsoft Windows XP Service Pack 1 releases, the Platform SDK will be available on the Microsoft Platform SDK Download Web site.
Component Development—Component Object Model
Processes, Threads, and Apartments
Single-Threaded Apartments
Development (General)—Internationalization
Unicode and Character Set Functions
TranslateCharsetInfo
Graphics and Multimedia—Audio and Video
Functions
>WMIsAvailableOffline
>WMIsContentProtected
Interfaces
>INSNetSourceCreator
>IWMPSkinManager
>IWMSInternalAdminNetSource
>IWMSInternalAdminNetSource2
>IWMSInternalAdminNetSource3
Windows Media Device Manager Interfaces
IWMDMDevice2
Graphics and Multimedia—DirectX
DirectX Audio Property Sets
System Property Sets
DirectPlay Interfaces
IDirectPlayNATHelp
DirectShow Interfaces
IAMChannelInfo
IAMExtendedErrorInfo
IAMExtendedSeeking
IAMFilterGraphCallback
IAMGraphBuilderCallback
IAMMediaContent
IAMNetShowConfig
IAMNetShowExProps
IAMNetShowPreroll
IAMNetworkStatus
IDShowPlugin
IMixerOCX
IMixerOCXNotify
Graphics and Multimedia—Windows Multimedia
Multimedia Functions
SndPlaySound
Messaging and Collaboration—Messaging API (MAPI)
MAPI Functions and Related Macros
>FgetComponentPath
Messaging and Collaboration—NetMeeting
COM Enumerations
>NM_SYSPROP_* Property IDs
Networking and Directory Services—Network Management
Windows Networking Functions
>WNetRestoreConnectionW
Networking and Directory Services—Network Protocols
Internet Protocol Helper Functions
>GetBestRoute
WinINet Functions
>CreateMD5SSOHash
>DetectAutoProxyUrl
>InternetDeInitializeAutoProxyDll
>InternetGetProxyInfo
>InternetInitializeAutoProxyDll
WinInet Structures
>INTERNET_DIAGNOSTIC_SOCKET_INFO
Windows Sockets Functions
__WSAFDIsSet
Security—Security Zones
Functions
CoInternetCreateSecurityManager
CoInternetCreateZoneManager
Security—Security (General)
Authorization Functions
>CredUIReadSSOCredW
>CredUIStoreSSOCredW
>RtlConvertSidToUnicodeString
Cryptography Functions
>CertViewProperties
>CryptCATAdminAcquireContext
>CryptCATAdminEnumCatalogFromHash
>CryptCATAdminReleaseContext
>CryptCATCatalogInfoFromContext
>CryptUIDlgCertMgr
>CryptUIWizDigitalSign
>GetEncSChannel
>GetFriendlyNameOfCert
>WintrustAddActionID
>WintrustLoadFunctionPointers
>WintrustRemoveActionID
>WTHelperGetProvSignerFromChain
User Interface Design and Development—Windows Controls
Functions
DPA_Create
DPA_DeleteAllPtrs
DPA_DeletePtr
DPA_Destroy
DPA_DestroyCallback
DPA_EnumCallback
DPA_GetPtr
DPA_InsertPtr
DPA_Search
DPA_SetPtr
DPA_Sort
DSA_Create
DSA_Destroy
DSA_DestroyCallback
DSA_GetItemPtr
DSA_InsertItem
Str_SetPtrW
User Interface Design and Development—Windows Shell
Shell Interfaces
IActiveDesktopP
ICDBurnExt
IDefViewFrame
IDefViewID
IDefViewSafety
IDeskBand
IDocViewSite
IDVGetEnum
IFolderBandPriv
IInsertItem
IMenuBand
IMenuPopup
IModalWindow
INamespaceWalk
IPassportWizard
IRegTreeItem
IShellFolderBand
IShellFolderViewCB
IShellIconOverlayManager
IShellItem
IShellTaskScheduler
IShellTaskScheduler2
IShellView
Shell Functions
_SHAllocShared
_SHLockShared
CallCPLEntry16
CDefFolderMenu_Create2
DAD_AutoScroll
DAD_DragEnterEx
DAD_DragEnterEx2
DAD_DragLeave
DAD_DragMove
DAD_SetDragImage
DAD_ShowDragImage
ExtractAssociatedIconEx
GetFileNameFromBrowse
ILAppendID
ILClone
ILCloneFirst
ILCombine
ILCreateFromPathW
ILFindChild
ILFindLastID
ILFree
ILGetNext
ILGetSize
ILIsEqual
ILIsParent
ILLoadFromStream
ILRemoveLastID
ILSaveToStream
IsNetDrive
IsUserAnAdmin
OpenRegStream
PassportWizardRunDll
PathCleanupSpec
PathGetShortPath
PathIsExe
PathIsSlow
PathMakeUniqueName
PathProcessCommand
PathResolve
PathYetAnotherMakeUniqueName
PerUserInit
PickIconDlg
PifMgr_CloseProperties
PifMgr_GetProperties
PifMgr_OpenProperties
PifMgr_SetProperties
ReadCabinetState
RealDriveType
RestartDialog
RestartDialogEx
SHAddFromPropSheetExtArray
SHAlloc
SHChangeNotification_Lock
SHChangeNotification_Unlock
SHChangeNotifyDeregister
SHChangeNotifyRegister
SHCloneSpecialIDList
SHCLSIDFromString
SHCoCreateInstance
SHCreateDirectory
SHCreateFileExtractIcon
SHCreatePropSheetExtArray
SHCreateQueryCancelAutoPlayMoniker
SHCreateShellFolderView
SHCreateShellFolderViewEx
SHCreateShellItem
SHCreateStdEnumFmtEtc
SHDefExtractIcon
SHDestroyPropSheetExtArray
SHDoDragDrop
Shell_GetCachedImageIndex
Shell_GetImageLists
Shell_MergeMenus
ShellMessageBox
SHFind_InitMenuPopup
SHFindFiles
SHFlushClipboard
SHFlushSFCache
SHFormatDrive
SHFree
SHFreeShared
SHGetAttributesFromDataObject
SHGetRealIDL
SHGetSetFolderCustomSettings
SHGetSetSettings
SHGetShellStyleHInstance
SHGetViewStatePropertyBag
SHHandleUpdateImage
SHILCreateFromPath
SHLimitInputEdit
SHLoadOLE
SHMapIDListToImageListIndexAsync
SHMapPIDLToSystemImageListIndex
SHMultiFileProperties
SHObjectProperties
SHOpenPropSheetW
SHPropStgCreate
SHPropStgReadMultiple
SHPropStgWriteMultiple
SHReplaceFromPropSheetExtArray
SHRestricted
SHSetInstanceExplorer
SHShellFolderView_Message
SHSimpleIDListFromPath
SHStartNetConnectionDialog
SHTestTokenMembership
SHUnlockShared
SHValidateUNC
SignalFileOpen
WriteCabinetState
Shell Callback Functions
LPFNDFMCALLBACK
LPFNVIEWCALLBACK
Shell Messages and Notifications
SFVM_DIDRAGDROP
SFVM_GETDETAILSOF
SFVM_GETPANE
SFVM_GETZONE
SFVM_QUERYFSNOTIFY
SFVM_SETISFV
SFVM_THISIDLIST
Shell Objects for C++
FileOpen
FileTypes
FolderItemsFDF
Image Recompress
MenuBand
MenuBandSite
NewMenu
Shell Image Store
ShellFldSetExt
ShellFolderBand
Shell Structures
CABINETSTATE
SHChangeDWORDAsIDList
SHChangeUpdateImageIDList
Visual Styles Reference Functions
DrawThemeBackgroundEx
User Interface Design and Development—Windows Management
Resources Functions
FreeResource
Icon Functions
PrivateExtractIcons
Keyboard Input Notifications
WM_APPCOMMAND
Windows Functions
DeregisterShellHookWindow
EndTask
FindWindow
FindWindowEx
InternalGetWindowText
IsHungAppWindow
RegisterShellHookWindow
SwitchToThisWindow
Miscellaneous Low-Level Client Support
RtlAnsiStringToUnicodeString Function
RtlCharToInteger Function
RtlInitUnicodeString Function
RtlUnicodeStringToAnsiString Function
RtlUnicodeToMultiByteSize Function
Web Development—Content and Component Delivery
Internet Component Download
>LaunchINFSectionEx Function
Shell Helper Interfaces
>IShellUIHelper::ShowBrowserUI Method
Web Development—Networking
Functions
AsyncInstallDistributionUnit
Web Development—Scripting
Windows Script Interfaces Reference
IActiveScriptParseProcedure
Web Development—Programming and Reusing the Browser
Interfaces
>ITargetFrame
Functions
>LaunchSecurityDialog
Windows Development—Developer Notes
Devices Reference Material
>ExtDeviceMode
General
ApphelpCheckShellObject
CheckConnectionWizard
InetGetAutodial
NtCreateFile
NtOpenFile
>RtlCompareMemory
RtlExtendedIntegerMultiply
RtlExtendedLargeIntegerDivide
>RtlInitAnsiString
>RtlQueryRegistryValues
RtlUniform
SetShellNext
ShowJavaConsole
Registry Keys
SCRNSAVE.EXE
Windows Development—Windows Base Services
Error Handling Functions
RtlUnwind
RtlNtStatusToDosError
Device Management Functions
>CdromIsDigitalPlaybackEnabled
>CM_Get_Child
>CM_Get_Device_ID_ExW
>CM_Get_Device_Interface_List_SizeW
>CM_Get_Device_Interface_ListW
>DvdLauncher
File Management Functions
>CheckNameLegalDOS8Dot3
>RtlIsNameLegalDOS8Dot3
Memory Management Functions
>FillMemory
>MoveMemory
>Obsolete Windows Programming Elements (IsBadHugeReadPtr)
>Obsolete Windows Programming Elements (IsBadHugeWritePtr)
>ZeroMemory
Terminal Services API Functions
>WinStationQueryInformationW
Time Functions
NtQuerySystemTime
RtlLocalTimeToSystemTime
RtlTimeToSecondsSince1970