Home COM GDI+ WebBrowser Data Access

Windows Shell

 

Shell Miscellaneous Utility Functions

 

ConnectToConnectionPoint
DllInstall

FindResourceWrapW

GetMenuPosFromID

GetShellSecurityDescriptor

HashData

IsInternetESCEnabled

IsOS

IStream_Read

IStream_Reset

IStream_Size

IUnknown_AtomicRelease

IUnknown_GetSite

IUnknown_GetWindow

IUnknown_QueryService

IUnknown_Set

IUnknown_SetSite

MLFreeLibrary

MLLoadLibrary

ParseURL

QISearch

SHAnsiToAnsi

 

 

SHAnsiToUnicode

SHAutoComplete

SHCreateMemStream

SHCreateStreamOnFile

SHCreateStreamOnFileEx

SHCreateThread

SHCreateThreadRef

SHFormatDateTime

SHGetThreadRef

SHIsChildOrSelf

SHIsLowMemoryMachine

SHMessageBoxCheck

SHReleaseThreadRef

SHSendMessageBroadcast

SHSetThreadRef

SHStripMneumonic

SHUnicodeToAnsi

SHUnicodeToUnicode

StopWatchFlush

StopWatchMode

UrlFixupW

WhichPlatform

 

 

ConnectToConnectionPoint

 

Establishes or terminates a connection between a client's sink and a connection point container.
 

 

DECLARE FUNCTION ConnectToConnectionPoint _

  LIB "SHLWAPI.DLL" _

  ALIAS "ConnectToConnectionPoint" ( _

  BYVAL punk AS DWORD _

, BYREF riidEvent AS GUID _

, BYVAL fConnect AS LONG _

, BYVAL punkTarget AS DWORD _

, BYREF pdwCookie AS DWORD _

, BYREF ppcpOut AS DWORD _

) AS LONG
 

 

DllInstall

 

Handles installation and setup for a dynamic-link library (DLL).
 

 

DECLARE FUNCTION DllInstall _

  LIB "SHLWAPI.DLL" _

  ALIAS "DllInstall" ( _

  BYVAL hInstall AS DWORD _

, BYVAL pszCmdLine AS STRING _  ' Null-terminated unicode string

) AS LONG
 

 

FindResourceWrapW

 

Determines the location of a resource with the specified type and name in the specified module.
 

 

DECLARE FUNCTION FindResourceWrapW _

  LIB "SHLWAPI.DLL" _

  ALIAS "FindResourceWrapW" ( _

  BYVAL hModule AS DWORD _

, BYVAL lpName AS STRING _   ' Null-terminated unicode string

, BYVAL lpType AS STRING _   ' Null-terminated unicode string

) AS DWORD
 

 

GetMenuPosFromID

 

Determines an item's position in a menu. Used in the case where the item's identifier (ID) is known.
 

 

DECLARE FUNCTION GetMenuPosFromID _

  LIB "SHLWAPI.DLL" _

  ALIAS "GetMenuPosFromID" ( _

  BYVAL hmenu AS DWORD _

, BYVAL id AS DWORD _

) AS LONG
 

 

GetShellSecurityDescriptor

 

Gets a shell security descriptor.
 

 

DECLARE FUNCTION GetMenuPosFromID _

  LIB "SHLWAPI.DLL" _

  ALIAS "GetMenuPosFromID" ( _

  BYVAL apUserPerm AS DWORD _

, BYVAL cUserPerm AS LONG _

) AS DWORD
 

 

HashData

 

Hashes an array of data.
 

 

DECLARE FUNCTION HashData _

  LIB "SHLWAPI.DLL" _

  ALIAS "HadhData" ( _

  BYREF pbData AS ANY _

, BYVAL cbData AS DWORD _

, BYREF pbHash AS ANY _

, BYVAL cbHash AS DWORD _

) AS LONG
 

 

IsInternetESCEnabled

 

Determines whether Microsoft Internet Explorer is in the Enhanced Security Configuration.
 

 

DECLARE FUNCTION IsInternetESCEnabled _

  LIB "SHLWAPI.DLL" _

  ALIAS "IsInternetESCEnabled" ( _

) AS LONG
 

 

IsOS

 

Checks for specified operating systems and operating system features.
 

 

DECLARE FUNCTION IsOS _

  LIB "SHLWAPI.DLL" _

  ALIAS "IsOS" ( _

  BYVAL dwOS AS DWORD _

) AS LONG
 

 

IStream_Read

 

Reads bytes from a specified stream and returns a value that indicates whether all bytes were successfully read.
 

 

DECLARE FUNCTION IStream_Read _

  LIB "SHLWAPI.DLL" _

  ALIAS "IStream_Read" ( _

  BYVAL pstm AS DWORD _

, BYREF pv AS ANY _

, BYVAL cb AS DWORD _

) AS LONG
 

 

IStream_Reset

 

Moves the seek position in a specified stream to the beginning of the stream.
 

 

DECLARE FUNCTION IStream_Reset _

  LIB "SHLWAPI.DLL" _

  ALIAS "IStream_Reset" ( _

  BYVAL pstm AS DWORD _

) AS LONG
 

 

IStream_Size

 

Retrieves the size, in bytes, of a specified stream.
 

 

DECLARE FUNCTION IStream_Size _

  LIB "SHLWAPI.DLL" _

  ALIAS "IStream_Size" ( _

  BYVAL pstm AS DWORD _

, BYREF pui AS QUAD _

) AS LONG
 

 

IUnknown_AtomicRelease

 

Moves the seek position in a specified stream to the beginning of the stream.
 

 

DECLARE FUNCTION IUnknown_AtomicRelease _

  LIB "SHLWAPI.DLL" _

  ALIAS "IUnknown_AtomicRelease" ( _

  BYREF ppunk AS DWORD _

) AS LONG
 

 

IUnknown_GetSite

 

Calls the specified object's IObjectWithSite::GetSite method.
 

 

DECLARE FUNCTION IUnknown_GetSite _

  LIB "SHLWAPI.DLL" _

  ALIAS "IUnknown_GetSite" ( _

  BYVAL punk AS DWORD _

, BYREF riid AS GUID _

, BYREF ppvSite AS DWORD _

) AS LONG
 

 

IUnknown_GetWindow

 

Attempts to retrieve a window handle from a Component Object Model (COM) object by querying for various interfaces that have a GetWindow method.
 

 

DECLARE FUNCTION IUnknown_GetWindow _

  LIB "SHLWAPI.DLL" _

  ALIAS "IUnknown_GetWindow" ( _

  BYVAL punk AS DWORD _

, BYREF phwnd AS DWORD _

) AS LONG
 

 

IUnknown_QueryService

 

Retrieves an interface for a service from a specified object.
 

 

DECLARE FUNCTION IUnknown_QueryService _

  LIB "SHLWAPI.DLL" _

  ALIAS "IUnknown_QueryService" ( _

  BYVAL punk AS DWORD _

, BYREF guidService AS GUID _

, BYREF riid AS GUID _

, BYREF ppvOut AS DWORD _

) AS LONG
 

 

IUnknown_Set

 

Changes the value of a COM interface pointer and releases the previous interface.
 

 

DECLARE FUNCTION IUnknown_Set _

  LIB "SHLWAPI.DLL" _

  ALIAS "IUnknown_Set" ( _

  BYREF ppunk AS DWORD _

, BYVAL punk AS DWORD _

) AS LONG
 

 

IUnknown_SetSite

 

Sets the specified object's site by calling its IObjectWithSite::SetSite method.
 

 

DECLARE FUNCTION IUnknown_SetSite _

  LIB "SHLWAPI.DLL" _

  ALIAS "IUnknown_SetSite" ( _

  BYVAL ppunk AS DWORD _

, BYVAL punkSite AS DWORD _

) AS LONG
 

 

MLFreeLibrary

 

Unmaps a resource dynamic-link library (DLL) loaded by the MLLoadLibrary function.

 

 

