2014-05-20 78 views
0

我在C#中編寫了一個項目,該項目與.csv文件交互並將其轉換爲模板中的.xlsx格式。這是在Visual Studio 2008中使用C#WinForms。它在我安裝了Excel的Windows 7 64位計算機上工作得很好,對我的主管計算機也一樣。但是,將它移回到Windows XP,它失敗了。多平臺編碼

我的問題是我需要做什麼才能使它成爲像這樣的多平臺?目標計算機是否也需要64位?如果是這樣,我該如何使我的項目32位而不是?它是否也需要某種Excel的安裝?

更新:我的程序中提到了Windows程序集中的東西,我不相信它們在目標計算機上。有沒有辦法以某種方式將它們與.exe打包,以便它可以在另一臺機器上運行?

+0

請描述「it failed」的含義。任何錯誤?任何調試信息? – Jite

+0

當我在Windows XP上雙擊.exe文件時,它立即出現錯誤,說我相信system.io文件未找到。這個錯誤隨機定位了數字,以至於我無法破譯。 – user3215251

+0

任何缺少的文件?可能是'FileNotFoundException'? – Jite

回答

2

幾項檢查

檢查AnyCPU在Visual Studio項目設置,查看此 http://msdn.microsoft.com/en-us/library/office/ff407621(v=office.14).aspx

檢查是否已安裝MS辦公室在Win XP機器,以及什麼版本,如果你的應用程序使用MS Office DLL,那麼你可能會面臨「DLL地獄問題」,檢查確切版本

嘗試通過放置日誌或刪除引用或註釋代碼進行調試。

+0

關於DLL,有兩個Excel DLL帶到XP機器上,他們與.exe相同的文件夾中。難道他們需要去別的地方嗎? – user3215251

+0

看到這個: http://stackoverflow.com/questions/10477977/what-reference-do-i-need-to-use-microsoft-office-interop-excel-in-net –