---
title: CopyStringDescriptor
framework: usbdriverkit
role: symbol
role_heading: Instance Method
path: usbdriverkit/iousbhostinterface/copystringdescriptor-8k65j
---

# CopyStringDescriptor

Returns a string descriptor from the device.

## Declaration

```occ
virtual const IOUSBStringDescriptor * CopyStringDescriptor(uint8_t index);
```

## Parameters

- `index`: The descriptor’s index value.

## Return Value

Return Value A pointer to the descriptor, or NULL if the descriptor isn’t found. It’s your responsibility to free the returned descriptor.

## Discussion

Discussion This method uses a GET_DESCRIPTOR control request (USB 2.0, section 9.4.3) to fetch the string descriptor from the device. The method puts the index value in the low byte of the wValue field of the request structure, and it uses US English as the language.

## See Also

### Getting Interface-Related Descriptors

- [CopyConfigurationDescriptor](usbdriverkit/iousbhostinterface/copyconfigurationdescriptor.md)
- [GetInterfaceDescriptor](usbdriverkit/iousbhostinterface/getinterfacedescriptor.md)
- [CopyStringDescriptor](usbdriverkit/iousbhostinterface/copystringdescriptor-83du1.md)
