ASP怎样实现通过传真机把传真直接保存进数据库?!

数据|数据库

传真是以 TIF 格式图片保存在文件系统内;关于怎么样在计算机收发传真,可以参考:http://notebook.yesky.com/ServerIndex/77128644744445952/20040823/1845371.shtml的文章;
我说的重点是"以 TIF 格式图片保存在文件系统内"你可以用asp编程扫描此文件夹内的图片:并存入数据库内;
有部分参考代码:
利用FSO取得BMP,JPG,PNG,GIF文件信息(大小,宽、高等)
<%
'::: BMP, GIF, JPG and PNG ::: 

'::: This function gets a specified number of bytes from any :::
'::: file, starting at the offset (base 1) :::
'::: :::
'::: Passed: :::
'::: flnm => Filespec of file to read :::
'::: offset => Offset at which to start reading :::
'::: bytes => How many bytes to read :::
'::: :::
':::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
function GetBytes(flnm, offset, bytes)
Dim objFSO
Dim objFTemp
Dim objTextStream
Dim lngSize
on error resume next
Set objFSO = CreateObject("Scripting.FileSystemObject") 

' First, we get the filesize
Set objFTemp = objFSO.GetFile(flnm)
lngSize = objFTemp.Size
set objFTemp = nothing
fsoForReading = 1
Set objTextStream = objFSO.OpenTextFile(flnm, fsoForReading)
if offset > 0 then
strBuff = objTextStream.Read(offset - 1)
end if
if bytes = -1 then ' Get All!
GetBytes = objTextStream.Read(lngSize) 'ReadAll
else
GetBytes = objTextStream.Read(bytes)
end if
objTextStream.Close
set objTextStream = nothing
set objFSO = nothing
end function 

':::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
'::: :::
'::: Functions to convert two bytes to a numeric value (long) :::
'::: (both little-endian and big-endian) :::
'::: :::
':::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
function lngConvert(strTemp)
lngConvert = clng(asc(left(strTemp, 1)) + ((asc(right(strTemp, 1)) * 256)))
end function
function lngConvert2(strTemp)
lngConvert2 = clng(asc(right(strTemp, 1)) + ((asc(left(strTemp, 1)) * 256)))
end function 

':::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
'::: :::
'::: This function does most of the real work. It will attempt :::
'::: to read any file, regardless of the extension, and will :::
'::: identify if it is a graphical image. :::
'::: :::
'::: Passed: :::
'::: flnm => Filespec of file to read :::
'::: width => width of image :::
'::: height => height of image :::
'::: depth => color depth (in number of colors) :::
'::: strImageType=> type of image (e.g. GIF, BMP, etc.) :::
'::: :::
':::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
function gfxSpex(flnm, width, height, depth, strImageType)
dim strPNG
dim strGIF
dim strBMP
dim strType
strType = ""
strImageType = "(unknown)"
gfxSpex = False
strPNG = chr(137) & chr(80) & chr(78)
strGIF = "GIF"
strBMP = chr(66) & chr(77)
strType = GetBytes(flnm, 0, 3)
if strType = strGIF then ' is GIF
strImageType = "GIF"
Width = lngConvert(GetBytes(flnm, 7, 2))
Height = lngConvert(GetBytes(flnm, 9, 2))
Depth = 2 ^ ((asc(GetBytes(flnm, 11, 1)) and 7) + 1)
gfxSpex = True
elseif left(strType, 2) = strBMP then ' is BMP
strImageType = "BMP"
Width = lngConvert(GetBytes(flnm, 19, 2))
Height = lngConvert(GetBytes(flnm, 23, 2))
Depth = 2 ^ (asc(GetBytes(flnm, 29, 1)))
gfxSpex = True
elseif strType = strPNG then ' Is PNG
strImageType = "PNG"
Width = lngConvert2(GetBytes(flnm, 19, 2))
Height = lngConvert2(GetBytes(flnm, 23, 2))
Depth = getBytes(flnm, 25, 2)
select case asc(right(Depth,1))
case 0
Depth = 2 ^ (asc(left(Depth, 1)))
gfxSpex = True
case 2
Depth = 2 ^ (asc(left(Depth, 1)) * 3)
gfxSpex = True
case 3
Depth = 2 ^ (asc(left(Depth, 1))) '8
gfxSpex = True
case 4
Depth = 2 ^ (asc(left(Depth, 1)) * 2)
gfxSpex = True
case 6
Depth = 2 ^ (asc(left(Depth, 1)) * 4)
gfxSpex = True
case else
Depth = -1
end select 

else
strBuff = GetBytes(flnm, 0, -1) ' Get all bytes from file
lngSize = len(strBuff)
flgFound = 0
strTarget = chr(255) & chr(216) & chr(255)
flgFound = instr(strBuff, strTarget)
if flgFound = 0 then
exit function
end if
strImageType = "JPG"
lngPos = flgFound + 2
ExitLoop = false
do while ExitLoop = False and lngPos < lngSize 

