Jump to content
FMC

[Resolvido] Delphi 7 abrir ficheiro PDF

Recommended Posts

FMC

Olá Comunidade P@P,

Estou a realizar um projecto de PAP e decidi criar um programa de Gestão de correspondência para a minha escola, e é necessário criar o Manual para o Programa.

Meu problema é:

Criei um botão para abrir o Manual, e nunca consegui que ele abri-se o manual em formato PDF, deixo aqui algum código que já experimentei:

WinExec('C:\Manual.PDF', SW_SHOW);
WinExec('C:\Manual.PDF', SW_SHOWNORMAL);

Também é possível que o caminho seja o mesmo que está o programa instalado, independentemente onde o usuário coloque ??

OPS: Estou a usar o Delphin 7, numa maquina virtual com o Windows 7.

Aguardo pela Resposta!!!

Edited by FMC

"The greatest mistake you can make in this life is to be continually fearing you will make one."

Elbert Hubbard -

 

Share this post


Link to post
Share on other sites
nunopicado

Usa antes o ShellExecute para essa tarefa:

 

uses
  ShellAPI;
//
//
begin
  ShellExecute(Handle, nil, 'manual.pdf', nil, nil, SW_SHOW);

Se não puseres o caminho, o programa assume a pasta onde está o executável, a não ser que esteja a ser usado um atalho em que lhe seja indicada outra pasta para iniciar.
Se quiseres forçar o caminho do executável, podes usar a função ExtractFilePath(ParamStr(0)) antes do nome do ficheiro:

ShellExecute(Handle, nil, ExtractFilePath(ParamStr(0)) + '\manual.pdf', nil, nil, SW_SHOW);

 


"A humanidade está a perder os seus génios... Aristóteles morreu, Newton já lá está, Einstein finou-se, e eu hoje não me estou a sentir bem!"

> Não esclareço dúvidas por PM: Indica a tua dúvida no quadro correcto do forum.

Share this post


Link to post
Share on other sites
FMC

Ei nunopicado, obrigado ai pela tua sugestão, mas não resultou por pouco, tentei exactamente o que dizes-te, mas não abria o documento e o delphin 7 não conseguia fechar o programa em teste.

Então pesquisei sobre ShellExecute, e encontrei a solução:

Uses ShellAPI;

////
Begin
	ShellExecute(Handle, 'open', 'manual.pdf', '' , '' , SW_SHOWNORMAL);
End;

 

Abraços!  


"The greatest mistake you can make in this life is to be continually fearing you will make one."

Elbert Hubbard -

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.