2010-01-28 74 views
7

我有一個包含PDF文件的內存流。從流中啓動流程

是否可以查看PDF而不將其保存到硬盤上? Process.Start()只需要一個路徑而不是一個流。

謝謝

+0

從昨天查看這個相關文章:http://stackoverflow.com/questions/2144744/open-in-memory-xml-string-as-an-excel-workbook-with-out-saving-uisng-windows-對於/ 2144775#2144775 – Jay 2010-01-28 20:43:33

回答

9

只有在C#中實現自己的僞文件系統,不知何故安裝這是在Windows下的磁盤,並讓它攔截文件打開和流您的MemoryStream的內容。絕對100%絕對不值得。

1

如果有,process.Start不會是這樣,但我會冒險猜測沒有。 除非有特定的PDF API允許以某種方式(我懷疑)將它保存到磁盤。

3

你可以創建一個RAM drive並將流寫入它,這樣你仍然保持所有內存(假設磁盤操作是你所擔心的)。

2

當然,這當然是可以的。只是不通過進程啓動和Adobe Reader(我假設你正在調用Adobe或類似的東西)

如果您使用的是.NET或Java,您只需要找到一個PDF查看器組件,那麼有很多可供選擇的地方,給你很多鏈接,Gnostice有一個很好的鏈接,但它很貴。一旦找到合適的控件,請直接從您的應用程序查看PDF。

+0

我正在建議這樣的事情。查找一個PDF查看組件(如果您可以自動化Reader,則更好),並查看它是否可以從IStream加載。 – 2010-01-28 21:29:38