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

# GetPrinterDriverDirectoryW(3w)

## NAME

**GetPrinterDriverDirectoryW** (WINSPOOL.@)

## SYNOPSIS

BOOL GetPrinterDriverDirectoryW\
  (\
   LPWSTR  *pName*,\
   LPWSTR  *pEnvironment*,\
   DWORD   *Level*,\
   LPBYTE  *pDriverDirectory*,\
   DWORD   *cbBuf*,\
   LPDWORD *pcbNeeded*\
  )

## DESCRIPTION

Return the **PATH** for the Printer-Drivers (**UNICODE**).

## PARAMS

*pName* **\[In\]**  Servername (**NT** only) or **NULL** (local Computer).

*pEnvironment* **\[In\]**  Printing-Environment (see below) or **NULL** (Default).

*Level* **\[In\]**  Structure-*Level* (must be **1**).

*pDriverDirectory* **\[Out\]**  **PTR** to Buffer that receives the Result.

*cbBuf* **\[In\]**  Size of Buffer at *pDriverDirectory*.

*pcbNeeded* **\[Out\]**  **PTR** to **DWORD** that receives the size in Bytes used / required for *pDriverDirectory*.

## RETURNS

**Success:** **TRUE** and in *pcbNeeded* the Bytes used in *pDriverDirectory*

**Failure:** **FALSE** and in *pcbNeeded* the Bytes required for *pDriverDirectory*, if *cbBuf* is too small.

Native Values returned in *pDriverDirectory* on Success: \
\
   NT(Windows NT x86):  "%winsysdir%\\spool\\DRIVERS\\w32x86"\
\
   NT(Windows 4.0):     "%winsysdir%\\spool\\DRIVERS\\win40"\
\
   win9x(Windows 4.0):  "%winsysdir%".

**"%winsysdir%"** is the Value from **[GetSystemDirectoryW(3w)](/GetSystemDirectoryW/3w.md)**.

## FIXME

**-** Only **NULL** or "" is supported for *pName*

## IMPLEMENTATION

Declared in **"winspool.h"**.

Implemented in **"dlls/winspool.drv/info.c"**.

Debug channel **"winspool"**.
