Usuário com melhor resposta
Abrir um pdf local

Pergunta
-
Salve!
Aplicação web, escrita com VB2005, rodando numa intranet.
Uma das páginas da aplicação precisa ler informações de documentos que estão num servidor Notes. O documento notes pode ter arquivos anexos.
Então, para poder apresentar esses arquivos anexos estou gravando o anexo no diretório temporário da máquina do usuário (usando IO.Path.GetTempPath() ). Isso está funcionando.
Meu problema é para abrir esse arquivo. Para cada arquivo anexo existente no tal documento do Notes eu crio, na página, no CodeBehind, um controle HyperLink. Atribuo à sua propriedade NavigateUrl o caminho do diretório temporário e o nome do arquivo anexo.
Acontece que na hora que clico no controle Hyperlink gerado, ocorre o seguinte erro:
Endereço não compreendido
O Firefox não sabe como abrir este endereço.
O protocolo “c” não está associado a nenhum aplicativo.
Na barra de endereço do browser está:file:///c:/WINDOWS/TEMP/arquivoAnexo.pdf
Esses arquivos anexos são, normalmente, arquivos PDF, DOC ou XLS.
Como fazer para abrir o arquivo que está na máquina?
Grato pela atenção de todos.
Paulo Ricardo Ferreira
Respostas
-
já tentou fazer um response veja http://stackoverflow.com/questions/8294057/how-to-open-pdf-file-in-a-new-tab-or-window-instead-of-downloading-it-using-asp
Não esqueça de usar o componente </> na barra para posta seu código. Microsoft MCPD,MCTS,MCC
- Marcado como Resposta Harley Araujo quarta-feira, 8 de agosto de 2012 21:30
Todas as Respostas
-
Ricardo gravar algo no micro do usuário via web será que vc conseguiu mesmo ? estranho será que vc nao esta executando localmente no seu micro e ai vc consegue gravar pq seu micro está sendo ao mesmo tempo usuário e servidor, mais qdo vc publicar se vc gravar algo será no servidor web e não no cliente.
Para acessar arquivos em diretorios use server.mathpath(caminho);
Junior
-
Junior, mas ele está rodando numa intranet. Se o domínio tiver controlado por um AD ele consegue, contanto que a conta do IIS tenha permissão para isso no AD.
Aqui trabalho gravando 'anexos', mas os gravo em um servidor de arquivos, onde ficam todos os arquivos da empresa. Depois só preciso recuperar o arquivo de lá ou excluir. O diretório dá permissão ao para isso.
Rafael Santos
E-mail: rsdsantos@gmail.com
Pequeno Gafanhoto- Editado Rafa Santos sexta-feira, 3 de agosto de 2012 14:57
-
Caro Junior,
Consegui, sim, gravar no micro. E faço isso em algumas outras aplicações web. É como o Rafael comentou: estou numa intranet e tem autenticação por AD. Consigo gravar no diretório temporário padrão.
O meu problema é para conseguir abrir o arquivo.
Grato pela sua atenção.
-
-
Caro Rafael,
Eu queria evitar de gravar esses arquivos no servidor. Até porque são usados poucas vezes, mas também podem ser muitos.
Grato pela sua atenção
Paulo Ricardo Ferreira
Tente recuperar o arquivo através deste método:
System.IO.Path.Combine(CaminhoDiretorio, FileName)
Rafael Santos
E-mail: rsdsantos@gmail.com
Pequeno Gafanhoto -
-
já tentou fazer um response veja http://stackoverflow.com/questions/8294057/how-to-open-pdf-file-in-a-new-tab-or-window-instead-of-downloading-it-using-asp
Não esqueça de usar o componente </> na barra para posta seu código. Microsoft MCPD,MCTS,MCC
- Marcado como Resposta Harley Araujo quarta-feira, 8 de agosto de 2012 21:30
-