從我讀過的文章中無法找到使用現代瀏覽器的客戶端本地打印機出於安全原因。我有一些可能會使答案不同的條件。查找客戶端打印機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