I have instaled asp.net application on a server. I want to display network printers in a dropdown and i use this codes to achive that goal:
- Protected Overrides Sub LoadPrinters()
- Dim permison As New PrintingPermission(PrintingPermissionLevel.AllPrinting)
-
- If Not IsPostBack Then
- Dim strPrinter As String
- Dim li As ListItem
- dlPrinters.Items.Clear()
- dlPrinters.Items.Add(New ListItem("Select Printer", ""))
-
- For Each strPrinter In System.Drawing.Printing.PrinterSettings.InstalledPrinters
- dlPrinters.Items.Add(strPrinter)
- Next
- End If
Also i try this code:
- Private Sub PrinterList()
-
-
-
- Dim objMS As System.Management.ManagementScope = _
- New System.Management.ManagementScope(ManagementPath.DefaultPath)
- objMS.Connect()
-
- Dim objQuery As SelectQuery = New SelectQuery("SELECT * FROM Win32_Printer")
- Dim objMOS As ManagementObjectSearcher = New ManagementObjectSearcher(objMS, objQuery)
- Dim objMOC As System.Management.ManagementObjectCollection = objMOS.Get()
-
- dlPrinters.Items.Clear()
- dlPrinters.Items.Add(New ListItem("Select Printer", ""))
-
- For Each Printers As ManagementObject In objMOC
- If CBool(Printers("Local")) Then
- dlPrinters.Items.Add(Printers("Name"))
- End If
- If CBool(Printers("Network")) Then
- dlPrinters.Items.Add(Printers("Name"))
- End If
- Next Printers
- End Sub
In both scenarios i cannot see network printers in the dropdown list and if i use second code i can see error: Access is denied.
My application is using impersonate account with full permision to the network and printers. What else can make the problems?