从我读过的文章中无法找到使用现代浏览器的客户端本地打印机出于安全原因。我有一些可能会使答案不同的条件。查找客户端打印机ASP.Net
- 我正在尝试从公司网络中获取客户端本地打印机。所以这不是公布的'外部'
- 我想几年前,微软发布了一个小型的.Net,可以从客户端浏览器运行。如果是这样,它仍然在附近,我想知道是否可以检查客户本地打印机。
感谢
给检索客户端打印机的外观从我读过的文章中无法找到使用现代浏览器的客户端本地打印机出于安全原因。我有一些可能会使答案不同的条件。查找客户端打印机ASP.Net
感谢
给检索客户端打印机的外观一种方法是运行具有相同的访问权限在同一网络中的服务器端应用程序。 Silverlight也许可以做到。不幸的是,我没有经验。
这最终成为了很多工作,很少的信息,因为我的几乎所有互联网的解决方案上的搜索假设我们想从浏览器获取客户端的打印机。我们想通过网络找到这样的信息。
该解决方案最终与DirectorySearch等类似。这里是删除了一些隐私内容的代码。它处于POF状态,所以它可能有一些不太好的语法
Dim list As New List(Of String)
Dim listtemp As New List(Of String)
Dim resultCollection As SearchResultCollection
Dim computer_name As String = System.Net.Dns.GetHostEntry(Request.ServerVariables("remote_addr")).HostName.Replace(".ourcompany.com", "").ToLower 'clients machine name
Dim dirEntry As New DirectoryEntry("LDAP://DC=OURCOMPANY, DC=com")
Dim dirSearcher As New DirectorySearcher(dirEntry)
dirSearcher.Filter = "objectCategory=printQueue"
dirSearcher.PropertyNamesOnly = True
dirSearcher.PropertiesToLoad.Add("Name")
dirSearcher.SearchScope = SearchScope.Subtree
resultCollection = dirSearcher.FindAll()
For Each sresult As SearchResult In resultCollection
If sresult.GetDirectoryEntry.Name.ToLower.Contains(computer_name) Then
list.Add(sresult.GetDirectoryEntry.Name.ToLower.Substring(3).Replace(computer_name + "-", ""))
End If
Next