資源簡介
該實例只是一個 flexpager的測試實例,用vs打開的時候 可能無法加載項目,這時,將解決方案文件OfficeToSwf1.1.sln中的 <E:\學習資料\OfficeToSwf> 路徑替換成你當前的路徑即可
在運行起來之后,訪問這個網址即可測試 http://localhost:8549/view.aspx?id=12
文件在線預覽
1.實現文件在線預覽,需要使用兩個軟件(pdf2swf.exe)和(SaveAsPDFandXPS.exe)
pdf2swf.exe無須安裝,程序直接調用
SaveAsPDFandXPS.exe 使用前安裝至服務器
2.目前僅支持word/excel/ppt/pptx 4種文件的轉換和預覽,在此基礎上還可以擴展更過文件
3.文件上傳大小限制于100MB以內,通過config文件可以修改文件大小限制
4.實現原理:對上傳的先進行轉換pdf,如果上傳格式為pdf,那么直接保存至服務器。
上傳成功之后,會自動保存在服務器。點擊當前上傳文件預覽是,在通過pdf轉換為swf文件,通過flash插件進行預覽
5.上傳的文件統一保存在數據庫,保存的內容包含上傳的文件和已經轉換的pdf文件,swf文件未保存,直接存在服務器UploadFile文件夾下
6.數據庫為WenKu.mdf,該數據庫版本過高,有可能導致無法附件,可以通過一下SQL創建數據庫
create database WenKu
go
use WenKu
go
create table WenKu
(
[WID] [int] IDENTITY(1,1) NOT NULL,
[WName] [ntext] NULL,
[WUploadPath] [ntext] NULL,
[WSavePath] [ntext] NULL
)
7.通過AddFile.aspx上傳文件,返回Default3.aspx,查看已經上傳的文件,點擊文件名進行預覽
8.運行邏輯,先上傳普通文件,點擊預覽時讀取文件,先轉換pdf在轉換成swf格式。再次預覽如果已存在,則不會轉換,否則將轉換
==================================================================================
權限問題
1:在"開始"->"運行"中輸入dcomcnfg.exe啟動"組件服務"
2:依次雙擊"組件服務"->"計算機"->"我的電腦"->"DCOM配置"
3:在"DCOM配置"中找到"Microsoft Excel 應用程序",在它上面點擊右鍵,然后點擊"屬性",彈出"Microsoft Excel 應用程序屬性"對話框
4:點擊"標識"標簽,選擇"交互式用戶"
5:點擊"安全"標簽,在"啟動和激活權限"上點擊"自定義",然后點擊對應的"編輯"按鈕,
在彈出的"安全性"對話框中填加一個"NETWORK SERVICE"用戶(注意要選擇本計算機名),并給它賦予"本地啟動"和"本地激活"權限.
6:依然是"安全"標簽,在"訪問權限"上點擊"自定義",然后點擊"編輯",在彈出的"安全性"對話框中也填加一個"NETWORK SERVICE"用戶,然后賦予"本地訪問"權限.
這樣,我們便配置好了相應的Excel的DCOM權限.
7:如果只有Excel就設置Excel的程序,如果有Word那就也設置Word的程序
代碼片段和文件信息
using?System;
using?System.Collections.Generic;
using?System.Web;
using?System.Web.UI;
using?System.Web.UI.WebControls;
using?System.IO;
using?System.Web.SessionState;
using?Microsoft.Office.Core;
using?Word?=?Microsoft.Office.Interop.Word;
using?WenKu.Model;
using?WenKu.BLL;
public?partial?class?Manage_WenKu2_AddFile?:?System.Web.UI.Page
{
????void?Page_Load(object?sender?EventArgs?e)
????{
????}
????///?
????///?圖片上傳
????///?
????///?
????///?
????protected?void?Button1_Click(object?sender?EventArgs?e)
????{
????????if?(this.FileUpload1.HasFile)
????????{
????????????FileInfo?fileInfo?=?new?FileInfo(this.FileUpload1.FileName);
????????????string?extension?=?fileInfo.Extension.ToLower()
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2015-07-30?14:02??OfficeToSwf\
?????目錄???????????0??2015-07-30?14:54??OfficeToSwf\OfficeToSwf1.1\
?????文件????????1669??2015-07-30?11:39??OfficeToSwf\OfficeToSwf1.1.sln
?????文件???????19456??2015-07-30?17:30??OfficeToSwf\OfficeToSwf1.1.suo
?????文件?????????735??2012-11-05?13:47??OfficeToSwf\OfficeToSwf1.1\AddFile.aspx
?????文件????????3009??2012-11-05?14:24??OfficeToSwf\OfficeToSwf1.1\AddFile.aspx.cs
?????目錄???????????0??2015-07-30?11:30??OfficeToSwf\OfficeToSwf1.1\App_Code\
?????文件????????7162??2012-03-21?22:56??OfficeToSwf\OfficeToSwf1.1\App_Code\Office2Pdf.cs
?????文件????????1685??2012-11-05?13:39??OfficeToSwf\OfficeToSwf1.1\App_Code\Pdf2Swf.cs
?????文件????????3866??2010-12-24?13:16??OfficeToSwf\OfficeToSwf1.1\App_Code\SqlHelper.cs
?????目錄???????????0??2015-07-30?11:30??OfficeToSwf\OfficeToSwf1.1\App_Data\
?????文件?????3145728??2012-11-08?10:19??OfficeToSwf\OfficeToSwf1.1\App_Data\WenKu.mdf
?????文件?????1048576??2012-11-08?10:19??OfficeToSwf\OfficeToSwf1.1\App_Data\WenKu_log.ldf
?????目錄???????????0??2015-07-30?13:29??OfficeToSwf\OfficeToSwf1.1\Bin\
?????文件??????110592??2008-08-06?20:01??OfficeToSwf\OfficeToSwf1.1\Bin\aspnetpager.dll
?????文件??????259584??2014-01-10?14:03??OfficeToSwf\OfficeToSwf1.1\Bin\DocX.dll
?????文件???????45056??2007-08-23?21:37??OfficeToSwf\OfficeToSwf1.1\Bin\Interop.jmail.dll
?????文件?????1100392??2007-10-10?09:48??OfficeToSwf\OfficeToSwf1.1\Bin\Microsoft.Office.Interop.Excel.dll
?????文件??????????78??2015-07-30?11:39??OfficeToSwf\OfficeToSwf1.1\Bin\Microsoft.Office.Interop.Excel.dll.refresh
?????文件??????223856??2007-10-10?09:48??OfficeToSwf\OfficeToSwf1.1\Bin\Microsoft.Office.Interop.PowerPoint.dll
?????文件?????????270??2012-03-21?12:23??OfficeToSwf\OfficeToSwf1.1\Bin\Microsoft.Office.Interop.PowerPoint.dll.refresh
?????文件??????662120??2007-10-10?09:48??OfficeToSwf\OfficeToSwf1.1\Bin\Microsoft.Office.Interop.Word.dll
?????文件?????????258??2012-03-21?12:23??OfficeToSwf\OfficeToSwf1.1\Bin\Microsoft.Office.Interop.Word.dll.refresh
?????文件??????348160??2014-10-23?14:50??OfficeToSwf\OfficeToSwf1.1\Bin\Microsoft.Practices.EnterpriseLibrary.Common.dll
?????文件?????????106??2015-07-30?10:59??OfficeToSwf\OfficeToSwf1.1\Bin\Microsoft.Practices.EnterpriseLibrary.Common.dll.refresh
?????文件??????172032??2014-10-23?14:50??OfficeToSwf\OfficeToSwf1.1\Bin\Microsoft.Practices.EnterpriseLibrary.Data.dll
?????文件?????????102??2015-07-30?10:59??OfficeToSwf\OfficeToSwf1.1\Bin\Microsoft.Practices.EnterpriseLibrary.Data.dll.refresh
?????文件???????29760??2014-10-23?14:50??OfficeToSwf\OfficeToSwf1.1\Bin\Microsoft.Practices.ServiceLocation.dll
?????文件??????????88??2015-07-30?10:59??OfficeToSwf\OfficeToSwf1.1\Bin\Microsoft.Practices.ServiceLocation.dll.refresh
?????文件??????133944??2014-12-23?13:11??OfficeToSwf\OfficeToSwf1.1\Bin\Microsoft.Practices.Unity.dll
?????文件??????????68??2015-07-30?10:59??OfficeToSwf\OfficeToSwf1.1\Bin\Microsoft.Practices.Unity.dll.refresh
............此處省略83個文件信息
- 上一篇:asp.net 博客網站源碼(MasterPage)
- 下一篇:鼠標全局事件
評論
共有 條評論