\r\n\r\n\r\nNos eventos Application_OnStart e Application_OnEnd estão armazenados os valores\r\ncomuns a todos os visitantes. Nos eventos Session_OnStart e Session_OnEnd estão\r\narmazenadososcódigos,scriptsevaloresusadosnassessions(valoresindividuaispara\r\ncadavisitante).\r\nMétodosdosObjetosApplicationeSession:\r\nApplication.Lock -> é usado para bloquear o acesso de outras páginas ao evento\r\nApplication_OnStart ou Application_OnEnd, com excessão da página que requisitou o\r\nbloqueio,permitindoassimquesomenteestapáginapossafazeralteraçõesnoevento."} 009 VBScript-e-ASP-Active-Server-Pages - ALGORITMOS - 3    
009_VBScript-e-ASP-Active-Server-Pages
43 pág.

009_VBScript-e-ASP-Active-Server-Pages

Disciplina:ALGORITMOS6.521 materiais91.166 seguidores
Pré-visualização8 páginas
de dados de acesso
sequencial (nem sempre é vantagem se usar bancos de dados com acesso aleatório,
como o MSAccess, ...). Assim sendo, foi necessário a criação de um componente que
permitissealeituraegravaçãodedadosnestesarquivos.

sintaxe:

conexãocomocomponente:SetfsObj=
Server.CreateObject("Scripting.FileSystemObject")
criaçãodoarquivotest.txt:SettxtStreamObj=fsObj.CreateTextFile(name,[bOverWrite])
aberturadoarquivotest.txtparaleituraougravação:SettxtStreamObj=
fsObj.OpenTextFile(name,[iomode,[bCreate,[format]]])
fsObj,txtStreamObjsãovariáveisdefinidaspelousuário.
name-nomedoarquivotexto(colocaropathcasooarquivoselocalizeemoutrapasta
quenãoadoarquivoASPquepossuiestecódigo)
bOverWrite-TRUE:casooarquivoexiste,eleédeletado,eumnovoécriado.FALSE:
casooarquivoexista,elenãoésubstituído.
iomode-FROWRITING,FORREADING:mododeaberturadoarquivoselecionado(para
gravação,paraleitura)
bCreate-TRUE:casooarquivoselecionadoparaaberturanãoexista,eleécriado.
format-TRUE:écriadoumarquivotextousandooformatoUnicode.FALSE:écriadoum
arquivotextousandooformatoASCII.
OsvaloresTRUEouFALSEsãodeterminadosdeacordocomumatabelaexistentenum
arquivochamadofobjvbs.inc,oqualdeveserincluídonocódigodapáginaquecontémo
códigoASPdeleituradoarquivotexto.(vejaexemplomaisabaixo)

ApostilaASP 10de43

ApostilaseTutotriais:http://Apostilas.Fok.com.br

Abaixo,umatabeladosvárioscomandosdessecomponente:

AtEndOfLine
RetornaTRUEcasooponteirotenhachegadoao
finaldalinha.Usadoapenasemarquivosabertos
paraleitura.

AtEndOfStream
RetornaTRUEcasooponteirotenhachegadoao
finaldoarquivo.Usadoapenasemarquivosabertos
paraleitura.

Column Retornaonúmerodacolunaqueoponteirose
encontra.Aprimeiracolunatemnumeração1.

Line Retornaonúmerodalinhaqueoponteirose
encontra.Aprimeiralinhatemnumeração1.

Close Fechaumarquivoaberto.
Read Lêumdeterminadonúmerodecaracteresdoarquivo.

ReadAll
Lêtodooarquivo.Quandooarquivoformuito
grande,usaroutrosmétodosdeleitura,comoaleitura
delinhaporlinha.

ReadLine Lêumalinhainteira,ouseja,lêoscaracteresque
estãoentreaposiçãodoponteiroeofinaldalinha.

Skip pulaumdeterminadonumerodecaracteres.
SkipLine pulaumalinhainteira.
Write gravaumadeterminadastringparaoarquivo.

WriteLine gravaumadeterminadastringparaoarquivoeposicionaoponteironoiníciodalinhaseguinte.

