<p>We are using classic asp to call a C# dll and in the C# dll we are using System.Drawing.Printing.PrinterSettings.InstalledPrinters to get a list of availabe printers. If the printers are not shared they will not show up when a user trys to print. The Local System account can see and print to them from a VB6 dll and Administrators can print just fine from the C# dll as you might expect. Is there some sort of permissions we need to grant the user so these printers will be available?</p>

[{'answer_id': 14780, 'author': 'Tim Sullivan', 'author_id': 722, 'author_profile': 'https://Stackoverflow.com/users/722', 'pm_score': 2, 'selected': False, 'text': '<p>As I recall, running a website uses the Network User account, which may not have permission to view local printers.</p>\n\n<p>There was a page on MSDN that said how you can impersonate another user that might have access to the printers, but I\'ve not been able to find it.</p>\n\n<p>Edit: I posted too soon. <a href="http://support.microsoft.com/kb/306158" rel="nofollow noreferrer">Here\'s the page</a>.</p>\n\n<p>HTH</p>\n'}, {'answer_id': 15354, 'author': 'Joel Lucsy', 'author_id': 645, 'author_profile': 'https://Stackoverflow.com/users/645', 'pm_score': 2, 'selected': False, 'text': "<p>I'm fairly certain that impersonating a user or using their credentials does not constitute the ability to see the printers for that user. I believe explorer.exe reconnects all the network resources (shares/printers) upon logon.</p>\n"}]
['https://Stackoverflow.com/questions/14756', 'https://Stackoverflow.com', 'https://Stackoverflow.com/users/1545/']