是否有一个简单的语句可以在Delphi中给出类似于paramstr()的结果?
答案 0 :(得分:5)
Delphi Prism(.Net)不包含ParamStr函数,但可以使用GetCommandLineArgs方法轻松实现,here就是一个例子:
class method TMyClass.ParamStr(Index: Integer): String;
var
MyAssembly: System.Reflection.Assembly;
Params : array of string;
begin
if Index = 0 then
begin
MyAssembly:= System.Reflection.Assembly.GetEntryAssembly;
if Assigned(MyAssembly) then
Result := MyAssembly.Location
else
Result := System.Diagnostics.Process.GetCurrentProcess.MainModule.FileName;
end
else
begin
Params := System.Environment.GetCommandLineArgs;
if Index > Length(Params) - 1 then
Result := ''
else
Result := Params[Index];
end;
end;