List available printers or use default printer?

Listing the available printers is more of a Windows-API question than a Rust question (I'm assuming you're on Windows).
You would need to call the EnumPrinters function in the Windows API. Here's a thread where someone had to do that from Rust (HIH):