Home COM GDI+ WebBrowser Data Access

Windows Shell

 

Shell String Handling Functions

 

ChrCmpI
GetAcceptLanguages

IntlStrEqN

IntlStrEqNI

IntlStrEqWorker

IsCharSpace

SHLoadIndirectString

SHStrDup

StrCat

StrCatBuff

StrCatChainW

StrChr

StrChrI

StrCmp

StrCmpC

StrCmpI

StrCmpIC

StrCmpLogicalW

StrCmpN

StrCmpNC

StrCmpNI

StrCmpNIC

StrCpy

StrCpyN

StrCSpn

StrCSpnI

 

 

StrDup

StrFormatByteSize64

StrFormatByteSizeA

StrFormatByteSizeW

StrFormatKBSize

StrFromTimeInterval

StrIsIntlEqual

StrNCat

StrPBrk

StrRChr

StrRChrI

StrRetToBSTR

StrRetToBuf

StrRetToStr

StrRetToStrN

StrRStrI

StrSpn

StrStr

StrStrI

StrToInt

StrToInt64Ex

StrToIntEx

StrTrim

wnsprintf

wvnsprintf


 

 

ChrCmpI

 

Performs a comparison between two characters. The comparison is not case sensitive.
 

 

DECLARE FUNCTION ChrCmpI LIB "SHLWAPI.DLL" ALIAS "ChrCmpIA" (BYVAL b1 AS BYTE, BYVAL b2 AS BYTE) AS LONG
 

DECLARE FUNCTION ChrCmpIW LIB "SHLWAPI.DLL" ALIAS "ChrCmpIW" (BYVAL w1 AS WORD, BYVAL w2 AS WORD) AS LONG

 

 

GetAcceptLanguages

 

Retrieves a string used with Web sites when specifying language preferences.
 

 

DECLARE FUNCTION GetAcceptLanguages LIB "SHLWAPI.DLL" ALIAS "GetAcceptLanguagesA" (BYREF psz AS ASCIIZ, BYREF pcch AS DWORD) AS LONG

 

DECLARE FUNCTION GetAcceptLanguagesW LIB "SHLWAPI.DLL" ALIAS "GetAcceptLanguagesW" (BYVAL psz AS DWORD, BYREF pcch AS DWORD) AS LONG

 

 

IntlStrEqN

 

Performs a case-sensitive comparison of a specified number of characters from the beginning of two localized strings.
 

 

DECLARE FUNCTION IntlStrEqN LIB "SHLWAPI.DLL" ALIAS "IntlStrEqNA" (BYREF pszStr1 AS ASCIIZ, BYREF pszStr2 AS ASCIIZ, BYVAL nchar AS LONG) AS LONG

 

DECLARE FUNCTION IntlStrEqNW LIB "SHLWAPI.DLL" ALIAS "IntlStrEqNW" (BYVAL pszStr1 AS STRING, BYVAL pszStr2 AS STRING, BYVAL nchar AS LONG) AS LONG

 

 

IntlStrEqNI

 

Performs a case-insensitive comparison of a specified number of characters from the beginning of two localized strings.
 

 

DECLARE FUNCTION IntlStrEqNI LIB "SHLWAPI.DLL" ALIAS "IntlStrEqNIA" (BYREF pszStr1 AS ASCIIZ, BYREF pszStr2 AS ASCIIZ, BYVAL nchar AS LONG) AS LONG

 

DECLARE FUNCTION IntlStrEqNIW LIB "SHLWAPI.DLL" ALIAS "IntlStrEqNIW" (BYVAL pszStr1 AS STRING, BYVAL pszStr2 AS STRING, BYVAL nchar AS LONG) AS LONG
 

 

IntlStrEqWorker

 

Compares a specified number of characters from the beginning of two localized strings.
 

 

DECLARE FUNCTION IntlStrEqWorker LIB "SHLWAPI.DLL" ALIAS "IntlStrEqWorkerA" (BYVAL fCaseSens AS LONG, BYREF pszStr1 AS ASCIIZ, BYREF pszStr2 AS ASCIIZ, BYVAL nchar AS LONG) AS LONG

 

