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;
begin
FillMemory( @si, sizeof( si ), 0 );
...