I upgraded the Windows environment from 8 to 10 and found that the default printer does not return and another one returns instead.
I disabled the option "Let Windows manage my default printer", but still did not get the default printer.
I have the following code:
private void testPrinter() {
PrintService[] array = PrintServiceLookup.lookupPrintServices(null, null);
for(PrintService ps : array){
System.out.println(ps.getName());
}
}
In this test, I get a list of printers as follows:
However, in the following test:
PrintService ps = PrintServiceLookup.lookupDefaultPrintService();
System.out.println(ps.getName());
I get an HP printer that is not my default printer !!! No matter which default printer I choose, the HP printer always returns
I looked at the java API for the lookupDefaultPrintService method and it says the following:
. null. , , , , . , .
API- Java . , javax.print.defaultPrinter. .
Windows 8 . . ?