DECLARE FUNCTION IntlStrEqWorkerW LIB "SHLWAPI.DLL" ALIAS "IntlStrEqWorkerW" (BYVAL fCaseSens AS LONG, BYVAL pszStr1 AS STRING, BYVAL pszStr2 AS STRING, BYVAL nchar AS LONG) AS LONG

 

 

IsCharSpace

 

Determines whether a character represents a space.
 

 

DECLARE FUNCTION IsCharSpace LIB "SHLWAPI.DLL" ALIAS "IsCharSpaceA" (BYVAL bch AS BYTE) AS LONG

 

DECLARE FUNCTION IsCharSpaceW LIB "SHLWAPI.DLL" ALIAS "IsCharSpaceW" (BYVAL wch AS WORD) AS LONG

 

 

SHLoadIndirectString

 

Extracts the string from the specified resource when given an indirect string (a string beginning with the @ symbol). All other strings copy to the output buffer unaltered.
 

 

DECLARE FUNCTION SHLoadIndirectString LIB "SHLWAPI.DLL" ALIAS "SHLoadIndirectString" (BYVAL pszSource AS STRING, BYVAL pszOutBuf AS STRING, BYVAL cchOutBuf AS DWORD, BYREF ppvReserved AS ANY) AS LONG

 

 

SHStrDup

 

Makes a copy of a string in newly allocated memory.

 

Remarks

 

This function will take either Unicode or ANSI strings as input, but the copied string is always Unicode.


This function uses CoTaskMemAlloc to allocate memory for the copied string. You must free this memory with CoTaskMemFree when it is no longer needed.

 

 

DECLARE FUNCTION SHStrDup LIB "SHLWAPI.DLL" ALIAS "SHStrDupA" (BYREF pszSource AS ASCIIZ, BYREF ppwszTarget AS DWORD) AS LONG

 

DECLARE FUNCTION SHStrDupW LIB "SHLWAPI.DLL" ALIAS "SHStrDupW" (BYVAL pszSource AS STRING, BYREF ppwszTarget AS DWORD) AS LONG

 

 

StrCat

 

Appends one string to another.
 

 

DECLARE FUNCTION StrCat LIB "SHLWAPI.DLL" ALIAS "StrCatA" (BYREF psz1 AS ASCIIZ, BYREF psz2 AS ASCIIZ) AS DWORD

 

DECLARE FUNCTION StrCatW LIB "SHLWAPI.DLL" ALIAS "StrCatW" (BYVAL psz1 AS STRING, BYVAL psz2 AS STRING) AS DWORD

 

 

StrCatBuff

 

Copies and appends characters from one string to the end of another.
 

 

DECLARE FUNCTION StrCatBuff LIB "SHLWAPI.DLL" ALIAS "StrCatBuffA" (BYREF pszDestination AS ASCIIZ, BYREF pszSource AS ASCIIZ, BYREF cchDestBuffer AS LONG) AS DWORD

 

DECLARE FUNCTION StrCatBuffW LIB "SHLWAPI.DLL" ALIAS "StrCatBuffW" (BYVAL pszDestination AS STRING, BYVAL pszSource AS STRING, BYREF cchDestBuffer AS LONG) AS DWORD

 

 

StrCatChainW

 

Concatenates two Unicode strings. Used in place of StrCat when repeated concatenations to the same buffer are required.
 

 

DECLARE FUNCTION StrCatChainW LIB "SHLWAPI.DLL" ALIAS "StrCatChainW" (BYVAL pszDst AS DWORD, BYVAL cchDst AS DWORD, BYVAL ichAt AS DWORD, BYVAL pszSrc AS DWORD) AS DWORD

 

 

StrChr

 

Searches a string for the first occurrence of a character that matches the specified character. The comparison is case sensitive.
 

 

DECLARE FUNCTION StrChr LIB "SHLWAPI.DLL" ALIAS "StrChrA" (BYREF lpStart AS ASCIIZ, BYVAL bMatch AS BYTE) AS DWORD

 

