To set the default printer programmatically under Windows 95, Windows 98, or Windows Millennium Edition (Me) use the SetPrinter() Win32 API function.
Note that the SetPrinter() API call is a valid method, but is platform-dependent and should work only on Windows 95, Windows 98, or Windows Me (it does not work on Windows NT or on a 16-bit platform).
To set or change the default printer under Windows 95, call:
SetPrinter(HANDLE hPrinter, DWORD dwLevel, LPBYTE lpbPrinter,
DWORD dwCommand)
Obtain the hPrinter parameter from OpenPrinter() as a handle that
identifies the desired printer. Set the dwLevel parameter to 5, and point
lpbPrinter to the PRINTER_INFO_5 structure. Set the dwCommand parameter to
0 (zero). Fill out the PRINTER_INFO_5 structure appropriately making sure that the
Attributes field has PRINTER_ATTRIBUTE_DEFAULT set.