---
name: "SysAllocStringLen"
section: "3w"
platform: "linux"
package: "libwine-dev"
version: "1.4.1-4"
release: "Debian 7 (Wheezy)"
platforms: ["linux"]
url: "https://new.carta.tech/SysAllocStringLen"
---

# SysAllocStringLen(3w)

## NAME

**SysAllocStringLen** (OLEAUT32.4)

## SYNOPSIS

BSTR SysAllocStringLen\
  (\
   const OLECHAR\* *str*,\
   unsigned int   *len*\
  )

## DESCRIPTION

Create a **BSTR** from an **OLESTR** of a given wide character length.

## PARAMS

*str* **\[In\]**  Source to create **BSTR** from.

*len* **\[In\]**  Length of oleStr in wide characters.

## RETURNS

**Success:** A newly allocated **BSTR** from **[SysAllocStringByteLen(3w)](/SysAllocStringByteLen/3w.md)**

**Failure:** **NULL**, if *len* is \>= 0x80000000, or memory allocation fails.

## NOTES

See **[BSTR(3w)](/BSTR/3w.md)**, **[SysAllocStringByteLen(3w)](/SysAllocStringByteLen/3w.md)**.

## IMPLEMENTATION

Declared in **"oleauto.h"**.

Implemented in **"dlls/oleaut32/oleaut.c"**.

Debug channel **"ole"**.
