Back-End

26 jan, 2004

ASP utilizando FSO para navegação em diretórios no servidor

Publicidade

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"%>

Navegação em arquivos/pastas armazenados<br /> 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

%>

<%
Response.write "

"
Response.Write ""

if contador <> 0 then

‘Fazendo um loop pelas
subpastas da pasta raiz:

for each subpastas in Pastas
response.Write " href=’"&PathScript&"?Pasta="&ParametroPasta&""&subpastas.name&"’> color = #003366>"&subpastas.name&"

"
next

end if

response.write "
"

‘Fazendo um loop pelos
arquivos da pasta:

Apostila = "apostilas"
for each arquivo in arquivos
response.write "  href=’"&PathVirtualArquivos&""&ParametroPasta&"/"&arquivo.name&"’> color = #0066cc>"&arquivo.name&"
"
next

Response.Write ""
response.write "


"
%>




Voltar | 
<%
response.write ""
response.write "Refresh
"
%>


Então, acho que é isso! Até
mais!