It might also be doable by using the printui.dll. It's been like 6 years or more since I messed with it, but in the addprinter() udf, it uses it to add a printer using a ini file driver. In the text of the header, I think I put how to get all the options it can do.

Rob Vanderwoude has a good write up too: http://www.robvanderwoude.com/2kprintcontrol.php

The .net stuff might be doable too with the com interface to powershell. http://www.kixtart.org/forums/ubbthreads.php?ubb=showflat&Number=199178#Post199178