DECLARE FUNCTION StrChrW LIB "SHLWAPI.DLL" ALIAS "StrChrW" (BYVAL lpStart AS STRING, BYVAL wMatch AS WORD) AS DWORD

 

 

StrChrI

 

Searches a string for the first occurrence of a character that matches the specified character. The comparison is not case sensitive.
 

 

DECLARE FUNCTION StrChrI LIB "SHLWAPI.DLL" ALIAS "StrChrIA" (BYREF lpStart AS ASCIIZ, BYVAL bMatch AS BYTE) AS DWORD

 

DECLARE FUNCTION StrChrIW LIB "SHLWAPI.DLL" ALIAS "StrChrIW" (BYVAL lpStart AS STRING, BYVAL wMatch AS WORD) AS DWORD

 

 

StrCmp

 

Compares two strings to determine if they are the same. The comparison is case-sensitive.
 

 

DECLARE FUNCTION StrCmp LIB "SHLWAPI.DLL" ALIAS "StrCmpA" (BYREF lpStr1 AS ASCIIZ, BYREF lpStr2 AS ASCIIZ) AS LONG

 

DECLARE FUNCTION StrCmpW LIB "SHLWAPI.DLL" ALIAS "StrCmpW" (BYVAL lpStr1 AS STRING, BYVAL lpStr2 AS STRING) AS LONG

 

 

StrCmpC

 

Compares strings using C run-time (ASCII) collation rules. The comparison is case-sensitive.
 

 

DECLARE FUNCTION StrCmpC LIB "SHLWAPI.DLL" ALIAS "StrCmpCA" (BYREF lpStr1 AS ASCIIZ, BYREF lpStr2 AS ASCIIZ) AS LONG

 

DECLARE FUNCTION StrCmpCW LIB "SHLWAPI.DLL" ALIAS "StrCmpCW" (BYVAL lpStr1 AS STRING, BYVAL lpStr2 AS STRING) AS LONG

 

 

StrCmpI

 

Compares two strings to determine if they are the same. The comparison is not case-sensitive.
 

 

DECLARE FUNCTION StrCmpI LIB "SHLWAPI.DLL" ALIAS "StrCmpIA" (BYREF lpStr1 AS ASCIIZ, BYREF lpStr2 AS ASCIIZ) AS LONG

 

DECLARE FUNCTION StrCmpIW LIB "SHLWAPI.DLL" ALIAS "StrCmpIW" (BYVAL lpStr1 AS STRING, BYVAL lpStr2 AS STRING) AS LONG

 

 

StrCmpIC

 

Compares two strings using C run-time (ASCII) collation rules. The comparison is not case-sensitive.
 

 

DECLARE FUNCTION StrCmpIC LIB "SHLWAPI.DLL" ALIAS "StrCmpICA" (BYREF lpStr1 AS ASCIIZ, BYREF lpStr2 AS ASCIIZ) AS LONG

 

DECLARE FUNCTION StrCmpICW LIB "SHLWAPI.DLL" ALIAS "StrCmpICW" (BYVAL lpStr1 AS STRING, BYVAL lpStr2 AS STRING) AS LONG

 

 

StrCmpLogicalW

 

Compares two Unicode strings. Digits in the strings are considered as numerical content rather than text. This test is not case sensitive.
 

 

DECLARE FUNCTION StrCmpLogicalW LIB "SHLWAPI.DLL" ALIAS "StrCmpLogicalW" (BYVAL lpStr1 AS STRING, BYVAL lpStr2 AS STRING) AS LONG

 

 

StrCmpN

 

Compares a specified number of characters from the beginning of two strings using C run-time (ASCII) collation rules. The comparison is case-sensitive.
 

 

DECLARE FUNCTION StrCmpNC LIB "SHLWAPI.DLL" ALIAS "StrCmpNCA" (BYREF lpStr1 AS ASCIIZ, BYREF lpStr2 AS ASCIIZ, BYVAL nChar AS LONG) AS LONG

 

