Попробуйте изменить pd.PrinterSettings =new PrinterSettings();
, чтобы прочитать что-то вроде этого:
pd.PrinterSettings =new System.Drawing.Printing.PrinterSettings;
По умолчанию, когда вы создаете экземпляр настроек принтера, он возвращает имя принтера по умолчанию просто к сведению ... затем вы можете попробовать что-токак это
//sudu code
foreach(string strPrinter in PrinterSettings.InstalledPrinters)
{
// or unless you know the name of the printer then skip this and assign it to the code above
}