La API ShellExecute se puede usar para abrir programáticamente la ventana del Panel de Control de Windows o ejecutar una applet del Panel de Control, e incluso puede especificar la página que inicialmente se muestra en una applet

Mostrando el Panel de Control y ejecutando una "applet" del Panel de Control

Copyright © 2000 Ernesto De Spirito

Boycott Trend Micro!

Mostrando el Panel de Control y ejecutando una 'applet' del Panel de Control

Para mostrar la ventana del Panel de Control se debe llamar a la aplicación rundll32.exe (ubicada en el directorio de Windows) pasándole shell32.dll,Control_RunDLL como parámetro, tal como puede observar en el siguiente ejemplo:

uses ShellAPI;

...

ShellExecute(Form1.Handle, nil, 'rundll32.exe',
  'shell32.dll,Control_RunDLL', nil, SW_SHOW);

Abriendo una applet del Panel de Control

Para abrir una applet es casi lo mismo que abrir el Panel de Control, pero hay que agregar el nombre del archivo del applet como parámetro adicional (estos archivos están localizados en el directorio System y tienen extensión .cpl). El siguiente ejemplo abriría la applet Multimedia:

ShellExecute(Form1.Handle, nil, 'rundll32.exe',
  'shell32.dll,Control_RunDLL mmsys.cpl', nil, SW_SHOW);

Puede especificar la "solapa" (tab) que se muestra inicialmente en la ventana de la applet. El siguiente ejemplo abriría la applet Multimedia inicialmente mostrando la solapa Video (los números empiezan de 0 y Video es la segunda solapa, así que su número es el 1):

ShellExecute(Form1.Handle, nil, 'rundll32.exe',
  'shell32.dll,Control_RunDLL mmsys.cpl,,1', nil, SW_SHOW);
Help & Manual authoring tool