DECLARE FUNCTION StrCmpNCW LIB "SHLWAPI.DLL" ALIAS "StrCmpNCW" (BYVAL lpStr1 AS STRING, BYVAL lpStr2 AS STRING, BYVAL nChar AS LONG) AS LONG

 

 

StrCmpNI

 

Compares a specified number of characters from the beginning of two strings to determine if they are the same. The comparison is not case-sensitive. The StrNCmpI macro differs from this function in name only.

 

 

DECLARE FUNCTION StrCmpNI LIB "SHLWAPI.DLL" ALIAS "StrCmpNIA" (BYREF lpStr1 AS ASCIIZ, BYREF lpStr2 AS ASCIIZ, BYVAL nChar AS LONG) AS LONG

 

DECLARE FUNCTION StrCmpNIW LIB "SHLWAPI.DLL" ALIAS "StrCmpNIW" (BYVAL lpStr1 AS STRING, BYVAL lpStr2 AS STRING, BYVAL nChar AS LONG) AS LONG

 

 

StrCmpNIC

 

Compares a specified number of characters from the beginning of two strings using C run-time (ASCII) collation rules. The comparison is not case-sensitive.

 

 

DECLARE FUNCTION StrCmpNIC LIB "SHLWAPI.DLL" ALIAS "StrCmpNICA" (BYREF lpStr1 AS ASCIIZ, BYREF lpStr2 AS ASCIIZ, BYVAL nChar AS LONG) AS LONG

 

DECLARE FUNCTION StrCmpNICW LIB "SHLWAPI.DLL" ALIAS "StrCmpNICW" (BYVAL lpStr1 AS STRING, BYVAL lpStr2 AS STRING, BYVAL nChar AS LONG) AS LONG

 

 

StrCpy

 

Copies one string to another.

 

 

DECLARE FUNCTION StrCpy LIB "SHLWAPI.DLL" ALIAS "StrCpyA" (BYREF lpStr1 AS ASCIIZ, BYREF lpStr2 AS ASCIIZ) AS DWORD

 

DECLARE FUNCTION StrCpyW LIB "SHLWAPI.DLL" ALIAS "StrCpyW" (BYVAL lpStr1 AS STRING, BYVAL lpStr2 AS STRING) AS DWORD

 

 

StrCpyN

 

Copies a specified number of characters from the beginning of one string to another. The StrNCpy macro differs from this function in name only.

 

 

DECLARE FUNCTION StrCpyN LIB "SHLWAPI.DLL" ALIAS "StrCpyNA" (BYREF lpStr1 AS ASCIIZ, BYREF lpStr2 AS ASCIIZ, BYVAL cchMax AS LONG) AS DWORD

 

DECLARE FUNCTION StrCpyNW LIB "SHLWAPI.DLL" ALIAS "StrCpyNW" (BYVAL lpStr1 AS STRING, BYVAL lpStr2 AS STRING, BYVAL cchMax AS LONG) AS DWORD

 

 

StrCSpn

 

Searches a string for the first occurrence of any of a group of characters. The search method is case-sensitive, and the terminating NULL character is included within the search pattern match.

 

 

DECLARE FUNCTION StrCSpn LIB "SHLWAPI.DLL" ALIAS "StrCSpnA" (BYREF lpStr AS ASCIIZ, BYREF lpSet AS ASCIIZ) AS LONG

 

DECLARE FUNCTION StrCSpnW LIB "SHLWAPI.DLL" ALIAS "StrCSpnW" (BYVAL lpStr AS STRING, BYVAL lpSet AS STRING) AS LONG

 

 

StrCSpnI

 

Searches a string for the first occurrence of any of a group of characters. The search method is not case-sensitive, and the terminating NULL character is included within the search pattern match.

 

 

DECLARE FUNCTION StrCSpnI LIB "SHLWAPI.DLL" ALIAS "StrCSpnIA" (BYREF lpStr AS ASCIIZ, BYREF lpSet AS ASCIIZ) AS LONG

 

