• 大小: 29.18M
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2020-12-25
  • 语言: C#
  • 标签: 阅读  在线  

资源简介

该实例只是一个 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个文件信息

评论

共有 条评论