2010-01-12 14 views
2

我需要從上傳的Excel文件中刪除密碼保護。我一直在用Excel程序集(ASP.NET/C#)直接執行此操作,然後嘗試使用ooxmlcrypto,兩者均可行,但問題是由於依賴關係,我無法部署這兩種解決方案之一。從Excel文件中刪除密碼 - 無需在我的服務器上安裝Excel

我的意思是,我的系統管理員不希望我們在服務器上安裝Excel,因爲我一直在尋找一些替代品,我找不到一個。

我的問題是:有沒有辦法將必要的DLL放入服務器而不安裝Excel或Office套件?

我發現這個:Office 2007 Primary Interop Assemblies redistributable package但仍然需要一個Microsoft Office產品。

任何想法?

+0

你想支持什麼Excel文件格式? – 2010-01-12 18:18:19

+0

我只想支持Office 2007及以上版本 – Hugo 2010-01-14 23:59:37

回答

1

您正在以錯誤的方式查看問題。如果你不能使用Excel,那麼不要處理Excel。試圖逆向工程Excel並不是你想要走下坡路。讓你的客戶使用另一種格式。爲了安全起見,請使用打開的加密標準,例如壓縮文件。此外,電子表格是一種糟糕的處理格式,因爲用戶總是會發現新的佈局方式。他們會將日期提交爲字符串,或者添加一個新列,等等。您將永遠對代碼進行白癡驗證。堅持一些明確的內容,如csv

+0

非常好的答案,讓用戶在Excel中提交數據是一場噩夢。在我工作的地方,我們爲核心產品採用數據導入流程,該流程允許用戶在Excel中編輯數據,然後我們讓他們設置一個範圍並將其導出爲DBF文件。仍然不太漂亮,但它允許我們對數據實施某種結構。 – mdm 2010-01-13 15:11:48

+1

-1:如果您必須支持管理服務器上的Excel文件,因爲客戶需要這些文件,那就是這樣。不要告訴你的客戶「你必須改變你的需求,因爲我沒有一個簡單的解決方案」。人們想要/需要使用Excel的原因有很多,只是爲了擺脫它,這並不簡單。 – chiccodoro 2010-10-07 07:58:46

+2

當然,你不會告訴你的客戶情況如何 - 你讓他們成爲決定的合作伙伴,但你試圖在盒子外思考並提出其他解決方案。如果Excel是強制性的,那就這樣吧,但重新考慮對Excel的需求(就像我喜歡Excel一樣)是反思整個問題的一個很好的例子。 – Greg 2010-11-11 05:05:44

1

您可以使用第三方組件刪除Excel密碼。

例如: SmartXLS for .Net可以讀取/寫入Excel97-2003 xls文件和Excel2007 xlsx文件,用密碼對其進行加密/解密。

相關問題