An application can first call this function with a NULL data pointer to find out how much storage is needed for the data area. Having allocated the storage, the application can then make the call a second time for the data to be entered. The returned data can then be passed in DevOpenDC as pdrivDriverData within the pdopData parameter.
Calling this function requires the existence of a message queue.
Use SplEnumDevice or SplEnumPrinter with flType set to SPL_PR_DIRECT_DEVICE or SPL_PR_QUEUED_DEVICE to get a list of all the devices.
To get information about a specific device use SplQueryDevice.