DECLARE FUNCTION StrCSpnIW LIB "SHLWAPI.DLL" ALIAS "StrSpnIW" (BYVAL lpStr AS STRING, BYVAL lpSet AS STRING) AS LONG

 

 

StrDup

 

Duplicates a string.

 

 

DECLARE FUNCTION StrDup LIB "SHLWAPI.DLL" ALIAS "StrDupA" (BYREF lpStr AS ASCIIZ) AS DWORD

 

DECLARE FUNCTION StrDupW LIB "SHLWAPI.DLL" ALIAS "StrDupW" (BYVAL lpStr AS STRING) AS DWORD

 

 

StrFormatByteSize64

 

Converts a numeric value into a string that represents the number expressed as a size value in bytes, kilobytes, megabytes, or gigabytes, depending on the size.

 

 

DECLARE FUNCTION StrFormatByteSize64 LIB "SHLWAPI.DLL" ALIAS "StrFormatByteSize64A" (BYVAL qdw AS QUAD, BYREF pszBuf AS ASCIIZ, BYVAL uiBufSize AS DWORD) AS DWORD

 

 

StrFormatByteSizeA

 

Converts a numeric value into a string that represents the number expressed as a size value in bytes, kilobytes, megabytes, or gigabytes, depending on the size.

 

 

DECLARE FUNCTION StrFormatByteSizeA LIB "SHLWAPI.DLL" ALIAS "StrFormatByteSizeA" (BYVAL dw AS DWORD, BYREF pszBuf AS ASCIIZ, BYVAL cchBuf AS DWORD) AS DWORD

 

 

StrFormatByteSizeW

 

Converts a numeric value into a string that represents the number expressed as a size value in bytes, kilobytes, megabytes, or gigabytes, depending on the size.

 

 

DECLARE FUNCTION StrFormatByteSizeW LIB "SHLWAPI.DLL" ALIAS "StrFormatByteSizeW" (BYVAL dw AS QUAD, BYREFL pwszBuf AS DWORD, BYVAL cchBuf AS DWORD) AS DWORD

 

 

StrFormatKBSize

 

Converts a numeric value into a string that represents the number expressed as a size value in kilobytes.

 

 

DECLARE FUNCTION StrFormatKBSize LIB "SHLWAPI.DLL" ALIAS "StrFormatKBSizeA" (BYVAL qdw AS QUAD, BYREF pszBuf AS ASCIIZ, BYVAL uiBufSize AS DWORD) AS DWORD

 

DECLARE FUNCTION StrFormatKBSizeW LIB "SHLWAPI.DLL" ALIAS "StrFormatKBSizeW" (BYVAL qdw AS QUAD, BYVAL pszBuf AS DWORD, BYVAL uiBufSize AS DWORD) AS DWORD

 

 

StrFromTimeInterval

 

Converts a time interval, specified in milliseconds, to a string.

 

 

DECLARE FUNCTION StrFromTimeInterval LIB "SHLWAPI.DLL" ALIAS "StrFromTimeIntervalA" (BYREF pszOut AS ASCIIZ, BYVAL cchMax AS DWORD, BYVAL dwTimeMS AS DWORD, BYVAL digits AS LONG) AS LONG

 

DECLARE FUNCTION StrFromTimeIntervalW LIB "SHLWAPI.DLL" ALIAS "StrFromTimeIntervalW" (BYVAL pszOut AS DWORD, BYVAL cchMax AS DWORD, BYVAL dwTimeMS AS DWORD, BYVAL digits AS LONG) AS LONG

 

 

StrIsIntlEqual

 

Compares a specified number of characters from the beginning of two strings to determine if they are equal.

 

 

DECLARE FUNCTION StrIsIntlEqual LIB "SHLWAPI.DLL" ALIAS "StrIsIntlEqualA" (BYVAL fCaseSense AS LONG, BYREF lpString1 AS ASCIIZ, BYREF lpString2 AS ASCIIZ, BYVAL nChar AS LONG) AS LONG

 

