PDA

Ver la Versión Completa : Calculadora de Windows


sizne
27-05-2010, 20:17:23
Hoola!
Pueden ayudarme en esto por favor?
Coloqué este código para que me aparezca la calculadora de Windows en mi programa.

procedure TFprincipal.Calculadora1Click(Sender: TObject);
begin
ShellExecute(Handle, Nil, PChar('calc.exe'), Nil, Nil, SW_NORMAL);
end;

Coloqué ese código para que me aparezca la calculadora de Windows,
pero me aparece el siguiente mensaje, a pesar de que funciona o
se muestra la calculadora.

[Warning]Uprincipal.pas(454):Unsafe type 'PChar'


Saludos!

maeyanes
27-05-2010, 20:50:50
Hola...

Si vas a pasar el nombre directamente no necesitas hacer el cast a PChar.


// Pasamos la cadena directamente:
ShellExecute(Handle, nil, 'calc.exe', nil, nil, SW_NORMAL);

// Usamos una variable de tipo string, si necesitas cast:
var
AppName: string;

begin
AppName := 'calc.exe';
ShellExecute(Handle, nil, PChar(AppName), nil, nil, SW_NORMAL)
end;



Saludos...

ecfisa
27-05-2010, 22:55:21
Hola.

También podes usar WinExec.


procedure EjecutarApp(AName: string);
begin
WinExec(PChar(AName),SW_SHOWNORMAL);
end;



Saludos.

sizne
29-05-2010, 01:37:02
Hola!!!

Coloqué esto:

procedure TFprincipal.Calculadora1Click(Sender: TObject);
begin
ShellExecute(Handle, Nil, 'calc.exe', Nil, Nil, SW_NORMAL);
end;


Gracias!!!