Ir para conteúdo

POWERED BY:

Arquivado

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

natalia

Download com problema

Recommended Posts

Olá pessoal, tenho um site que tem um gerenciador onde é possível fazer upload de arquivos.

Os arquivos estão disponiveis no site para download. Alguns não abrem dá erro, mas apenas alguns. Os arquivos são doc ou pdf, alguns abrem e outros não.

 

A mensagem é esse:

 

O arquivo baixado no momento não pode ser aberto pelo programa padrão. O arquivo está corrompido ou é de tipo incorreto.

 

O que pode ser? Será que é problema no código? Mas se fosse todos os arquivos não teriam que dar problema?

 

Alguém saberia explicar o que ocorre?

 

Obrigada

Compartilhar este post


Link para o post
Compartilhar em outros sites

será que não subiram para seu servidor arquivos com extensões trocadas? tipo uma imagem que foi renomeada para doc?

Compartilhar este post


Link para o post
Compartilhar em outros sites

ger erro de code nessas horas, verifique se o tamanho esta sendo excedido

Compartilhar este post


Link para o post
Compartilhar em outros sites

eu tive esse problema e resolvi usando esse script pra forçar o download

	Function downloadFile(file)
Const DIRETORIO_UPLOAD = "D:\wwwroot\meusite\pastaarquivo"
		'Response.Write DIRETORIO_UPLOAD & "\" & file : Response.End()
		Server.ScriptTimeout = 30000
		
		'Response.Write(existearquivo(DIRETORIO_UPLOAD & "\" & file)) : Response.End()
		
		Dim fileSize
		Dim chunk
		Dim i
		Dim objStream
		Dim ContentType
		Dim extensaoArquivo
		chunk = 2048
		
		If file <> "" Then

			Dim FileExt
			Const adTypeBinary = 1
			FileExt = Lcase(Trim(Mid("" & file, InStrRev("" & file, "."))))
			select case UCase(FileExt)
				Case "ASP", "ASA", "ASPX", "ASAX", "MDB"
					Response.Write "Não é possível acessar esse tipo de arquivo."
					Response.End
			end select
			Response.Clear
			Response.ContentType = "application/octet-stream"
			Response.Addheader "content-disposition", "attachment; filename=" & getFileName(DIRETORIO_UPLOAD & "\" & file)
			Set objStream = server.CreateObject("ADODB.Stream")
			objStream.type = adTypeBinary
			objStream.open
			objStream.LoadFromFile DIRETORIO_UPLOAD & "\" & file
			On Error Resume Next
			While not objStream.EOS
				Response.BinaryWrite objStream.Read(1024 * 64)
			Wend
			On Error GoTo 0
			objStream.Close
			Set objStream = Nothing
			Response.Flush
			Response.End			
			
		end if
	End Function

Compartilhar este post


Link para o post
Compartilhar em outros sites

tb

<%
'É necessário passar o nome do arquivo no FORM
Dim Arquivo
Arquivo = Request("arquivo")

Response.Buffer = True
Response.AddHeader "Content-Type","application/x-msdownload"
Response.AddHeader "Content-Disposition","attachment; filename=" & Arquivo
Response.Flush

Set objStream = Server.CreateObject("ADODB.Stream")
objStream.Open
objStream.Type = 1
objStream.LoadFromFile Server.MapPath(Arquivo)
Response.BinaryWrite objStream.Read
objStream.Close
Set objStream = Nothing
Response.Flush
%>

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.