WriteBlankLines gravaumadeterminadaquantiadelinhasbrancasao
arquivo.

Vejaosexemplosaseguir:

<HTML><HEAD><TITLE>ComponenteFileAccess</TITLE></HEAD>
<BODY>
<!--#includefile="fobjvbs.inc"-->
<%
Setobjeto=CreateObject("Scripting.FileSystemObjects")
'alinhaacimacriouumainstânciadocomponenteFileAccess
Setgv=objeto.OpenTextFile("c:\test.txt",ForWriting,True,False)
'alinhaacimaabreoarquivoC:\test.txtparagravação.Casoelenãoexista.,écriado
um.(estecódigotemexatamenteomesmoefeitodométodoCREATETEXTFILE.
gv.Writeline("EstalinhafoiinseridacomousodocomponenteFileAccess.")
gv.Close
'alinhaacimafechaoarquivoabertoparagravação
objeto=nothing
'alinhaacimaliberaavariávelobjeto,dessaforma,elanãoficaarmazenando
valoresquenãoserãomaisusadosapósofechamentodoarquivo.
%>
<p>Pronto.Foigravadaalinhaacima</p>
</BODY></HTML>

ComponenteBrowserCapabilities

ApostilaASP 11de43

ApostilaseTutotriais:http://Apostilas.Fok.com.br

OcomponenteBrowserCapabilities temcomoobjetivoserusadoparadeterminarquais
sãoaspropriedadesquecadaBrowser(navegador)queestáacessandooseusitetem.
DesdeonomeeversãoatéadetecçãodesuporteaJavaScript,Applet Java,Cookies,
etc.Abaixo,umalistacontendoaspropriedadesquepodemserdeterminadasapartirdo
componenteBrowserCapabilites.

ActiveXControls EspecificaquandoobrowsersuportacontrolesActiveX

backgroundsounds Especificaquandoobrowsertemcapacidadedetocarsomdefundo(backgroundsound)
beta Especificaquandoobroweréversãobeta.
browser Especificaonomedobrowser
cookies Especificaseobrowseraceitacookies
frames Especificaseobrowsersuportaframes

javaapplets
EspecificaseobrowsersuportaAppletsJava(ou,
emalgunscasos,seosuporteaAppletsJavaestá
ativo)

javascript EspecificaseobrowsersuportaJavaScript(ou,em
algunscasos,seosuporteaJavaScriptestáativo)

majorver EspecificaonúmeromaissignificativodaVersão(na
versão4.01,porexemplo,éretornadoonúmero4)

minorver EspecificaosnúmerosmenossignificativosdaVersão(noexemploacima,retornaonúmero01)
platform Especificaemqualsistemaoperacionalobrowser

estáinstalado
tables Especificaseobrowsersuportatabelas

vbscript
Especificaquandoobrowsersuportavbscript
(processamentolocaldevbscript-nãohánadaaver
comovbscriptusadonaprogramaçãoASP,oqualé
processadonoservidor)

version Retornaonúmerodaversãodobrowser(exemplo:4.01)

win16
Especificaseobrowserrodanumcomputadorcom
sistemaoperacional16bits(win3.x).Válidosomente
paraInternetExplorer.

Casoalgumadessasespecificaçõesnãosejadefinidapelobrowser,astring"UNKNOWN"
éretornada.

sintax:

Setbc=Server.CreateObject("MSWC.BrowserType")
...=bc.propriedade
<html><head>
<TITLE>ComponentebrowserCapabilities</TITLE>
</head><bodybgcolor="#FFFFFF">
<%Setbc=Server.CreateObject("MSWC.BrowserType")%>
Browser:<%=bc.browser%><p>

ApostilaASP 12de43

ApostilaseTutotriais:http://Apostilas.Fok.com.br

Versão:<%=bc.version%><p>
<%if(bc.frames=TRUE)then%>
Estebrowseraceitaframes<p><p>
<%else%>
ÉmelhorvocêtrocardeBrowser.Estenãosuportaframes...
<%endif%>
<%if(bc.tables=TRUE)then%>
Legal.Estebrowseraceitatabelas...<p>
<%else%>
ÉmelhorvocêtrocardeBrowser.Estenãosuportanemtabelas...ébem
velhinho...<p>
<%endif%>
<%if(bc.BackgroundSounds=TRUE)then%>
Estebrowserpermitequehajafundomusicalnaspáginas<p>
<%else%>
Ouestebrowserébemantiguinho,ouvocêrealmentenãogostademuito
barulho.<p>
<%endif%>

<%if(bc.vbscript=TRUE)then%>
EsteBrowseraceitaprocessamentolocaldeVBScript<p>
<%else%>
EsteBrowsernãopermiteoprocessamentolocaldeVBScript<p>
<%endif%>

<%if(bc.javascript=TRUE)then%>
EsteBrowseraceitaprocessamentolocaldeJavaScript<p>
<%else%>
EsteBrowsernãopermiteoprocessamentolocaldeJavaScript<p>
<%
endif
setbc=nothing
%>
</body></html>

Application/SessionObj.

O objeto Application tem como objetivo armazenar e compartilhar valores, estados e
propriedadesdeumgrupo.Nocaso,valorescomunsatodososvisitantesdosite,como
número totaldevisitantesnosite, quantaspessoasestãovisitandoosite nomomento,
etc.
O objeto session tem como objetivo armazenar e compartilhar valores, estados e
propriedades de cada visitante, individualmente. São bons exemplos o uso em lojas
virtuais, onde a cesta de compras pode ser armazenada dentro de uma session.
OobjetoApplicationéativadoquandoforfeitaaprimeiravisitaaosite,eterminaquando
o servidor for desligado (é permitido gravar todos esses valores em banco de dados,
assimnãohá perdados valores).Todoo script e códigos dearmazenamento somente
podemserescritosemumarquivochamadoglobal.asa,quedevepermanecernapasta
raiz do site.
Oobjetosessionécriadoparacadavisitante,cadavezqueumvisitanteentranosite,eé

ApostilaASP 13de43

ApostilaseTutotriais:http://Apostilas.Fok.com.br

destruídotodavezqueestevisitantesaidosite.Aoentrarnosite,cadavisitanterecebe
um ID (número de identificação), o qual é usado para identificar o usuário e para
armazenarosvalores,estadosepropriedadesdecadavisitante,individualmente.
Oarquivoglobal.asatemoseguinteformato:

<SCRIPTLANGUAGE=VBSCRIPTRUNAT=SERVER>
SubApplication_OnStart
Endsub
SubApplication_OnEnd
Endsub
SubSession_OnStart
Endsub
SubSession_OnEnd
Endsub
</SCRIPT>

Nos eventos Application_OnStart e Application_OnEnd estão armazenados os valores
comuns a todos os visitantes. Nos eventos Session_OnStart e Session_OnEnd estão
armazenadososcódigos,scriptsevaloresusadosnassessions(valoresindividuaispara
cadavisitante).
MétodosdosObjetosApplicationeSession:
Application.Lock -> é usado para bloquear o acesso de outras páginas ao evento
Application_OnStart ou Application_OnEnd, com excessão da página que requisitou o
bloqueio,permitindoassimquesomenteestapáginapossafazeralteraçõesnoevento.

 \r\n\r\n\r\nNos eventos Application_OnStart e Application_OnEnd estão armazenados os valores\r\ncomuns a todos os visitantes. Nos eventos Session_OnStart e Session_OnEnd estão\r\narmazenadososcódigos,scriptsevaloresusadosnassessions(valoresindividuaispara\r\ncadavisitante).\r\nMétodosdosObjetosApplicationeSession:\r\nApplication.Lock -> é usado para bloquear o acesso de outras páginas ao evento\r\nApplication_OnStart ou Application_OnEnd, com excessão da página que requisitou o\r\nbloqueio,permitindoassimquesomenteestapáginapossafazeralteraçõesnoevento.","PreviewHtmlContent":null,"FilePreviewUrlBaseUrl":"https://files.passeidireto.com","Comments":[],"RatingValue":0,"RatingCount":0,"IsMetaDescriptionWithPage":true,"AuthorId":895642,"HasBeenReported":false,"FilePreview":{"Id":273539,"FileId":977057,"FolderUrl":"4867914e-b45f-4214-a221-54c2bf94ce42","PageCount":43,"Status":5},"IsIndexable":true,"PreviewType":0,"SubjectDetails":{"Materials":null,"UniversityFollowerCount":null,"UniversityMaterialCount":null,"Alias":"algoritmos","ThumbnailUrl":"https://content.passeidireto.com/Thumbnails/Subjects/algoritmos_20170904173010.png","SubjectMapId":30258458,"SubjectMapName":"Algoritmos","MaterialAggregatorType":1,"Id":726790,"Name":"ALGORITMOS","MaterialCount":6521,"FollowerCount":91166,"Followers":[{"Id":38113230,"Name":"Tiago","ImageUrl":"https://graph.facebook.com/1302617593176222/picture?width=120&height=120","FacebookId":"1302617593176222","Active":true,"UniversityName":"UNIP","CourseName":"Sistemas de Informação / Informática"},{"Id":4449782,"Name":"Rafael","ImageUrl":"https://graph.facebook.com/100005341955377/picture?width=120&height=120","FacebookId":"100005341955377","Active":true,"UniversityName":"SENACSP","CourseName":"Tecnologia da Informação"},{"Id":38112205,"Name":"Obito","ImageUrl":"https://lh6.googleusercontent.com/-wad6DOmBbFg/AAAAAAAAAAI/AAAAAAAAAUg/mRCa0nAMX78/s96-c/photo.jpg?sz=120","FacebookId":"-38112205","Active":true,"UniversityName":"UFCG","CourseName":"Ciência da Computação"},{"Id":38111074,"Name":"Marlon","ImageUrl":"https://graph.facebook.com/518335528545387/picture?width=120&height=120","FacebookId":"518335528545387","Active":true,"UniversityName":"IFPI","CourseName":"Análise e Desenvolvimento de Sistemas"},{"Id":38110304,"Name":"Vinicius","ImageUrl":"https://lh3.googleusercontent.com/-RS6skP2J_Gg/AAAAAAAAAAI/AAAAAAAAAKY/2PFTcHCvI5I/s96-c/photo.jpg?sz=120","FacebookId":"-38110304","Active":true,"UniversityName":"UAM","CourseName":"Sistemas de Informação / Informática"}],"LastVisitDate":null,"NewAddedMaterialCount":0},"AuthorImageUrl":"https://graph.facebook.com/100001941047034/picture?width=120&height=120","FileBaseUrl":"https://www.passeidireto.com/arquivo/977057/009_vbscript-e-asp-active-server-pages","UserAgent":"Website","FileUrl":"4867914e-b45f-4214-a221-54c2bf94ce42","HasThumbnail":1,"Contents":{"Tbs":[],"PremiumContent":[]},"title":"009 VBScript-e-ASP-Active-Server-Pages - ALGORITMOS - 3","description":"Veja grátis o arquivo 009 VBScript-e-ASP-Active-Server-Pages enviado para a disciplina de ALGORITMOS Categoria: Anotações - 3 - 977057","userAgent":"Website","HasFlashSale":false,"endDateFlashSales":null,"pdCountData":{"studentCount":10012605}}; ReactDOM.render(React.createElement(ReactPD["File"], initProps), document.getElementById('page_center')); var headerInitProps = {"type":10,"isSearchPage":false,"sponsor":null,"UserAgent":"Website","FlashSaleType":1,"endDateFlashSales":null,"currentUrl":"/arquivo/977057/009_vbscript-e-asp-active-server-pages/3","SubjectTitle":"ALGORITMOS","SubjectAlias":"algoritmos","Contents":{"Tbs":[],"PremiumContent":[]}}; ReactDOM.render(React.createElement(ReactPD.Header, headerInitProps), document.getElementById('header')); var footerInitProps = {}; if(footerInitProps.simple != null){ ReactDOM.render(React.createElement(ReactPD.Footer, footerInitProps), document.getElementById('footer')); } } $(document).ready(init); var pdCountData = {"studentCount":10012605};