Edit

Share via


wnsprintfW function (shlwapi.h)

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

Note  Do not use this function. See Remarks for alternative functions.
 

Syntax

int wnsprintfW(
  [out] PWSTR  pszDest,
  [in]  int    cchDest,
  [in]  PCWSTR pszFmt,
        ...    
);

Parameters

[out] pszDest

Type: PTSTR

A pointer to a buffer that, when this function returns successfully, receives the output string.

[in] cchDest

Type: int

The maximum number of characters allowed in pszDest.

[in] pszFmt

Type: PCTSTR

A printf-style format string. The %s format identifier should never be used in an unbounded form. To avoid potential buffer overruns, always specify a size; for instance "%32s".

...

Additional parameters that contain the data to be output.

Return value

Type: int

Returns the number of characters written to the buffer, excluding any terminating NULL characters. A negative value is returned if an error occurs.

Remarks

Security Warning:  Using this function incorrectly can compromise the security of your application. The copied string is not guaranteed to be null-terminated. Consider using one of the following alternatives. StringCbPrintf, StringCbPrintfEx, StringCbVPrintf, StringCbVPrintfEx, StringCchPrintf, StringCchPrintfEx, StringCchVPrintf, or StringCchVPrintfEx. You should review Security Considerations: Microsoft Windows Shell before continuing.

This is a Windows version of sprintf. It does not support floating-point or pointer types. It supports only the left alignment flag.

Note

The shlwapi.h header defines wnsprintf as an alias that automatically selects the ANSI or Unicode version of this function based on the definition of the UNICODE preprocessor constant. Mixing usage of the encoding-neutral alias with code that is not encoding-neutral can lead to mismatches that result in compilation or runtime errors. For more information, see Conventions for Function Prototypes.

Requirements

Requirement Value
Minimum supported client Windows 2000 Professional, Windows XP [desktop apps only]
Minimum supported server Windows 2000 Server [desktop apps only]
Target Platform Windows
Header shlwapi.h
Library Shlwapi.lib
DLL Shlwapi.dll (version 5.0 or later)