在使用paramstr()函数的时候,我不知道这个函数该如何使用,是不是我在使用shellExecute()函数之后,可以使用这个函数从中间提取参数,如果不使用这个函数,我的paramstr()函数是不是没有任何意义,请大家给我详细解释一下,我看了半天文档都没看懂,谢谢!

解决方案 »

  1.   

    paramstr
    就是, 如果你的程序是 a.exe
    你這樣運行: a.exe a b c
    那你檢查paramstr時, 就會得到ParamStr(0) 為 a.exe 
    ParamStr(1) 為 a
    ParamStr(2)    b
    ParamStr(3)    c
      

  2.   

    如果我不这样运行了?我不通过CMD运行了?这个参数是怎么回事?
      

  3.   

    paramstr 是用来给你的应用程序添加启动参数用的,例如Windows中的Notepad.exe就支持参数,例如:Notepad.exe c:\abc.txt 那么执行后则Notepad.exe将自动打开c:\abc.txt那么Notepad.exe的参数在Delphi中如何定义呢,呵呵就是楼上说的了。和什么ShellExecute没什么关系了。
      

  4.   

    我没有用过取其后参数的方法,常用的是拖其它程序在其上时用其取所拖入的文件名,如你做一个播放器,把一首歌拖向其图标然后松开,你可用此法得所拖入歌之路径:
    procedure TForm1.FormCreate(Sender: TObject);
    begin
      if ParamStr(1) <> '' then Edit1.Text := ParamStr(1);
    end;
    我想这个才是最实用的方法,试一下能不能实现,然后就可能对拖入的文件进行你的处理了
      

  5.   

    function paramstr(index : word) : string;
    这个函数是用来获取命令行中的参数的!index返回第index个参数,如果index大于 paramcount函数返回空串,paramstr(0)为本程序名称!如:'c:\..\..\aa.exe'
      

  6.   

    你所说的拖拽是用Dock 相关的 Windows API来实现的,Paramstr不行吧。如果行,那我又学一招。关注此题。