2010-07-21 108 views
4

我有一個相當複雜的工具鏈等了漫長的後期製作,直到得到的問題:的Windows 7服務差異

我設法得到的PDFCreator和虛擬PDF運行Windows 7下創建打印機在服務器模式下作爲服務。該過程中的下一步是在創建PDF後,PDFCreator調用VBScript。該腳本通過WebService將PDF上傳到我們的服務器,並輪詢服務器以獲取PDF。當下載得到的PDF時,VBScript需要將其打印到配置好的打印機。

現在打印我用的PDFCreator綜合COM對象,它可以訪問GhostScript的。對於PDFCreator服務啓動的任何帳戶,這完全適用於Windows XP。例如作爲域用戶接入到從VBScript的共享的打印機,當用戶上下文是相同的PDFCreator服務。

現在,我嘗試同樣適用於Windows 7和使用「本地系統」賬戶之前,因爲我的測試打印機是本地一個(和作品,即TestPage)。效果是wscript停留在任務管理器中並且永遠不會結束。接下來,我爲該服務激活了交互模式,並激活了一臺鋸Ghostscript,要求打印機進行打印。打印機確實存在,因爲我調用的VBScript中的GS前檢查,而是出於任何原因GhostScript的沒有看到打印機雖然在打開的對話框來選擇打印機時,打印機是存在的。

經過長達數天的搜索,甚至沒有成功嘗試一個新的服務器管理員帳戶,但沒有成功,我終於想出了一種方法來實現它。更改用戶的PDFCreator的服務,以「現場服務」我第一次得到了一個錯誤的PDFCreator的COM對象創建失敗。好吧,我想這是有道理的,因爲「現場服務」有「區域系統」少權。通過更改comexp.msc下的訪問權限併爲本地和遠程COM和腳本訪問授予「本地服務」權限,我解決了此限制。 Voilá,一切正常。

我不明白:爲什麼「本地服務」帳戶下的Ghostscript能夠找到打印機,儘管該帳戶擁有的「本地系統」權限較少?

並且:我需要爲「本地系統」或任何其他用戶帳戶設置哪種訪問權限才能使其正常工作?

或者:是否有這些帳戶之間詳細差異的綜合列表?

非常感謝你和格爾茨, GHAD

回答

3

答案可以在這裏找到:KB184291

這是關於ASP/IIS「本地系統」帳戶下運行,不能打印,因爲打印機不可用在.DEFAULT用戶下。通過註冊表項複製有助於。

Greetz, GHad