インストールされているプリンターのリストをコンボボックスに取得する次のコードがあります。
For Each s As String In Printing.PrinterSettings.InstalledPrinters
edtPrinter.Items.Add(s)
Next
ただし、単一のクライアントのインストールに問題があります。おそらくスプール サービスに問題があり、この繰り返しがハングしてアプリをロックします。その特定のコンピューターのコントロール パネルの [デバイスとプリンター] をクリックすると、エクスプローラーで同じ「ハング」をトリガーできます。Spool32 を再起動すると、反復が再びヒットするまでアプリが解放されます。
スプーラの問題を修正するのではなく、何らかのタイムアウトを実装するか、スプーラの問題がある場合にこの呼び出しがアプリをフリーズするのを防ぐにはどうすればよいですか? これを別のスレッドで問題なく呼び出すことはできません。アプリをフリーズにさらさずにこのプロパティを呼び出すより良い方法はありますか?