DECLARE FUNCTION StrIsIntlEqualW LIB "SHLWAPI.DLL" ALIAS "StrIsIntlEqualW" (BYVAL fCaseSense AS LONG, BYVAL lpString1 AS STRING, BYVAL lpString2 AS STRING, BYVAL nChar AS LONG) AS LONG

 

 

StrNCat

 

Appends a specified number of characters from the beginning of one string to the end of another. The StrCatN macro is identical to this function.

 

 

DECLARE FUNCTION StrNCat LIB "SHLWAPI.DLL" ALIAS "StrNCatA" (BYREF psz1 AS ASCIIZ, BYREF psz2 AS ASCIIZ, BYVAL cchMax AS LONG) AS DWORD

 

DECLARE FUNCTION StrNCatW LIB "SHLWAPI.DLL" ALIAS "StrNCatW" (BYVAL psz1 AS STRING, BYVAL psz2 AS STRING, BYVAL cchMax AS LONG) AS DWORD

 

 

StrPBrk

 

Searches a string for the first occurrence of a character contained in a specified buffer. This search does not include the terminating null character.

 

 

DECLARE FUNCTION StrPBrk LIB "SHLWAPI.DLL" ALIAS "StrPBrkA" (BYREF psz AS ASCIIZ, BYREF pszSet AS ASCIIZ) AS DWORD

 

DECLARE FUNCTION StrPBrkW LIB "SHLWAPI.DLL" ALIAS "StrPBrkW" (BYVAL psz AS STRING, BYVAL pszSet AS STRING) AS DWORD

 

 

StrRChr

 

Searches a string for the last occurrence of a specified character. The comparison is case-sensitive.

 

 

DECLARE FUNCTION StrRChr LIB "SHLWAPI.DLL" ALIAS "StrRChrA" (BYREF lpStart AS ASCIIZ, BYREF lpEnd AS ASCIIZ, BYVAL bMatch AS BYTE) AS DWORD

 

DECLARE FUNCTION StrRChrW LIB "SHLWAPI.DLL" ALIAS "StrRChrW" (BYVAL lpStart AS STRING, BYVAL lpEnd AS STRING, BYVAL wMatch AS WORD) AS DWORD

 

 

StrRChrI

 

Searches a string for the last occurrence of a specified character. The comparison is not case-sensitive.

 

 

DECLARE FUNCTION StrRChrI LIB "SHLWAPI.DLL" ALIAS "StrRChrIA" (BYREF lpStart AS ASCIIZ, BYREF lpEnd AS ASCIIZ, BYVAL bMatch AS BYTE) AS DWORD

 

DECLARE FUNCTION StrRChrIW LIB "SHLWAPI.DLL" ALIAS "StrRChrIW" (BYVAL lpStart AS STRING, BYVAL lpEnd AS STRING, BYVAL wMatch AS WORD) AS DWORD

 

 

StrRetToBSTR

 

Accepts a STRRET structure returned by IShellFolder::GetDisplayNameOf that contains or points to a string, and then returns that string as a BSTR.

 

 

DECLARE FUNCTION StrRetToBSTR LIB "SHLWAPI.DLL" ALIAS "StrRetToBSTR" (BYREF pstr AS STRRET, BYVAL pidl AS DWORD, BYREF pbstr AS STRING) AS LONG

 

 

StrRetToBuf

 

Takes a STRRET structure returned by IShellFolder::GetDisplayNameOf, converts it to a string, and places the result in a buffer.

 

 

DECLARE FUNCTION StrRetToBuf LIB "SHLWAPI.DLL" ALIAS "StrRetToBufA" (BYREF pstr AS STRRET, BYVAL pidl AS DWORD, BYREF pszBuf AS ASCIIZ, BYVAL cchBuf AS DWORD) AS LONG

 

DECLARE FUNCTION StrRetToBufW LIB "SHLWAPI.DLL" ALIAS "StrRetToBufW" (BYREF pstr AS STRRET, BYVAL pidl AS DWORD, BYVAL pszBuf AS DWORD, BYVAL cchBuf AS DWORD) AS LONG

 

 