DECLARE FUNCTION MLFreeLibrary _

  LIB "SHLWAPI.DLL" _

  ALIAS "MLFreeLibrary" ( _

  BYVAL hModule AS DWORD _

) AS LONG
 

 

MLLoadLibrary

 

Maps an appropriate resource dynamic-link library (DLL) into the address space of the calling function based on the user's default user interface (UI) language.

 

 

DECLARE FUNCTION MLLoadLibrary _

  LIB "SHLWAPI.DLL" _

  ALIAS "MLLoadLibraryA" ( _

  BYREF lpszLibFileName AS ASCIIZ _

, BYVAL hModule AS DWORD _

, BYVAL bCrossCodePage AS LONG _

) AS LONG

 

DECLARE FUNCTION MLLoadLibraryW _

  LIB "SHLWAPI.DLL" _

  ALIAS "MLLoadLibraryW" ( _

  BYVAL lpszLibFileName AS DWORD _

, BYVAL hModule AS DWORD _

, BYVAL bCrossCodePage AS LONG _

) AS LONG
 

 

ParseURL

 

Maps an appropriate resource dynamic-link library (DLL) into the address space of the calling function based on the user's default user interface (UI) language.

 

 

DECLARE FUNCTION ParseURL _

  LIB "SHLWAPI.DLL" _

  ALIAS "ParseURLA" ( _

  BYREF pszUrl AS ASCIIZ _

, BYREF ppu AS PARSEDURL _

) AS LONG

 

DECLARE FUNCTION ParseURLW _

  LIB "SHLWAPI.DLL" _

  ALIAS "ParseURLW" ( _

  BYVAL pszUrl AS STRING _

, BYREF ppu AS PARSEDURL _

) AS LONG
 

 

QISearch

 

A table-driven implementation of the IUnknown::QueryInterface method.

 

 

DECLARE FUNCTION QISearch _

  LIB "SHLWAPI.DLL" _

  ALIAS "QISearch" ( _

  BYVAL that AS DWORD _

, BYREF pqit AS ANY _

, BYREF riid AS GUID _

, BYREF ppv AS DWORD _

) AS LONG

 

 

SHAnsiToAnsi

 

Copies an ANSI string.

 

 

DECLARE FUNCTION SHAnsiToAnsi _

  LIB "SHLWAPI.DLL" _

  ALIAS "SHAnsiToAnsi" ( _

  BYREF pszSrc AS ASCIIZ _

, BYREF pszDst AS ANY _

, BYVAL cchBuf AS DWORD _

) AS LONG

 

 

SHAnsiToUnicode

 

Converts a string from the ANSI code page to the Unicode code page.

 

 

DECLARE FUNCTION SHAnsiToUnicode _

  LIB "SHLWAPI.DLL" _

  ALIAS "SHAnsiTounicode" ( _

  BYREF pszSrc AS ASCIIZ _

, BYREF pwszDst AS ANY _

, BYVAL cwchBuf AS DWORD _

) AS LONG

 

 

SHAutoComplete

 

Instructs system edit controls to use AutoComplete to help complete URLs or file system paths.

 

 

DECLARE FUNCTION SHAutoComplete _

  LIB "SHLWAPI.DLL" _

  ALIAS "SHAutoComplete" ( _

  BYVAL hWndEdit AS DWORD _

, BYVAL dwFlags AS DWORD _

) AS LONG

 

 

SHCreateMemStream

 

Creates a memory stream in much the same way as CreateStreamOnHGlobal, but with less functionality.

 

 

DECLARE FUNCTION SHCreateMemStream _

  LIB "SHLWAPI.DLL" _

  ALIAS "SHCreateMemStream" ( _

  BYREF pInit AS ANY _

, BYVAL cbInit AS DWORD _

) AS LONG

 

 

SHCreateStreamOnFile

 

Takes a file name, opens the file, and returns an IStream interface that can be used to read from and write to the file.

 

 

DECLARE FUNCTION SHCreateStreamOnFile _

  LIB "SHLWAPI.DLL" _

  ALIAS "SHCreateStreamOnFileA" ( _

  BYREF pszFile AS ASCIIZ _

, BYVAL grfMode AS DWORD _

, BYREF ppstm AS DWORD _

) AS LONG

 

