Share via


SysReAllocStringLen (Compact 2013)

3/26/2014

This function creates a BSTR that contains a specified number of characters from an old BSTR, and frees the old BSTR.

Syntax

HRESULT SysReAllocStringLen(
  BSTR FAR* pbstr,
  OLECHAR FAR* pch,
  unsigned int cch 
);

Parameters

  • pbstr
    [out] Pointer to a string.
  • pch
    [in] Pointer to cch characters to copy, or NULL to keep the string uninitialized.
  • cch
    [in] Number of characters to copy from pch. A null character is placed afterward, allocating a total of cch+1 characters.

Return Value

Returns an HRESULT value.

Remarks

The SysReAllocStringLen function does the following:

  • Allocates a new string
  • Copies cch characters from the passed string into it
  • Appends a null character
  • Frees the BSTR referenced by pbstr
  • Resets pbstr to point to the new BSTR

If pch is NULL, a string of length cch is allocated but not initialized.

The pch string can contain embedded null characters and does not need to end with a NULL.

Only Unicode strings are supported.

Passing invalid (and under some circumstances NULL) pointers to this function causes an unexpected termination of the application.

Requirements

Header

oleauto.h

Library

oleaut32.lib

See Also

Reference

Automation Functions
BSTR