仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 414|回复: 7
打印 上一主题 下一主题

[学习教程] ASP网页编程之显现以OLE工具存储图片的办法

[复制链接]
小魔女 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 22:43:16 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
只要你想学,就没什么优缺点,上面那位大哥已经把网上的评论说了,但我认为想学哪个都一样,不然它就不可能在当今时代数字艺术方面存活到今天成绩原型:http://expert.csdn.net/Expert/topic/2517/2517974.xml?temp=.4831049
  
  在ASP中,我们常常必要在Web页面上显现以二进制体例保留在数据库中的图片。一样平常的图片显现没有甚么成绩,由于这方面的文章已良多了,我就不再论述。但偶然候数据库中的图片是经由过程其他办公软件输出的,大概经由过程其他体例,好比在Access中间接增加。  这时候,图片以OLE工具的体例保留在数据库中,在图片实在内容的后面,还保留了一些其他的信息,好比图片的路径和文件名,等等。假如我们还用一样平常的输入体例的话,就会堕落,招致图片不克不及显现。
  
  幸亏jpeg,bmp等图像格局中在图片内容的开首都有一个SOImarker,这个marker关于jpeg来讲是FFD8,而关于bmp是424D.如许一来,我们只需找到这个marker的地位,就能够疏忽后面的内容而间接从这里入手下手输入图片。以SQLserver为例,代码以下:
  
  <%
  ---------------------------------
  函数:functionShowJpegField(field)
  inelm(Archimond【阿克蒙德】)fromcsdn
  Date:2003-12-6更新
  功效:获得保留jpeg图片的字节数组中的SOImarker入手下手地位,并从该地位输入真实的图片信息
  注:jpeg格局的SOImarker:FFD8
  bmp格局:424D
  参数:图片字段
  前往值:无
  挪用典范:ShowJpegField(rs("picture1"))
  注重:挪用此函数之前,必要先声名response.write的MIME范例为"image/jpeg"
  ----------------------------------------
  functionShowJpegField(field)
  dimsize,i,j
  要输入字段的总字节数
  size=field.ActualSize
  轮回找到SOImarker的地位
  fori=1tosize
  ifAscB(MidB(field,i,1))=&HFFandAscB(MidB(field,i+1,1))=&HD8then
  exitfor
  endif
  next
  
  疏忽后面的无用信息,从SOImarker入手下手输入真实的图片信息
  forj=itosize
  response.BinaryWriteMidB(field,j,1)
  next
  endfunction
  %>
  
  <%
  --------主程序入手下手-------------------
  dimconn
  setconn=Server.CreateObject("ADODB.Connection")
  conn.open("Provider=SQLOLEDB.1;Password=sa;PersistSecurityInfo=True;UserID=sa;InitialCatalog=123;DataSource=MARK")
  
  sql="select*fromxinxi_mishuchu"
  setrs=conn.execute(sql)
  
  声明输入范例,清空输入缓冲区
  response.buffer=true
  response.clear
  response.ContentType="image/jpeg"
  
  挪用函数输入图片
  ShowJpegField(rs("picture1"))
  
  打完收功!
  rs.close:setrs=nothing
  conn.close:setconn=nothing
  %>
  
  假如是其他格局的图片,如bmp,gif等,输入办法相似,只不外是SOImarker分歧罢了。
  
  因为作者程度无限,毛病的地方在所不免,接待人人品评斧正。
源代码保护方面其实现在考虑得没那么多了..NET也可以反编译.ASP写得复杂的话别人能看得懂的话.他也有能力自己写了.这方面担心的倒不太多.纵观现在网上可以下载的那些所谓BBS还有什么网站等等的源代码
飘飘悠悠 该用户已被删除
沙发
发表于 2015-1-19 21:43:58 | 只看该作者
掌握asp的特性而且一定要知道为什么。
谁可相欹 该用户已被删除
板凳
发表于 2015-1-26 13:19:11 | 只看该作者
ASP.Net摆脱了以前ASP使用脚本语言来编程的缺点,理论上可以使用任何编程语言包括C++,VB,JS等等,当然,最合适的编程语言还是MS为.NetFrmaework专门推出的C(读csharp),它可以看作是VC和Java的混合体吧。
简单生活 该用户已被删除
地板
发表于 2015-2-4 15:23:43 | 只看该作者
虽然ASP也有很多网络教程。但是这些都不系统。都是半路出家,只是从一个例子告诉你怎么用。不会深入讨论,更不会将没有出现在例子里的方法都一一列举出来。
老尸 该用户已被删除
5#
发表于 2015-2-10 02:49:54 | 只看该作者
如何学好ASP,以前也有人问过,把回答给你转过来看看能否对你有帮助:
小妖女 该用户已被删除
6#
发表于 2015-3-10 03:37:41 | 只看该作者
封装性使得代码逻辑清晰,易于管理,并且应用到ASP.Net上就可以使业务逻辑和Html页面分离,这样无论页面原型如何改变,业务逻辑代码都不必做任何改动;继承性和多态性使得代码的可重用性大大提高。
莫相离 该用户已被删除
7#
发表于 2015-3-17 04:12:03 | 只看该作者
ASP也是这几种脚本语言中最简单易学的开发语言。但ASP也是这几种语言中唯一的一个不能很好支持跨平台的语言。  因为ASP脚本语言非常简单,因此其代码也简单易懂,结合HTML代码,可快速地完成网站的应用程序。
不帅 该用户已被删除
8#
发表于 2015-3-23 18:48:54 | 只看该作者
完全不知道到底自己学的是什么。最后,除了教程里面说的几个例子,还是什么都不会。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-24 03:04

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表