DECLARE FUNCTION SHCreateStreamOnFileW _

  LIB "SHLWAPI.DLL" _

  ALIAS "SHCreateStreamOnFileW" ( _

  BYVAL pszFile AS STRING _

, BYVAL grfMode AS DWORD _

, BYREF ppstm AS DWORD _

) AS LONG

 

 

SHCreateStreamOnFileEx

 

Takes a file name, opens the file, and returns an IStream interface.

 

 

DECLARE FUNCTION SHCreateStreamOnFileEx _

  LIB "SHLWAPI.DLL" _

  ALIAS "SHCreateStreamOnFileEx" ( _

  BYVAL pszFile AS STRING _

, BYVAL grfMode AS DWORD _

, BYVAL dwAttributes AS DWORD _

, BYVAL fCreate AS LONG _

, BYVAL pstmTemplate AS DWORD _

, BYREF ppstm AS DWORD _

) AS LONG

 

 

SHCreateThread

 

Creates a thread.

 

 

DECLARE FUNCTION SHCreateThread _

  LIB "SHLWAPI.DLL" _

  ALIAS "SHCreateThread" ( _

  BYVAL pfnThreadProc AS DWORD _

, BYREF pData AS ANY _

, BYVAL dwFlags AS DWORD _

, BYVAL pfnCalback AS DWORD _

) AS LONG

 

 

SHCreateThreadRef

 

Creates a per-thread reference to a Component Object Model (COM) object.

 

 

DECLARE FUNCTION SHCreateThreadRef _

  LIB "SHLWAPI.DLL" _

  ALIAS "SHCreateThreadRef" ( _

  BYREF pcRef AS LONG _

, BYREF ppunk AS DWORD _

) AS LONG

 

 

SHFormatDateTime

 

Produces a string representation of the time specified by a FILETIME structure.

 

 

DECLARE FUNCTION SHFormatDateTime _

  LIB "SHLWAPI.DLL" _

  ALIAS "SHFormatDateTimeA" ( _

  BYREF puft AS FILETIME _

, BYREF pdwFlags AS DWORD _

, BYREF pszBuf AS ASCIIZ _

, BYVAL ucchBuf AS DWORD _

) AS LONG

 

DECLARE FUNCTION SHFormatDateTimeW _

  LIB "SHLWAPI.DLL" _

  ALIAS "SHFormatDateTimeW" ( _

  BYREF puft AS FILETIME _

, BYREF pdwFlags AS DWORD _

, BYVAL pszBuf AS STRING _

, BYVAL ucchBuf AS DWORD _

) AS LONG

 

 

SHGetThreadRef

 

Retrieves the per-thread object reference set by SHSetThreadRef.

 

 

DECLARE FUNCTION SHGetThreadRef _

  LIB "SHLWAPI.DLL" _

  ALIAS "SHGetThreadRef" ( _

  BYREF ppunk AS DWORD _

) AS LONG

 

 

SHIsChildOrSelf

 

Checks whether one window is equal to, a child of, or a descendant of a second window.

 

 

DECLARE FUNCTION SHIsChildOrSelf _

  LIB "SHLWAPI.DLL" _

  ALIAS "SHIsChildOrSelf" ( _

  BYVAL hwndParent AS DWORD _

, BYVAL hWnd AS DWORD _

) AS LONG

 

 

SHIsLowMemoryMachine

 

Not currently supported.

 

 

SHMessageBoxCheck

 

Displays a message box that gives the user the option of suppressing further occurrences. If the user has already opted to suppress the message box, the function does not display a dialog box and instead simply returns the default value.

 

 

DECLARE FUNCTION SHMessageBoxCheck _

  LIB "SHLWAPI.DLL" _

  ALIAS "SHMessageBoxCheckA" ( _

  BYVAL hwnd AS DWORD _

, BYREF pszText AS ASCIIZ _

, BYREF pszTitle AS ASCIIZ _

, BYVAL uType AS DWORD _

, BYVAL iDefault AS LONG _

, BYREF pszRegVal AS ASCIIZ _

) AS LONG

 

