Olá pessoal. Este é o meu primeiro
artigo no iMasters e espero que seja bastante útil a tods.
Trata-se de um único script que pode ser
utilizado para navegação/download entre arquivos/pastas
armazenados em um servidor utilizando FSO do ASP.
Para efetuar o download do código com as
imagens, clique aqui.
Segue o código comentado:
<%@LANGUAGE="VBSCRIPT"
CODEPAGE="1252"%>
no Servidor utilizando FSO
Título: Script para Navegação entre diretórios
e arquivos em servidor WEB.
Versão: 1.0
Autor: Ricardo Vinicius de Godoi
Email: rvgodoi@hotmail.com
Data: 21/01/2004
Requisitos: Servidor rodando IIS com suporte ao FilesystemObject.
–>
<%
‘Bloco de código que faz com que a página não
seja armazenada em cache, evitando que o usuário
‘visualize arquivos/pastas que não estão mais no
servidor ou não visualize arquivos/pastas novos:
Response.Buffer=true
Response.AddHeader "cache-control", "private"
Response.AddHeader "pragma", "no-cache"
Response.ExpiresAbsolute = #January 1, 1990 00:00:01#
Response.Expires=Now()-1
Response.AddHeader "Cache-Control", "must-revalidate"
Response.AddHeader "Cache-Control", "no-cache"
%>
<%
‘Configurações do script:
‘Parametro passado pela
URL quando se clica em uma determinada pasta ou arquivo:
ParametroPasta = Request.QueryString("Pasta")
‘A session abaixo deve
ser alterada para o caminho físico onde estarão
os arquivos e subdiretórios a serem acessados:
Session("Path") = "d:apostilashome"&ParametroPasta&""
Path = Session("Path")
‘A variável abaixo deve ser alterada para o caminho
virtual das pastas no servidor:
PathVirtualArquivos = "/apostilas/home/"
‘A variável abaixo deve ser alterada para o caminho
virtual deste script:
PathScript = "/desenvolvimento/asp/colunas/arvoreFso/default.asp"
‘Criando o objeto Filesystem
Object:
SET FSO = Server.CreateObject("Scripting.FileSystemObject")
‘Setando o caminho que será indicado como pasta raiz:
Set Pasta = FSO.GetFolder(""&Path&"")
‘Solicitando a lista de arquivos para a pasta raiz:
set arquivos = pasta.files
‘Setando a pasta raiz:
set Raiz = Pasta
‘Verificando as subpastas da pasta raiz:
Set Pastas = Raiz.SubFolders
‘Verificando o Nome da
pasta Raiz:
Nome = pasta.name
‘Verificando se há
subpastas:
contador = 0
for each subpastas in pastas
contador = contador+1
next
%> if contador <> 0 then ‘Fazendo um loop pelas end if response.write " ‘Fazendo um loop pelos Response.Write ""
<%
Response.write "
Response.Write ""
subpastas da pasta raiz:
for each subpastas in Pastas
response.Write "
href=’"&PathScript&"?Pasta="&ParametroPasta&""&subpastas.name&"’>
color = #003366>"&subpastas.name&"
"
next
"
arquivos da pasta:
Apostila = "apostilas"
for each arquivo in arquivos
response.write "
href=’"&PathVirtualArquivos&""&ParametroPasta&"/"&arquivo.name&"’>
color = #0066cc>"&arquivo.name&"
"
next
response.write "
"
%>
Voltar |
<%
response.write ""
response.write "Refresh"
%>
Então, acho que é isso! Até
mais!