Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

danilopiovani

file system object

Recommended Posts

Galera estou precisando de ajuda...Eu li todos os arquivos que se referiam a FSO no Imasters...Porem não encontrei uma resposta para minha dúvida...Vou explicar minha situação...Estou em projeto de intranet, onde arquivos .asp ficam em um servidor com IIS, e outros arquivos(.doc, .txt, etc... ) ficam em outro servidor, que não possui IIS e nem é possível a instalação do mesmo.Eu preciso via FSO listar esses arquivo, tem com eu fazer isso?buscar aquivos em um servidor sem IIS ?Galera sem brincadeira, estou desde março com esta dúvida...por enquanto a solução que demos foi copiar as pastas que precisamos para o servidor com IIS mas isso aqui na empresa não é correto e estou correndo atrás disso...Preciso saber se é possível ou não, assim eu posso seguir em frente ou desistir de vez...[ ]s...Muito obrigado desde já!

Compartilhar este post


Link para o post
Compartilhar em outros sites

talvez se voce criasse uma dll que acessasse este servidor poderia funcionar... voce precisa de algum objeto ou servico que acesse arquivos no servidor sem o iis... nao sei se posso te ajudar muito... :|

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tente mapear a pasta onde se encontram os arquivos, salvo engano o FSO acessa unidades Mapeadas.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Galera usei isso para ver os drives mapeados na minha maquina, <%Dim objFSODim letraSet objFSO = server.CreateObject("scripting.FileSystemObject")Response.write "Os Drives desta Máquina são:<br>"For i = 65 To 90letra = chr(i) IF objFSO.DriveExists(letra) then response.write "»<b> "& letra &"</b> : <br>" END IFNext%>agora eu não sei como usar isso para entrar em um desses drives.Galera... muito obrigado... vamos tentando né.[ ] s

Compartilhar este post


Link para o post
Compartilhar em outros sites

Para listar os drivers você pode fazer assim:

Set FSO = Server.CreateObject("Scripting.FileSystemObject")%>

<Form><SELECT name="Drive">

<%For each Drive in FSO.Drives

Response.Write("Drive: "& Drive.DriveLetter &", Tipo do Drive: "& Drive.DriveType &"<BR>"

Next%>

</SELECT>

[/tr]
E para abrir os arquivos você usaria não o Server.MapPath e sim o caminho completo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Salgado rodei o que você me passou ...Drive: A, Tipo do Drive: 1Drive: C, Tipo do Drive: 2Drive: D, Tipo do Drive: 4Drive: E, Tipo do Drive: 3Drive: F, Tipo do Drive: 3e como ficaria o caminho completo:Eu não posso trabalhar com virtual Path né? porque eu não tenho IIS no outro servidor...[ ]s...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Como você está fazendo atualmente para abrir os arquivos com FSO?

Compartilhar este post


Link para o post
Compartilhar em outros sites

<%Dim objFso, objArquivoDim strCaminhopasta= Request.QueryString("pasta")// aqui eu estou resgatando uma das pastas para explorar a certa... pois dependo de um status para saber em que pasta entrar ...IF pasta = 1 then strCaminho = Server.MapPath("./5.Encerramento") caminho = "./5.Encerramento"ELSEIF pasta = 2 then strCaminho = Server.MapPath("./4b.Rejeitadas") caminho = "./4b.Rejeitadas"ELSEIF pasta = 3 then strCaminho = Server.MapPath("./3.CCM") caminho = "./3.CCM"ELSEIF pasta = 4 then strCaminho = Server.MapPath("./4a.Aprovadas") caminho = "./4a.Aprovadas"ELSEIF pasta = 5 then strCaminho = Server.MapPath("./6.Adiadas") caminho = "./6.Adiadas"ELSE strCaminho = Server.MapPath("./2.Triagem") caminho = "./2.Triagem"END IF// definida a pasta certa eu entro, pois o arquivo deve estar lá...Set objFso = Server.CreateObject("Scripting.FileSystemObject")Set objArquivo = objFso.GetFolder(strCaminho)doc1= Request.QueryString("documento")doc2 = len(doc1)IF doc2 = 1 then documento = "00"& doc1ELSEIF doc2 = 2 then documento = "0"& doc1ELSE documento = doc1END IF// isso está dando certo, pois as pastas estão no mesmo servidor que o IIS, porem o que quero é que eles sejam acessíveis mesmo quando estiverem em um servidor sem IIS%>// continuação do código, onde é listado nomes, tamanho etc...<%resultado_busca = 0For Each arrDados In objArquivo.Filesnome = arrDados.Nametam= inStr(nome,documento) IF tam <> 0 then resultado_busca= resultado_busca + 1 End IFNextIF resultado_busca > 0 thenFor Each arrDados In objArquivo.Filesnome = arrDados.Nametam= inStr(nome,documento)tipo =arrDados.Typemodificado = arrDados.DateLastModifiedIF tam <> 0 THEN If (arrDados.size >= 1024 and arrDados.size < 1048576) then tamanho= Mid(arrDados.size / 1024,1,6)&" - KB" ElseIF (arrDados.size >= 1048576) then tamanho= Mid(arrDados.size / 1048576,1,6)&" - MB" Else tamanho= arrDados.size&" - Bytes" End IF%>

Compartilhar este post


Link para o post
Compartilhar em outros sites

No local onde você define StrCaminho e Caminho você coloca a unidade mapeada e o caminho completo para o arquivo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara... assim deu certo... eu mapei um servidor sem IIS e ele listou legalzinho...passei com parâmetro G:\Agora só uma curiosidade...Será que tem como fazer isso sem estar mapeado??Tipo eu passando o caminho :file:////ariel/intranet...aqui ele deu erro ... mas talvez alguem saiba uma forma...[ ] ssscarinhas valeu mesmo....

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não posso garantir, mas tente assim: \\nome_computador\pastacompartilhada

Compartilhar este post


Link para o post
Compartilhar em outros sites

Também não rolou...você conhece as propriedades dos Objeto auxilar Drive?Exemplo...Para eu pegar a letra do Drive eu coloco Drive.DriveLetterPara eu pegar o Tipo do Drive eu coloco Drive.DriverTypeAgora quando eu coloco Drive.ShareNames que retorna o nome compartilhado de rede para o Drive ele dá erro.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.