读书人

送分了。ASP.NET 打印并上载服务器下

发布时间: 2013-03-12 11:19:35 作者: rapoo

送分了。。。ASP.NET 打印并下载,服务器上一模版,然后复制模版并进行赋值,然后打印下载


string pfile = "模版2.doc";
string pathfile=System . Configuration . ConfigurationManager . AppSettings [ "FilePath" ] . ToString();//通过配置文件获取路劲
string pfilename=Guid . NewGuid() . ToString();
Object file = pathfile + "TXT\\" + pfile;//此处为绝对路径,也可以设置相对路径
Object filename = pathfile + pfilename + ".doc";
ApplicationClass wordApp = new ApplicationClass();
wordApp . Visible = false;
Document doc = new Document();
Document docname = new Document();
Document printdoc = new Document();
String id_ = Request [ "id" ] . ToString();
String uid = Request [ "bid" ] . ToString();
DAO_YW_tddjsq tddj = new DAO_YW_tddjsq();
dao_yw_yj yj=new dao_yw_yj();
DataRow dar=yj . GetsqxxByID(uid) . Rows [ 0 ];
DataRow dr = tddj . GetsqxxByID(id_) . Rows [ 0 ];
File . Copy(file . ToString() , filename . ToString());
object nullobj = System . Reflection . Missing . Value;
doc = wordApp . Documents . Open(ref file , ref nullobj , ref nullobj , ref nullobj , ref nullobj , ref nullobj , ref nullobj , ref nullobj , ref nullobj , ref nullobj , ref nullobj , ref nullobj , ref nullobj , ref nullobj , ref nullobj , ref nullobj);
object markName = "id";//id
Bookmark bm = doc . Bookmarks . get_Item(ref markName);
bm . Range . Text = dr [ "ID_" ] . ToString();
markName = "ywlx";//登记类型
bm = doc . Bookmarks . get_Item(ref markName);
bm . Range . Text = dr [ "ywlx" ] . ToString();
markName = "tdsyzmc";//土地申请人名称


bm = doc . Bookmarks . get_Item(ref markName);
bm . Range . Text = dr [ "tdsyzmc" ] . ToString();
object missingValue = Type . Missing;
Range range = printdoc . Content;
doc . Content . Copy();
object save = false;
range . Collapse(ref nullobj);
range . Paste();
doc . Close(ref save , ref nullobj , ref nullobj);
wordApp . Visible = true;//导出后显示word
printdoc . PrintPreview();//显示打印预览
string filenameS = pathfile + pfilename + ".doc";
File . Delete(filenameS);


代码如上,我做的是一个网页上打印服务器的word文档,服务器上有个模版,
复制模版然后对标签赋值,
然后打印,下载!问题是在服务器上可以打印下载,但是到了客户端就不可以了!没反应!急急急!!! 接
[解决办法]
你的doc模板里面是什么呢 能不能换成用aspx或者其他页面来做模板 这样可能好实现一点
[解决办法]
server.mappath(~/模版2.doc);
[解决办法]
你这完全是本机代码……还wordApp.Visible=true;服务器上当然打开了,客户端怎么看……

服务器调用COM组件不是不行,但是比较复杂,最基本的是不能有界面操作,那是服务,没有UI的。而且要维护COM组件的销毁,比如你就没有wordApp.Quit()。

用第三方的非COM组件吧,比如NPOI。
[解决办法]
如果不知道asp.net是运行在服务器上的,这个asp.net程序员需要找能够把握你的基础的人给你辅导。
[解决办法]
这是一个不好的方案

但可以用带宏的Word,利用宏来执行Word预览打印,当然客户端也要给足权限。

[解决办法]
接分来啦学习学习送分了。ASP.NET 打印并上载,服务器下一模版,然后复制模版并进行赋值,然后打印上载
[解决办法]
和本地的office组件相关。
[解决办法]
你这个打印是在服务器弹出的打印预览,不是客户端,建议用报表来做,vs自带的rdlc报表
[解决办法]
程序在服务器上运行的,客户端那边- -,不多说了,说多了就是泪呀。
[解决办法]
调用的是本机的打印机,你在服务器运行的话调用的就是服务器的打印机,而不是客户端的打印机,可以用IE自带的打印,楼主可以去看看符合你的要求不。
[解决办法]
顶一下送分了。ASP.NET 打印并上载,服务器下一模版,然后复制模版并进行赋值,然后打印上载
------解决方案--------------------


送分了。ASP.NET 打印并上载,服务器下一模版,然后复制模版并进行赋值,然后打印上载

读书人网 >asp.net

热点推荐