Obtención de los valores de parámetro - actualizado


Obtener los valores de parámetro con delphi es muy fácil, usted tiene la ParamStr y ParamCount funciones para trabajar con, también hay FindCmdLineSwitch función que le dirá si un determinado parámetro se utiliza.
sin embargo, si utiliza un parámetro como
/paramname:paramvalue
a continuación, la siguiente función será útil cuando se obtienen los valores de estos parámetros.
(* GetParameterValue
GetParameterValue devolverá el valor asociado con un nombre de parámetro en forma de
/paramname:paramvalue
-paramname:paramvalue
y
/paramname
-paramname
ParamName - Nombre del parámetro (paramname)
SwitchChars - interruptor de Parámetro identificadores (/ o -)
Separador - El char que se encuentra entre paramname y paramvalue (:)
el Valor de - El valor del parámetro (paramvalue) si existe
Devuelve Booleano, true si el parámetro se encontró, false si el parámetro no existe
el uso típico
Parámetro
-P=c:/temp/
-S
GetParameterValue('p', ['/', '-'], '=', sValue)
sValue contendrá c:/temp/
*)
función GetParameterValue(const ParamName: string SwitchChars: TSysCharSet
& nbsp & nbsp Separador: Char var Value: string): Boolean
var
& nbsp & nbsp I, Sep: Longint
& nbsp & nbsp S: string
begin
& nbsp & nbsp Resultado := False
& nbsp & nbsp Valor := '
& nbsp & nbsp for I := 1 to ParamCount hacer
& nbsp & nbsp empezar
& nbsp & nbsp & nbsp & nbsp S := ParamStr(I)
& nbsp & nbsp & nbsp & nbsp si la Longitud de la(S) > 0, entonces
& nbsp & nbsp & nbsp & nbsp & nbsp & nbsp si S[1] en SwitchChars, a continuación,
& nbsp & nbsp & nbsp & nbsp & nbsp & nbsp empezar

& nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp Sep := Pos(Separador, S)
& nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp caso de la Sep, de
& nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp 0:
& nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp empezar
& nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp si CompareText(Copia(S, 2, Length(S) -1), ParamName) = 0, entonces
& nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp empezar
& nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp Resultado := True
& nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp Break
& nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp final
& nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp final
& nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp 1..MaxInt:
& nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp empezar
& nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp si CompareText(Copia(S, 2, Sep -2), ParamName) = 0, entonces
& nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp empezar
& nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp Valor := Copy(S, Sep 1, Length(S))
& nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp Resultado := True
& nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp Break
& nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp final
& nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp final
& nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp final //caso
& nbsp & nbsp & nbsp & nbsp & nbsp & nbsp final
& nbsp & nbsp final
fin

actualizada el 27 de Nov 03









Obtencion de los valores de parametro - actualizado


Obtencion de los valores de parametro - actualizado : Multi-millones de consejos para hacer su vida mas facil.


Obtener los valores de parametro con delphi es muy facil, usted tiene la ParamStr y ParamCount funciones para trabajar con, tambien hay FindCmdLineSwitch funcion que le dira si un determinado parametro se utiliza.
sin embargo, si utiliza un parametro como
/paramname:paramvalue
a continuacion, la siguiente funcion sera util cuando se obtienen los valores de estos parametros.
(* GetParameterValue
GetParameterValue devolvera el valor asociado con un nombre de parametro en forma de
/paramname:paramvalue
-paramname:paramvalue
y
/paramname
-paramname
ParamName - Nombre del parametro (paramname)
SwitchChars - interruptor de Parametro identificadores (/ o -)
Separador - El char que se encuentra entre paramname y paramvalue (:)
el Valor de - El valor del parametro (paramvalue) si existe
Devuelve Booleano, true si el parametro se encontro, false si el parametro no existe
el uso tipico
Parametro
-P=c:/temp/
-S
GetParameterValue('p', ['/', '-'], '=', sValue)
sValue contendra c:/temp/
*)
funcion GetParameterValue(const ParamName: string SwitchChars: TSysCharSet
& nbsp & nbsp Separador: Char var Value: string): Boolean
var
& nbsp & nbsp I, Sep: Longint
& nbsp & nbsp S: string
begin
& nbsp & nbsp Resultado := False
& nbsp & nbsp Valor := '
& nbsp & nbsp for I := 1 to ParamCount hacer
& nbsp & nbsp empezar
& nbsp & nbsp & nbsp & nbsp S := ParamStr(I)
& nbsp & nbsp & nbsp & nbsp si la Longitud de la(S) > 0, entonces
& nbsp & nbsp & nbsp & nbsp & nbsp & nbsp si S[1] en SwitchChars, a continuacion,
& nbsp & nbsp & nbsp & nbsp & nbsp & nbsp empezar

& nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp Sep := Pos(Separador, S)
& nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp caso de la Sep, de
& nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp 0:
& nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp empezar
& nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp si CompareText(Copia(S, 2, Length(S) -1), ParamName) = 0, entonces
& nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp empezar
& nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp Resultado := True
& nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp Break
& nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp final
& nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp final
& nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp 1..MaxInt:
& nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp empezar
& nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp si CompareText(Copia(S, 2, Sep -2), ParamName) = 0, entonces
& nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp empezar
& nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp Valor := Copy(S, Sep 1, Length(S))
& nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp Resultado := True
& nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp Break
& nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp final
& nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp final
& nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp & nbsp final //caso
& nbsp & nbsp & nbsp & nbsp & nbsp & nbsp final
& nbsp & nbsp final
fin

actualizada el 27 de Nov 03


Obtención de los valores de parámetro - actualizado

Obtención de los valores de parámetro - actualizado : Multi-millones de consejos para hacer su vida más fácil.
Recommander aux amis
  • gplus
  • pinterest

Comentario

Dejar un comentario

Clasificación