2009-05-13 4 views
0

WindowsサービスアプリケーションでホストされているWCFサービスがあり、ホストされているマシンにインストールされているすべてのプリンタが返されます。私はSystem.Drawing.Printing.PrinterSettings.InstalledPrintersを使用してインストールされているプリンタの一覧を取得しましたが、Windows Vistaではすべてのプリンタが返されない理由はわかりません。VistaのPrinterSettings.InstalledPrinters

ホストWindowsサービスは、Administratorsグループのメンバーで、「サービスとしてログオン」権限を持ち、app.Manifestに「requireAdministrator」実行レベルを追加したアカウントを使用して実行されます。

更新: VistaのWindowsアプリケーションでInstalledPrintersプロパティを使用すると、すべてのプリンタが返されます。

答えて

0

他のメンバーがインストールしていないアプリケーションを実行しているユーザー用にプリンタがインストールされていますか?

これは、アプリケーションを実行しているユーザー用にセットアップされているプリンタは、サービスを実行しているユーザー用にセットアップされていない可能性があるため、チェックすることができます。

(同じユーザーとしての両方を実行している場合、これは、もちろん、議論の余地がポイントです)

+0

あなたは正しいです。問題は、私のサービスが別のユーザーアカウントで実行されていることです。そのアカウントにログインしなくても、私のサービスが使用するユーザーアカウントのプリンタをインストールすることができますか? – mrtaikandi

0

は、Windowsサービスからそれらを使用するようにローカルにプリンタをインストールする必要があります。プリンタの追加ウィザードを起動すると、ローカルまたはリモートのプリンタを追加するかどうかを選択できます。