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

# TranslateInfStringExW(3w)

## NAME

**TranslateInfStringExW** (ADVPACK.@)

## SYNOPSIS

HRESULT TranslateInfStringExW\
  (\
   HINF    *hInf*,\
   LPCWSTR *pszInfFilename*,\
   LPCWSTR *pszTranslateSection*,\
   LPCWSTR *pszTranslateKey*,\
   LPWSTR  *pszBuffer*,\
   DWORD   *dwBufferSize*,\
   PDWORD  *pdwRequiredSize*,\
   PVOID   *pvReserved*\
  )

## DESCRIPTION

Using a handle to an **INF** file opened with OpenINFEngine, translates the value of a specified key in an inf file into the current locale by expanding string macros.

## PARAMS

*hInf* **\[In\]**  Handle to the **INF** file.

*pszInfFilename* **\[In\]**  Filename of the **INF** file.

*pszTranslateSection* **\[In\]**  Inf section where the key exists.

*pszTranslateKey* **\[In\]**  Key to translate.

*pszBuffer* **\[Out\]**  Contains the translated string on exit.

*dwBufferSize* **\[In\]**  Size on input of *pszBuffer*.

*pdwRequiredSize* **\[Out\]**  Length of the translated key.

*pvReserved* **\[In\]**  Reserved. Must be **NULL**.

## RETURNS

**Success:** **S\_OK**.

**Failure:** **E\_FAIL**.

## NOTES

To use TranslateInfStringEx to translate an **INF** file continuously, open the **INF** file with OpenINFEngine, call TranslateInfStringEx as many times as needed, then release the handle with CloseINFEngine. When translating more than one keys, this method is more efficient than calling TranslateInfString, because the **INF** file is only opened once.

## IMPLEMENTATION

Declared in **"advpub.h"**.

Implemented in **"dlls/advpack/advpack.c"**.

Debug channel **"advpack"**.
