Ir para conteúdo
Fórum Script Brasil
  • 0

(Resolvido) Duvida com Execução de Arquivos


C.J.

Pergunta

Ola, tenho a seguinte duvida...

estou criando um menu autoexecutavel para um programa...

esse menu seria gravado em um cd ou baixado da propria net...

so que ser for gravado no cd eu não vou saber se o diretorio do cd do cara é D: ou etc...

preciso de uma forma que ele localize a aplicação na mesma pasta que ele e a execute sem eu ter que especificar o caminho do arquivo.. isso é possivel??

Obrigado!

Se não fui claro me avise

Link para o comentário
Compartilhar em outros sites

10 respostass a esta questão

Posts Recomendados

  • 0
preciso de uma forma que ele localize a aplicação na mesma pasta que ele e a execute sem eu ter que especificar o caminho do arquivo.. isso é possivel??
function ExtractFileDrive(const FileName: string): string;

Description

ExtractFileDrive returns a string containing the drive portion of a fully qualified path name for the file passed in the FileName. For file names with drive letters, the result is in the form '<drive>'. For file names with a UNC path the result is in the form '\\<servername>\<sharename>'. If the given path contains neither style of path prefix, the result is an empty string.

ou pesquise no forum pela palavra ExtractFilePath

http://scriptbrasil.com.br/forum/index.php...ExtractFilepath

abraço

Link para o comentário
Compartilhar em outros sites

  • 0

então é pra ficar assim??

WinExec('ExtractFilePath(Application.ExeName)'+''teste.exe', sw_show);

+ quando eu tento compilar não vai da erro... alguém pode me informar como seria pra fdicar?/

e também tentei por uma musica no programa dessa maneira:

SndPlaySound('ExtractFilePath(Application.ExeName)'+'\som.wav', SND_NOSTOP)

Não funcionou... PS:Puis no OnFormActivate

Abraços e obrigado

Link para o comentário
Compartilhar em outros sites

  • 0
então é pra ficar assim??

WinExec('ExtractFilePath(Application.ExeName)'+''teste.exe', sw_show);

+ quando eu tento compilar não vai da erro... alguém pode me informar como seria pra ficar?

deveria ficar assim

WinExec(PChar(ExtractFilePath(Application.ExeName) + 'teste.exe'), SW_SHOW);

ou ainda assim

winexec('./teste.exe', sw_show);

OBS: O './' antes de um arquivo ou pasta indica que está no mesmo diretório em operação e quando você chama isso dentro de um programa, esse diretório em operação é o diretório onde se encontra o executável...

abraço

Link para o comentário
Compartilhar em outros sites

  • 0

Ola! Bom Sobre a Execução do Programa está tudo ok e funcionando!

agora e sobre a musica??

Abraços

e outra coisinha ;D

WinExec(PChar(ExtractFilePath(Application.ExeName) + 'teste.exe'), SW_SHOW);

/\

como esse comando não posso executar um arquivo HTML que esteja na pasta??

se não como faço?

Editado por C.J.
Link para o comentário
Compartilhar em outros sites

  • 0
Ola! Bom Sobre a Execução do Programa está tudo ok e funcionando!

agora e sobre a musica??

use dessa maneira:

uses  MMSystem;

procedure TForm1.Button1Click(Sender: TObject);
begin
   SndPlaySound(Pchar(ExtractFilePath(Application.ExeName)+'/som.wav'), SND_SYNC)
end;

abraço

Link para o comentário
Compartilhar em outros sites

  • 0
o som toca + quando ta tocando programa fica travado... queria que o som ficasse tocando e desse pra mexer no programa...
Nesse caso voce terá que usar o componente MediaPlayer ( paleta System )

http://docwiki.embarcadero.com/CodeSamples...Player_(Delphi)

e tambem tem como interagir o (ExtractFilePath(Application.ExeName)

com o ShellExecute??

veja este link

http://www.devmedia.com.br/articles/viewcomp.asp?comp=613

abraço

Link para o comentário
Compartilhar em outros sites

  • 0
e tambem tem como interagir o (ExtractFilePath(Application.ExeName) com o ShellExecute??

bom vi o link do SHELLEXECUTE e não vi sobrea a minha duvida... ela seria interagir o SHELL com o Extract...

Pelo visto voce leu e não entendeu ... não é ?

uses shellapi;

procedure TForm1.Button1Click(Sender: TObject);
begin
   ShellExecute(handle,'explore',PChar(ExtractFilePath(Application.ExeName)), '','',SW_SHOWNORMAL);
end;

abraço

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,4k
×
×
  • Criar Novo...