2008-08-18 89 views
5

我們使用經典的asp調用C#dll,並在C#dll中使用System.Drawing.Printing.PrinterSettings.InstalledPrinters來獲取可用打印機列表。如果打印機不共享,則當用戶打印時不會顯示打印機。本地系統帳戶可以查看並從VB6 dll打印給他們,管理員可以按照您的預期從C#dll中打印出來。是否有某種權限需要授予用戶,以便這些打印機可用?打印機不可用,除非共享

+0

我不確定你的意思。也許管理員可以這樣做,因爲他自己已經登錄,或者因爲特定用戶可以看到的打印機存儲爲註冊表中的條目。 – 2008-08-20 00:29:03

回答

4

我記得,運行一個網站使用網絡用戶帳戶,它可能沒有權限查看本地打印機。

在MSDN上有一個頁面,表示如何模擬另一個可能訪問打印機的用戶,但我一直無法找到它。

編輯:我張貼得太快了。 Here's the page

HTH

+0

我很確定它正在用用戶憑證運行。在SQL事件探查器中,我的查詢正在使用用戶的憑據。授予對打印機的網絡服務帳戶訪問權限不能解決問題。 – Ryan 2011-05-26 21:08:36

3

我相當肯定,冒充用戶或使用他們的憑證不構成看打印機的用戶的能力。我相信explorer.exe會在登錄後重新連接所有的網絡資源(共享/打印機)。

+0

如果只在explorer.exe運行時才連接,那麼當沒有用戶登錄時,爲什麼管理員能夠訪問打印機? – Ryan 2011-05-26 21:09:10

相關問題