do while asc(mid(strBuff, lngPos, 1)) = 255 and lngPos < lngSize
lngPos = lngPos + 1
loop
if asc(mid(strBuff, lngPos, 1)) < 192 or asc(mid(strBuff, lngPos, 1)) > 195 then
lngMarkerSize = lngConvert2(mid(strBuff, lngPos + 1, 2))
lngPos = lngPos + lngMarkerSize + 1
else
ExitLoop = True
end if
loop
'
if ExitLoop = False then
Width = -1
Height = -1
Depth = -1
else
Height = lngConvert2(mid(strBuff, lngPos + 4, 2))
Width = lngConvert2

时间: 2024-09-26 08:56:13

ASP怎样实现通过传真机把传真直接保存进数据库?!的相关文章

asp.NET上传文件到指定文件夹,ACCESS数据库,SQL数据库代码

access|asp.net|上传|数据|数据库 /* 我修改了一天时间.终于找到门路了.呵呵ACCESS中存放文件内容的字段类型为:OLE对象SQL中存放文件内容的字段类型为:image此代码为上传文件代码.梢后整理发布下载文件代码 代码设计实现功能:asp.NET上传文件到指定文件夹,ACCESS数据库,SQL数据库代码 已经测试文件格式 .TXT,JPG..MDB.GIF */ using System;using System.Collections;using System.Compo

[Asp.net]常见数据导入Excel,Excel数据导入数据库解决方案,总有一款适合你!

原文:[Asp.net]常见数据导入Excel,Excel数据导入数据库解决方案,总有一款适合你! 引言 项目中常用到将数据导入Excel,将Excel中的数据导入数据库的功能,曾经也查找过相关的内容,将曾经用过的方案总结一下. 方案一 NPOI NPOI 是 POI 项目的 .NET 版本.POI是一个开源的Java读写Excel.WORD等微软OLE2组件文档的项目.使用 NPOI 你就可以在没有安装 Office 或者相应环境的机器上对 WORD/EXCEL 文档进行读写.NPOI是构建在

ASP.NET将Session保存到数据库中的方法_实用技巧

几个方式(本文不作介绍),要将Session保存到SQL Server中,需要有以下几个步骤: 1.首先要创建用于保存Session数据的数据库,以命令行的形式用aspnet_regsql.exe来完成,具体命令为 C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727>aspnet_regsql.exe -ssadd -sstype c -d sd -E 该命令是以windows验证方式,添加了sd数据库保存session数据. 2.需要修改ASP.NET

急急急-ASP.NET中中怎样根据dropdownlist选中项查询数据库

问题描述 ASP.NET中中怎样根据dropdownlist选中项查询数据库 ASP.NET中中怎样根据dropdownlist选中项查询数据库,下面有我的代码,求大神帮我看看错哪了,总是报错:输入字符串的格式不正确 解决方案 this.dropdownlist1.selValue; 解决方案二: this.DropDownList1.SelectedValue 解决方案三: private void BindPagedMeetings(int pageIndex) { string devic

C# ASP.NET查找数据生成Excel时提示保存,但保存失败,重新下载后保存成功但是打开时提示文件已经损坏!Excel2010,请指教,谢谢!

问题描述 C#ASP.NET查找数据生成Excel时提示保存,但保存失败,重新下载后保存成功但是打开时提示文件已经损坏!Excel2010,请指教,谢谢!我的下载方法代码如下:publicvoidDownLoad(stringExcelName,stringFileName){try{if(!String.IsNullOrEmpty(ExcelName)||!String.IsNullOrEmpty(FileName)){Response.Charset="GB2312";Respon

无法写进数据库(ASP+SQL)

问题描述 我做了一个注册界面,用ASP,能运行成功,但数据却写不进数据库,数据库的名字是表的名字是内容包括请大家帮帮忙找一下,看哪里错了,在此先谢谢了·</head><body><formid="form1"name="form1"method="post"action="zwy1.asp"><label>用户名<inputname="uid"type=

请问VS2005(ASP.net做项目时)连的了Mysql数据库吗?

问题描述 我有问题请教:1请问VS2005(ASP.net做项目时)连的了Mysql数据库吗?2VS2005(ASP.net做项目时)连接oracle数据库是连9i,还是10G? 解决方案 解决方案二:下载一个dll引到项目里http://dev.mysql.com/downloads/connector/net/1.0.html里面的方法跟ado.net一致的比如ado.net里的SqlCommd到mysql里改成MySqlCommand解决方案三:VS2005(ASP.net做项目时)连接o

asp.net 上传文件保存到数据库的方法( C#)

asp教程.net 上传文件保存到数据库教程的方法( C#) C#做一个小的程序,其中用涉及到了照片的存取与显示,在网上搜索了很多有关的代码,但是几乎没有完整,大部分只是其中的存取或者显示代码,笔者将其整理了一下,形成了一个集照片上传到数据库.照片显示于一体的小模块. using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawin

WinXP如何配置传真机配置传真服务

  WinXP连接传真机后,安装好驱动却不知道怎样配置传真机,相信不少用户都有这方面的困扰,其实WinXP配置传真服务非常简答, 只要打开开始菜单,找到打印机和传真就可以轻松设置了.下面就请大家看具体的操作方法. 1.单击开始,选择"打印机和传真". 2.在打开的对话框中,双击传真图标.将启动传真配置向导(如果没有安装调制解调器,可能会先运行调制解调器安装向导,此处从略). 在"欢迎使用传真配置向导"屏幕上单击"下一步",会出现"发件人