IIS 7.5で実行されているASP.Net 4.0 Webアプリケーションがあります。System.Drawing.Printing.PrinterSettings.InstalledPrinters
コマンドを使用して、インストールされているプリンタのリストを取得し、 !ネットワーク接続されたプリンタがASP.Netアプリケーションで使用できない
は、いくつかのネットワークに接続されたプリンタがすべてのアプリケーションのユーザーアカウントに完全な特権で設定したサーバー上のがあるかもしれません、すべてはこの時点では、System.Drawing.Printing.PrinterSettings.InstalledPrinters
リターンのみローカルプリンタを窓の外のアプリケーションのユーザー・アカウントがログインするまで完璧に動作しますネットワークに接続されたプリンタは一覧表示されません。
:私は 特定のユーザーとして実行するアプリケーションプールProcess Model
を構成し
- 身元。
私は のWeb.Configで、特定のユーザーへのアプリケーションのIDを偽装:
advapi32.dll
API上記の方法の全てにおいて
を使用してコードで偽装を実装
そして最後にWindowsIdentity
は、印刷時に実際のユーザー名を返します。
System.Security.Principal.WindowsIdentity.GetCurrent().Name
しかし、ここでは偽装は問題ではないようです。ユーザーがログオフすると、ネットワーク接続されたすべてのプリンタは消えてしまいました。
これを解決する方法を知っている人はいますか?ユーザーがログインしていなくてもネットワーク接続プリンターにアクセスする方法はありますか?
に私たちがしているよう
PrintServerUNCName
は、対応するサーバのUNC nameです同じ問題を抱えています...あなたはこれに対する解決策を見つけましたか? – JDT