2012-02-10 54 views
0

一個WinForms程序中,我已經開發出印刷精美,當作爲交互式用戶按預期運行。使用相同的帳戶,但作爲計劃任務,該過程將正確運行,但它會以不正確的字體輸出部分輸出。批量處理不正確的字體打印

程序是打印更新價格標籤,標籤打印機。它具有Task Scheduler調用的選項(-s),它不提供GUI,但執行更新和打印。通過運行以交互式用戶身份正確執行此操作(即使用正確的字體)。

任何線索,這裏發生了什麼?打印不正確的字體是非標準系統字體。

這在服務器上運行,我想這可能是由於打印機重定向,但我做了一個控制檯登錄和它的工作罰款只是因爲它通過遠程桌面互動控制檯上的互動過程。

+0

以計劃任務運行某些東西並不意味着它不以交互模式運行。 – 2012-02-10 02:22:54

回答

0

有趣的問題。據推測,Windows不會將字體加載到非交互式登錄會話中以節省資源。

有關一種方法,請參見this answer,使用ps工具在運行任務時創建交互式會話。

0

我有一個非常類似的問題到你(通過運行計劃任務的應用程序將使用默認的字體,但在本地運行的時候會發現我安裝自定義字體),我找到了解決方法;在Server 2008上,在爲非交互式用戶安裝後,自定義字體不會立即註冊,而常規用戶(即,在實際登錄到計算機的用戶上運行時)確實會立即註冊字體。

這工作對我來說是簡單地重啓字體被安裝在機器和字體啓動非交互式帳戶下工作,當它正確註冊在計算機開啓作爲解決方案。看起來字體安裝有一個錯誤,它沒有爲非交互式用戶正確註冊字體,直到重新啓動。