极具特色的多线程文档提交处理计划方案(asp+


-------------------------------------------------------------
aryFiles.push( c:\\aaa.zip ) ;
aryFiles.push( c:\\bbb.exe ) ;
这儿为文档相对路径和文档.能为好几个
之后这一相对路径还可以根据file控制在顾客端取到
//
这一是目地地,能够改成自身要想的详细地址.
ado_stream.LoadFromFile(server.mappath( . ) / + str_filename)
server.mappath( . ) / + str_filename 这儿是载入文档.
server.mappath( . ) / 相对路径和储放相对路径一致
ado_stream.SaveToFile server.mappath( . ) / str_filename,2
server.mappath( . ) / 这一为储放文档的相对路径. str_filename 为文档名
这儿载入和储放全是放到程序所放文件目录中.大伙儿检测的情况下还可以维持那样就可以
把第一段编码放进当地(eg:c:\upload.htm)
把第二段编码放进网络服务器上,能够是当地网络服务器,能够是公网网络服务器.和上边的目地地维持一致
(eg:upload.asp or )
----------------------------------------------------------------
实际操作:寻找第一段编码储存的地区。实行就可以(eg:开启c盘实行upload.htm)
现阶段程序仍在调节全过程中,期待大伙儿明确提出珍贵建议
顾客端编码
=========
html
head
/head
body
input type=button quot;BeginSendFiles(); value= 推送 /
input type=button quot;JavaScript: Breaked=true; value= 终断 /
div id= ddd width=300px /div
br /br
DIV id=div_message /DIV
/body
script language=VBScript
Function bytes2BSTR(vIn)
strReturn =
For i = 1 To LenB(vIn)
ThisCharCode = AscB(MidB(vIn,i,1))
If ThisCharCode H80 Then
strReturn = strReturn Chr(ThisCharCode)
Else
NextCharCode = AscB(MidB(vIn,i+1,1))
strReturn = strReturn Chr(CLng(ThisCharCode) * H100 + CInt(NextCharCode))
i = i + 1
End If
Next
bytes2BSTR = strReturn
End Function
/script
script language=javascript
var xmlhttp ;
var ado_stream ;
var mFileName, mPartStart, mPartID, mPartEnd ;
var SendCount ;
var BlockSize ;
var Breaked ;
var aryFiles ;
BlockSize = 1024*100 ;//每一次推送字节数数
Breaked = false ;
aryFiles = new Array() ;
// 刚开始推送文档
function BeginSendFiles()
{
initAryFiles() ;
SendFile(aryFiles.pop()) ;
}

// 结构待推送文档的数字能量数组
function initAryFiles()
{
aryFiles.push( c:\\aaa.zip ) ;
aryFiles.push( c:\\bbb.exe ) ;
//c:\\aaa.zip c:\\bbb.exe当地文档
aryFiles.reverse() ;//文档名
}
function SendFile(vFullPath)
{
// 空文档则不实行提交
if (!vFullPath)
{
return ;
}
Breaked = false ;
div_message.innerHTML =
ado_stream = new ActiveXObject( ADODB.Stream // 载入文档的流
ado_stream.Type = 1;
ado_stream.Open();
ado_stream.LoadFromFile(vFullPath); // 载入文档
ado_stream.position = 0 ;
SendCount = Math.ceil(ado_stream.size/BlockSize) ; // 假如有余数则多发性送一次
// alert(SendCount) ;
var reg = /\b\w+.\w+$/gi
mFileName = reg.exec(vFullPath) ;
mPartStart = true ;
mPartID = 1 ;
mPartEnd = false ;

SendData() ;
}
function SendData()
{
if (SendCount 0)
{
var dom = new ActiveXObject( msxml2.DOMDocument // 推送的xml文档
dom.async = false;
dom.resolveExternals = false;
// 结构xml文档头
var node = dom.createProcessingInstruction( xml , version='1.0'
dom.appendChild(node) ;
node = null ;

// 结构root连接点
var root = dom.createElement( root
dom.appendChild(root) ;
dom.documentElement.setAttribute( xmlns:dt , urn::datatypes
// 结构储存二进制数据信息的连接点updata
node = dom.createElement( upData ) ;
node.dataType = bin.base64 // bin。base64编号
var att = dom.createAttribute( FileName ) ; // 文档名特性
att.value = mFileName ;
node.setAttributeNode(att) ;
att = null ;
var att = dom.createAttribute( PartStart ) ; // 按段刚开始标识
att.value = mPartStart ;
node.setAttributeNode(att) ;
att = null ;
var att = dom.createAttribute( PartID ) ; // 按段编号
att.value = mPartID ;
node.setAttributeNode(att) ;
att = null ;
var att = dom.createAttribute( PartEnd ) ; // 按段完毕标识
att.value = mPartEnd ;
node.setAttributeNode(att) ;
att = null ;
root.appendChild(node) ;
node.nodeTypedValue = ado_stream.Read(BlockSize); // 连接点数据信息从stream载入,固定不动长短
node = null ;

SendCount -= 1 ;
xmlhttp = new ActiveXObject( Microsoft.XMLHTTP
xmlhttp.open( POST , , false);
// 为web相对路径上的文档
xmlhttp.onreadystatechange= CallBack ;
xmlhttp.send(dom);
mPartStart = false ;
xmlhttp = null ;
}
else
{
ado_stream.Close();
ado_stream = null ;
}

}

function CallBack()
{
// 提交取得成功
if(xmlhttp.readystate == 4)
{
// 查验是不是终断提交
if(Breaked)
{
return ;
}
if (SendCount 0)
{
mPartID += 1 ;
// div_message.innerHTML += ( br + xmlhttp.ResponseText) ;

var p = Math.floor((mPartID/(Math.ceil(ado_stream.size/BlockSize) + 1)) * 100) ; // 测算进展百分数
ShowBar(p) ;

var t = setTimeout( SendData(); , 1) ;
}
else
{
// 传输完文档
//div_message.innerHTML += mFileName + 传输结束! br
// 再次传下一文档
ShowBar(0) ;
var cFile = aryFiles.pop() ;
SendFile(cFile) ;
}

}

}
function ShowBar(per)
{
// 进展条
ddd.innerHTML = table width='200' border=0 cellpadding='0' cellspacing='0' tr td bgcolor='#6699FF' input type=button value= + per + % /td /tr /table
}
/script
/html
服务端编码
------------------------------------------------------------------
%@ LANGUAGE=VBScript%
% Option Explicit
Response.Expires = 0
' 界定自变量和目标。
dim ado_stream
dim xml_dom
dim xml_data
dim str_filename
dim bol_PartStart
dim int_PartID
dim bol_PartEnd
' 建立 Stream 目标
set ado_stream = Server.CreateObject( ADODB.Stream )
' 从Request目标建立 XMLDOM目标
set xml_dom = Server.CreateObject( MSXML2.DOMDocument )
xml_dom.load(request)
' 读取包括二进制数据信息的连接点
set xml_data = xml_dom.selectSingleNode( root/upData )
str_filename = xml_data.getAttribute( FileName )
bol_PartStart = CBool(xml_data.getAttribute( PartStart ))
int_PartID = CInt(xml_data.getAttribute( PartID ))
bol_PartEnd = CBool(xml_data.getAttribute( PartEnd ))
' 开启Stream目标,把数据信息存进在其中
ado_stream.Type = 1 ' 1=adTypeBinary
ado_stream.open
if not bol_PartStart then
ado_stream.LoadFromFile(server.mappath( . ) / + str_filename) ' 载入文档
ado_stream.position = ado_stream.size
end if
ado_stream.Write xml_data.nodeTypedValue
' 文档存盘
ado_stream.SaveToFile server.mappath( . ) / str_filename,2
'储存文档 2=adSaveCreateOverWrite
ado_stream.close
' 释放出来資源
set ado_stream = Nothing
set xml_dom = Nothing
' 向访问器回到信息内容
Response.Write essful! str_filename int_PartID bol_PartStart
%


|云龙建立网站 云龙纳西族基层民主县是云南省省云南丽江市所辖县之一,县境坐落于云南省省大西北部。截至到2017年,云龙县辖16个乡(镇),9七个村委会会,五个居委会,913个群众工作组,幅员总面积6392.6平方千米。2013年,
|庆云网站建设 庆云县位于两省(山东省、河北省)三市(滨州市、德州市、沧州)五县(盐山、海兴、无棣、阳信、乐陵)交界处处,北靠北京市、天津市,南向山东省省会城市济南市,坐落于华北地区、获胜、大港三大油东海林心
|朝阳区公司建立网站 朝阳区市坐落于辽宁省省的中西部,辖境居东经118°50′至121°17′和北纬度40°25′至42°22′中间,物品跨度165千米,南北方跨度约216千米,界限周约长980千米。北与内蒙古古基层民主区云狐市及哲里木盟接
|安次网络推广 安次区是河北省省 廊坊市地区,位于河北省省中北边,廊 坊城区南边,所辖3个街道社区、4个镇、4个乡,占地面积578.4平方千米,人口总数36.0三万人(二零一三年)。安次境域周朝属燕国地, 西汉置安次
|兴安互联网营销推广 兴安县坐落于广西省东北地区部的湘桂过道,位于北纬度25°18′~26°55′、东经110°14′~110°56′中间,属桂林市市辖县,是湘漓二水之源,也是全球上最历史悠久的大运河——灵渠的所属地,自古以来至今就是楚
|汤旺河企业网站建设 汤旺河区(局)归属于黑龙江省省伊春市,自然地理座标为东经128°51′5″~130°8′0″,北纬度48°22′18″~48°48″30″。坐落于伊春市东北地区部,小兴安岭巅峰,北距黑龙江省省一级对俄边贸港口嘉荫
|上犹企业网站建设 上犹县坐落于江西省省赣集县中西部,赣江上下游。风景秀丽,物产富饶,具有无可比拟的自然环境、資源优点,有着“水电工程之乡、度假旅游之乡、荼叶之乡”的美名。以水丰、电足而出名,是全国性最开始的
|上栗企业网站建设 上栗坐落于江西省中西部,长株潭经济发展一体化的大城市群核心区,扼吴楚通衢要地,为湘赣边贸名镇。自古以来商贾汇集,边贸活跃性,有着“小南京市”之称。全乡人口数量4八万,占地面积721.11平方千米,辖6镇
|雅布赖企业网站建设 雅布赖镇(位于阿拉善盟西北缘。雅布赖镇驻扎地贡呼都格坐落于阿拉善右旗西南部,距旗府所属地额肯呼都格镇109千米。自然地理座标为东经101°52′---103°33′,北纬度39°08′---40°18′,东靠孟
|清流企业网站建设 清流县位于福建省省中西部,福建武夷山南端,九龙溪上下游。清流历史时间久远,人才辈出。旧称黄莲,宋元符年间(1099年)置县,因县里清溪围绕,碧海萦回,故名清流。1994年,我国科学研究院考古学
|襄汾企业网站建设 襄汾县坐落于山西省省华中部。东邻浮山、翼城,西傍乡宁,南毗曲沃、侯马、新绛,北连山西临汾。自然地理坐标为东经111°06′38〞至111°40′55〞,北纬度35°40′05〞至36°03′20〞。南北方39.3公里,东
|赣榆企业网站建设 赣榆县位于江苏省省东北地区端,东邻黄海海州湾,隔海与日本国、北朝鲜半岛花园相望,北接山东省半岛花园,大西北相邻全国性大中型综合性批發销售市场——临沂市,南靠新欧亚大陆桥东桥底堡——连云港市,是江苏省省
强烈推荐地域 关键地网站制作、企业网站建设、网站运营服务强烈推荐,健全的售前服务售后服务服务保证顾客营销推广的合理
1、技术专业的网站制作制作精英团队给你出示7*二十四小时迅速网站设计制作业务流程,给你的网站迅速构建出示确保 2、一流的技术性工作人员,确保模版仿造编码的安全性、简约、齐整便捷顾客的迅速入门应用 3、多种多样开源系统CMS适用,给你出示dedecms模版网站建设、zblog模版网站建设、wordpress模版网站建设、discuz模版网站建设等业务流程 4、健全的售后服务,大家做的是服务,服务是沒有止境的大家期待与众多顾客达到小伙伴关联,给你出示有意义的事的协助

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://zmjldkxcx.cn/ganhuo/3525.html