I believe that this is possible due to interaction with the native win32 APIs, but I found it much simpler to simply use System.Diagnostics.Process () to call printui.dll via:
rundll32.exe printui.dll,PrintUIEntry /?
, script, : PrintUI.DLL
, . Windows, ( , - .INF, , ).