DECLARE FUNCTION SHMessageBoxCheckW _

  LIB "SHLWAPI.DLL" _

  ALIAS "SHMessageBoxCheckW" ( _

  BYVAL hwnd AS DWORD _

, BYVAL pszText AS STRING _

, BYVAL pszTitle AS DWORD _

, BYVAL uType AS DWORD _

, BYVAL iDefault AS LONG _

, BYVAL pszRegVal AS STRING _

) AS LONG

 

 

SHReleaseThreadRef

 

Releases a thread reference before the thread procedure returns.

 

 

DECLARE FUNCTION SHReleaseThreadRef _

  LIB "SHLWAPI.DLL" _

  ALIAS "SHReleaseThreadRef" ( _

) AS LONG

 

 

SHSendMessageBroadcast

 

Sends a message to all top-level windows in the system.

 

 

DECLARE FUNCTION SHSendMessageBroadcast _

  LIB "SHLWAPI.DLL" _

  ALIAS "SHSendMessageBroadcast" ( _

  BYVAL uMsg AS DWORD _

, BYVAL wParam AS DWORD _

, BYVAL lParam AS LONG _

) AS LONG

 

 

SHStripMneumonic

 

Removes the mnemonic marker from a string.

 

 

DECLARE FUNCTION SHStripMneumonic _

  LIB "SHLWAPI.DLL" _

  ALIAS "SHStripMneumonicA" ( _

  BYREF pszMenu AS ASCIIZ _

) AS DWORD

 

DECLARE FUNCTION SHStripMneumonicW _

  LIB "SHLWAPI.DLL" _

  ALIAS "SHStripMneumonicW" ( _

  BYVAL pszMenu AS STRING _

) AS DWORD

 

 

SHUnicodeToAnsi

 

Converts a string from the Unicode code page to the ANSI code page.

 

 

DECLARE FUNCTION SHUnicodeToAnsi _

  LIB "SHLWAPI.DLL" _

  ALIAS "SHUnicodeToAnsi" ( _

  BYVAL pwszSrc AS STRING _

, BYREF pszDst AS ASCIIZ _

, BYVAL cchBuf AS LONG _

) AS DWORD

 

 

SHUnicodeToUnicode

 

Copies a Unicode string.

 

 

DECLARE FUNCTION SHUnicodeToUnicode _

  LIB "SHLWAPI.DLL" _

  ALIAS "SHUnicodeToUnicode" ( _

  BYVAL pwszSrc AS STRING _

, BYVAL pwszDst AS DWORD _

, BYVAL cwchBuf AS LONG _

) AS DWORD

 

 

StopWatchFlush

 

Writes out performance statistics if performance logging is enabled.

 

 

DECLARE FUNCTION StopWatchFlush _

  LIB "SHLWAPI.DLL" _

  ALIAS "StopWatchFlush" ( _

) AS DWORD

 

 

StopWatchMode

 

Retrieves a value that indicates which performance information is being logged.

 

 

DECLARE FUNCTION StopWatchMode _

  LIB "SHLWAPI.DLL" _

  ALIAS "StopWatchMode" ( _

) AS DWORD

 

 

UrlFixUpW

 

Attempts to correct misspellings in the scheme portion or lead punctuation of a URL.

 

 

DECLARE FUNCTION UrlFixUpW _

  LIB "SHLWAPI.DLL" _

  ALIAS "UrlFixupW" ( _

  BYVAL pszUrl AS STRING _

, BYVAL pszTranslateUrl AS DWORD _

, BYVAL cchMax AS DWORD _

) AS LONG

 

 

WhichPlatform

 

Retrieves a value that indicates whether the installed version of Shell32.dll is version 4.71 or higher.

 

 

DECLARE FUNCTION WhichPlatform _

  LIB "SHLWAPI.DLL" _

  ALIAS "WhichPlatform" ( _

) AS DWORD

 

 

Page last updated on Wednesday, 30 August 2006 05:44:25 +0200