a little late I know..
The way in which I have this working is to use ActiveX DLL on the
server that uses the VB
Printer object. The DLL is written to allow
any printer installed on the Server for the currently logged in
user to print to. ASP usually uses SYSTEM or IUSR_Interactive
accounts as default or something similiar, this can also be set to a
specific user account through IIS Manager. By setting a specific
user account to be used when the ASP page is run will allow any
printers setup on the server for that user account to be available.
The SYSTEM or IUSR_Interactive accounts are not accounts you can
normally use to sign on with, hence you can't setup any printers.
There is a registry edit you can do though its probably best to
set up an existing or new account with the printers and set the ASP
page to use that account.
Setting up a printer on the Server requires you to add a new Local
printer by creating a new TCP/IP printer port and supplying the IP
address. This will map the network printer to the Server as local
and thus available to install on all user accounts.