DevMedia - asp.net, Java, Delphi, SQL e web Design, tudo em um só lugar!
Bem vindo a DevMedia!
LOGIN:     SENHA:
 
 

  Este é um post disponível para assinantes MVP
Este post também está disponível para assinantes da ClubeDelphi DIGITAL
ou para quem possui Créditos DevMedia.  Clique aqui para saber mais!

Artigo Clube Delphi Edição 19 - Trabalhando com a shell do Windows

Artigo da Revista Clube Delphi Edição 19.

Esse artigo faz parte da revista Clube Delphi edição 19. Clique aqui para ler todos os artigos desta edição

 

Atenção: por essa edição ser muito antiga não há arquivo PDF para download. Os artigos dessa edição estão disponíveis somente através do formato HTML. 

 

Trabalhando com a shell do Windows

 

Quando se fala em interação com o sistema operacional, muitos programadores ignoram ou tentam outros meios para evitar as inúmeras variáveis, comandos e funções de nome estranho da API. Não se pode dizer que trabalhar com a Shell é um processo fácil, visto que até para encontrar material relacionado já é meio complicado.

         Diante de sua inegável complexidade, citaremos alguns exemplos "úteis" da utilização deste recurso, que pode muitas vezes poupar tempo e/ou trabalho tentando-se outros caminhos; para a utilização das funções a seguir você precisa declarar na cláusula uses a unit ShellApi. Vamos aos exemplos:

 

Executando um programa

 

         É habitual a utilização da função WinExec para executar determinados programas. Porém, este é um costume desaconselhável, já que, segundo comentários, a Microsoft pretende descontinuar esta API nas versões futuras do Windows. Utilizar a Chamada ShellExecute da API é mais recomendado, por ser mais fácil de usar e permitir a execução de aplicações registradas chamando apenas o documento. Por exemplo: se você chamar um arquivo do formato ".html" seu browser será acionado, se um arquivo do tipo ".doc", o Word será executado etc.. Veja um exemplo:

 

ShellExecute(0,nil,'NOTEPAD.EXE','',nil,sw_shownormal);

 

         Você pode fazer a mesma chamada de forma que possa ter um controle maior sobre a aplicação e seus threads, porém com um pouco mais de complexidade:

 

var pi: TProcessInformation;

si: TStartupInfo;"

A exibição deste artigo foi interrompida.

  Este é um post disponível para assinantes MVP
Este post também está disponível para assinantes da ClubeDelphi DIGITAL
ou para quem possui Créditos DevMedia.  Clique aqui para saber mais!


Wellington Moreira
Desenvolvedor e consultor, atuando no mercado mineiro. Desenvolveu o AniMessage (www.animessage.cjb.net), um software de comunicação de alta tecnologia.
O que você achou deste post?

    0 COMENTÁRIO

[Fechar]

Este post é fechado - você precisa ter acesso ao post para incluir um comentário.


Nenhum comentário foi postado - seja o primeiro a comentar!
Cursos relacionados
Publicidade
[Fechar]

Você precisa estar logado para dar um feedback.

Clique aqui para efetuar o login
[Fechar]


Este post está fechado. Saiba mais sobre a assinatura MVP!
web-03
DevMedia  |  Anuncie  |  Fale conosco
Hospedagem web por Porta 80 Web Hosting
2013 - Todos os Direitos Reservados a web-03