2010-05-04 51 views
2

我試圖解決類似於here所述的問題 - 創建一個Windows服務,用於拍攝富網頁(html + js + flash)的快照並將其保存爲PDF文件。爲什麼Flash無法在Windows服務中呈現?

捆綁Firefox + cmdlnprint爲我做了詭計。我寫了一個簡單的程序作爲一項服務運行,調用Firefox來製作PDF。一切似乎都很順利,PDF文件被創建,但Flash完全沒有了。雖然,當開始不作爲服務時,Flash渲染就很好。

任何人都可以闡明什麼阻止從渲染Flash和如果有解決方法嗎?

謝謝!

+0

爲什麼它必須作爲服務運行?在LocalSystem的上下文中加載網頁(尤其是包含Flash內容的網頁)是一個糟糕的主意。 – Luke 2010-05-04 18:37:02

+0

它應該是一個即使沒有用戶登錄也應該能夠運行的服務器解決方案。 – Leonid 2010-05-04 23:12:33

+0

@Leonid:你做這個工作,因爲我做的是完全一樣的。 – 2011-12-15 13:45:38

回答

1

我只能拍攝到黑暗的這裏,但兩件事情浮現在腦海中:

  • 誰(哪個用戶)正在運行的服務的?如果您使服務在管理員用戶下運行,會發生什麼情況?

  • 如果您的服務在本地系統帳戶上運行,是否啓用了服務(允許在桌面和服務之間交換數據)複選框(不知道它是用英文命名的)?你永遠不知道Flash可能需要運行什麼。

如果不奏效,你有沒有看着CrowbarXULRunner?我不確定他們是否做你需要的東西 - 如果他們這麼做,是否Flash與他們合作 - 但他們似乎是接近你想要做的事。

+0

我只能在管理員級別的用戶帳戶下才能使用它。 我沒有運氣在LocalSystem帳戶下運行服務,有或沒有「允許服務與桌面交互」 - 正在收到服務未被允許打印的消息。 感謝您提供其他解決方案,但看起來問題出在Flash本身。我嘗試了另一個基於IE的實用工具IECapt(iecapt.sourceforge.net),它並沒有在服務模式下呈現Flash。 – Leonid 2010-05-04 23:09:53

+0

@Leonid所以它作爲一個服務在管理員帳戶下工作? – 2010-05-05 07:09:58

+0

對不起,我的意思是我只能得到在管理帳戶下運行的服務中生成的PDF。它仍然有空格而不是Flash。如果在本地系統下運行該服務,甚至無法生成PDF。因此PDF + Flash只能在用戶非服務模式下工作。我試圖弄清楚爲什麼是這樣。 – Leonid 2010-05-05 17:39:24

相關問題