StrRetToStr

 

Takes a STRRET structure returned by IShellFolder::GetDisplayNameOf and returns a pointer to an allocated string containing the display name.

 

 

DECLARE FUNCTION StrRetToStr LIB "SHLWAPI.DLL" ALIAS "StrRetToStrA" (BYREF pstr AS STRRET, BYVAL pidl AS DWORD, BYREF ppszName AS DWORD) AS LONG

 

DECLARE FUNCTION StrRetToStrW LIB "SHLWAPI.DLL" ALIAS "StrRetToStrW" (BYREF pstr AS STRRET, BYVAL pidl AS DWORD, BYREF ppszName AS DWORD) AS LONG

 

 

StrRetToStrN

 

Takes an STRRET structure returned by IShellFolder::GetDisplayNameOf, converts it to a string, and places the result in a buffer.

 

 

DECLARE FUNCTION StrRetToStrN LIB "SHLWAPI.DLL" ALIAS "StrRetToStrNA" (BYREF psszOut AS ASCIIZ, BYVAL cchOut AS DWORD, BYREF sStrRet AS STRRET, BYVAL pidl AS DWORD) AS LONG

 

DECLARE FUNCTION StrRetToStrNW LIB "SHLWAPI.DLL" ALIAS "StrRetToStrNW" (BYVAL psszOut AS DWORD, BYVAL cchOut AS DWORD, BYREF sStrRet AS STRRET, BYVAL pidl AS DWORD) AS LONG

 

 

StrRStrI

 

Searches for the last occurrence of a specified substring within a string. The comparison is not case sensitive.

 

 

DECLARE FUNCTION StrRStrI LIB "SHLWAPI.DLL" ALIAS "StrRStrIA" (BYREF pszSource AS ASCIIZ, BYREF pszLast AS ASCIIZ, BYREF pszSrch AS ASCIIZ) AS DWORD

 

DECLARE FUNCTION StrRStrIW LIB "SHLWAPI.DLL" ALIAS "StrRStrIW" (BYVAL pszSource AS STRING, BYVAL pszLast AS STRING, BYVAL pszSrch AS STRING) AS DWORD

 

 

StrSpn

 

Obtains the length of a substring within a string that consists entirely of characters contained in a specified buffer.

 

 

DECLARE FUNCTION StrSpn LIB "SHLWAPI.DLL" ALIAS "StrSpnA" (BYREF psz AS ASCIIZ, BYREF pszSet AS ASCIIZ) AS LONG

 

DECLARE FUNCTION StrSpnW LIB "SHLWAPI.DLL" ALIAS "StrSpnW" (BYVAL psz AS STRING, BYVAL pszSet AS STRING) AS LONG

 

 

StrStr

 

Finds the first occurrence of a substring within a string. The comparison is case sensitive.

 

 

DECLARE FUNCTION StrStr LIB "SHLWAPI.DLL" ALIAS "StrStrA" (BYREF lpFirst AS ASCIIZ, BYREF lpSrch AS ASCIIZ) AS DWORD

 

DECLARE FUNCTION StrStrW LIB "SHLWAPI.DLL" ALIAS "StrStrW" (BYVAL lpFirst AS STRING, BYVAL lpSrch AS STRING) AS DWORD

 

 

StrStrI

 

Finds the first occurrence of a substring within a string. The comparison is not case sensitive.

 

 

DECLARE FUNCTION StrStrI LIB "SHLWAPI.DLL" ALIAS "StrStrIA" (BYREF lpFirst AS ASCIIZ, BYREF lpSrch AS ASCIIZ) AS DWORD

 

DECLARE FUNCTION StrStrIW LIB "SHLWAPI.DLL" ALIAS "StrStrIW" (BYVAL lpFirst AS STRING, BYVAL lpSrch AS STRING) AS DWORD

 

 

StrToInt

 

Converts a string representing a decimal value to an integer.

 

 

DECLARE FUNCTION StrToInt LIB "SHLWAPI.DLL" ALIAS "StrToIntA" (BYREF lpSrc AS ASCIIZ) AS LONG

 

