Ver Mensaje Individual
  #8  
Antiguo 08-07-2013
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Reputación: 38
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola.

Leyendo tu último mensaje coincido con dec sobre la causa de que no te funcione la implementación de Delphi.

Desconozco si será así para Delphi XE3 por que aún no he podido adquirir una nueva versión. Pero, por si te sirve de ayuda, te pongo un trozo de código donde llamo a la función GetEnvironmentVariable de ambos modos (desde Delphi 7):
Código Delphi [-]
var
  EnvStr: string;
  size: Integer;
begin
  // Mediante la función Delphi
  ShowMessage('Delphi: '+ SysUtils.GetEnvironmentVariable('WINDIR'));

  // Mediante la API de windows
  size := Windows.GetEnvironmentVariable('WINDIR',nil,0);
  if size > 0 then
  begin
    SetLength(EnvStr, size-1);
    Windows.GetEnvironmentVariable('WINDIR',PChar(EnvStr),size);
    ShowMessage('Win API: '+EnvStr);
  end;
end;

Cita:
Entonces porque cuando Embarcadero hizo la función le saco dos de esos parámetros.
No podría asegurar el motivo que llevó a los diseñadores de Delphi a hacerlo. Estimo que para simplificarles la llamada a los usuarios del lenguaje.

Y comparando la dificultad en el uso de una u otra, mas bién surge preguntar por que los diseñadores de Windows no la hicieron de otro modo...

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita