none
Abrir um pdf local RRS feed

  • 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

    sexta-feira, 3 de agosto de 2012 14:19

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
    terça-feira, 7 de agosto de 2012 12:20
    Moderador

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

    sexta-feira, 3 de agosto de 2012 14:53
  • 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
    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.

    sexta-feira, 3 de agosto de 2012 15:31
  • 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

    sexta-feira, 3 de agosto de 2012 15:32
  • 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

    sexta-feira, 3 de agosto de 2012 15:38
  • Caro Rafael,

    Tentei com o método sugerido mas não mudou em nada o erro apresentado.

    Grato pela sua atenção.

    Paulo Ricardo Ferreira

    sexta-feira, 3 de agosto de 2012 16:41
  • 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
    terça-feira, 7 de agosto de 2012 12:20
    Moderador
  • Caro Seilor,

    Vou tentar essa sugestão.

    Grato pela sua atenção.

    Paulo Ricardo Ferreira

    quarta-feira, 8 de agosto de 2012 12:17