Delphi ParamStr(),带参数的应用程序  
官方Delphi 学习QQ群: 682628230(三千人)
频道

Delphi ParamStr(),带参数的应用程序


尽管运行带有参数的应用程序更像是过去的事情,但新版本的操作系统允许您在应用程序中运行参数。


并且 Delphi 与任何其他编程语言一样,允许您创建应用程序,通过ParamStr()函数读取发送的参数并与之交互。


我们不仅可以在运行时读取发送到应用程序的参数,还可以在调试时读取。为此,我们必须转到菜单运行 -> 参数,然后为每个应用程序版本放置必要的参数。

Parametros.jpg


ParamStr() 和 ParamCount()

为了与发送到应用程序的参数进行交互,我们首先必须知道是否已经发送了某些参数。


要知道这些数据,我们有ParamCount()函数,它返回执行的应用程序接收到的参数数量。


知道收到的参数数量对于避免访问冲突类型的错误至关重要,因为如果我们想使用ParamStr (0) 函数读取参数,而我们还没有收到该参数,我们将收到上述错误。


在哪里读取接收到的参数

从执行onActivate事件开始,发送到应用程序的参数就可用了。


换句话说,从应用程序被激活的那一刻起,我们将能够访问所有接收到的参数,即使在onDestroy事件中也是如此。


paramStr() 例子

为了执行 ParamStr () 和 ParamCount () 函数的这个示例,我们创建一个空白应用程序并在表单中放置一个TMemo,如下图所示:


ParamStr 和 ParamCount 示例

我们打开菜单Run -> Parameters并在对话框中,在Parameters选项中放置一些参数进行测试,如下图所示:


Delphi 中的参数

然后,我们将以下代码放入Form的onActivate事件中:


procedure TForm1.FormActivate(Sender: TObject);

var

  I: Integer;

begin

  {Vaciamos el memo}

  memo1.Lines.Clear;

 

  {Leemos los parámetros recibidos y los mostramos en el memo}

  for I := 0 to ParamCount() do

  begin

    memo1.Lines.Add(('Parámetro '+IntToStr(I)+' = '+ParamStr(I)));

  end;

end;

执行应用程序时,我们会发现备忘录中显示了我们发送给应用程序的所有参数:

Parametros-recibidos.jpg

Delphi 接收参数

(是的,我知道,英文中的三写成三) 


但是我们遇到了一个惊喜,Parameter 0。这个带有零索引的参数将出现在应用程序的每次执行中,它只不过是包含扩展名的应用程序的完整路径和名称。


请记住,如果在任何时候我们需要可执行文件所在的路径或文件名,我们将使用ParamStr (0) 函数提供它。



推荐分享
图文皆来源于网络,内容仅做公益性分享,版权归原作者所有,如有侵权请告知删除!
 

Copyright © 2014 DelphiW.com 开发 源码 文档 技巧 All Rights Reserved
晋ICP备14006235号-8 晋公网安备 14108102000087号

执行时间: 0.17270493507385 seconds