DECLARE FUNCTION StrToIntW LIB "SHLWAPI.DLL" ALIAS "StrToIntW" (BYVAL lpSrc AS STRING) AS LONG

 

 

StrToInt64Ex

 

Converts a string representing a decimal or hexadecimal value to a 64-bit integer.

 

 

DECLARE FUNCTION StrToInt64Ex LIB "SHLWAPI.DLL" ALIAS "StrToInt64ExA" (BYREF pszString AS ASCIIZ, BYVAL dwFlags AS DWORD, BYREF plRet AS QUAD) AS LONG

 

DECLARE FUNCTION StrToInt64ExW LIB "SHLWAPI.DLL" ALIAS "StrToInt64ExW" (BYVAL pszString AS STRING, BYVAL dwFlags AS DWORD, BYREF plRet AS QUAD) AS LONG

 

 

StrToIntEx

 

Converts a string representing a decimal or hexadecimal number to an integer.

 

 

' Flags for StrToIntEx
%STIF_DEFAULT = &H00000000

' The string at pszString contains the representation of a decimal value.
%STIF_SUPPORT_HEX = &H00000001

' The string at pszString contains the representation of either a decimal or hexadecimal value. Note that in hexadecimal representations, the characters A-F are case-insensitive.

 

 

DECLARE FUNCTION StrToIntEx LIB "SHLWAPI.DLL" ALIAS "StrToIntExA" (BYREF pszString AS ASCIIZ, BYVAL dwFlags AS DWORD, BYREF plRet AS LONG) AS LONG

 

DECLARE FUNCTION StrToIntExW LIB "SHLWAPI.DLL" ALIAS "StrToIntExW" (BYVAL pszString AS STRING, BYVAL dwFlags AS DWORD, BYREF plRet AS LONG) AS LONG

 

 

StrTrim

 

Removes (trims) specified leading and trailing characters from a string.

 

 

DECLARE FUNCTION StrTrim LIB "SHLWAPI.DLL" ALIAS "StrTrimA" (BYREF pszSource AS ASCIIZ, BYREF pszTrimChars AS ASCIIZ) AS LONG

 

DECLARE FUNCTION StrTrimW LIB "SHLWAPI.DLL" ALIAS "StrTrimW" (BYVAL pszSource AS DWORD, BYVAL pszTrimChars AS STRING) AS LONG

 

 

wnsprintf

 

Takes a variable-length argument list and returns the values of the arguments as a printf-style formatted string.

 

Note  Because this function uses a variable list of parameters, can't be used with the PowerBASIC compilers. Use wvnsprintf instead.

 

 

DECLARE FUNCTION wnsprintf CDECL LIB "SHLWAPI.DLL" ALIAS "wnsprintfA" (BYREF lpOut AS ASCIIZ, BYVAL cchLimitIn AS LONG, BYREF pszFmt AS ASCIIZ, ...) AS LONG

 

DECLARE FUNCTION wnsprintfW CDECL LIB "SHLWAPI.DLL" ALIAS "wnsprintfW" (BYVAL lpOut AS DWORD, BYVAL cchLimitIn AS LONG, BYVAL pszFmt AS DWORD, ...) AS LONG

 

 

wvnsprintf

 

Takes a list of arguments and returns the values of the arguments as a printf-style formatted string.

 

 

DECLARE FUNCTION wvnsprintf CDECL LIB "SHLWAPI.DLL" ALIAS "wvnsprintfA" (BYREF lpOut AS ASCIIZ, BYVAL cchLimitIn AS LONG, BYREF pszFmt AS ASCIIZ, BYVAL arglist AS DWORD) AS LONG

 

DECLARE FUNCTION wvnsprintfW CDECL LIB "SHLWAPI.DLL" ALIAS "wvnsprintfW" (BYVAL lpOut AS DWORD, BYVAL cchLimitIn AS LONG, BYVAL pszFmt AS STRING, BYVAL arglist AS DWORD) AS LONG