A maneira mais fácil de abrir um arquivo com o aplicativo padrão é:
System.Diagnostics.Process.Start(@"c:\myPDF.pdf");
Porém, gostaria de saber se existe uma maneira de definir parâmetros para o aplicativo padrão, pois gostaria de abrir um pdf em um determinado número de página.
Sei fazer criando um novo processo e configurando os parâmetros, mas assim preciso indicar o caminho da aplicação, e gostaria de ter uma aplicação portátil e não ter que definir o caminho da aplicação cada vez Eu uso o aplicativo em outro computador. Minha ideia é que espero que o computador tenha instalado o leitor de pdf e diga apenas o que abrir a página.
Obrigado.
myProcess.StartInfo.FileName = "Acrobat.exe";
sem fornecer o caminho completo para o aplicativo?Respostas:
Se você deseja que o arquivo seja aberto com o aplicativo padrão, sem especificar Acrobat ou Reader, você não pode abrir o arquivo na página especificada.
Por outro lado, se você concordar em especificar o Acrobat ou o Reader, continue lendo:
Você pode fazer isso sem informar o caminho completo do Acrobat, como este:
Se você não deseja que o PDF abra com o Reader, mas com o Acrobat, altere a segunda linha assim:
Você pode consultar o registro para identificar o aplicativo padrão para abrir arquivos PDF e, em seguida, definir FileName no StartInfo do seu processo de acordo.
Siga esta pergunta para obter detalhes sobre como fazer isso: Encontrar o aplicativo padrão para abrir um tipo de arquivo específico no Windows
fonte
isso deve estar perto!
fonte
Converti o código VB na postagem do blog vinculada por xsl para C # e modifiquei um pouco:
EDIT - isso não é confiável. Consulte Encontrar o aplicativo padrão para abrir um tipo de arquivo específico no Windows .
fonte
você pode tentar com
fonte
Por favor, adicione Configurações em Propriedades para o Projeto e faça uso delas desta forma você tem configurações limpas e fáceis de configurar que podem ser definidas como padrão
Como: Criar uma nova configuração em tempo de design
Atualização: após comentários abaixo
fonte