1
在ParamStr(1)中找到了在应用程序图标上放置的文件的名称。如何知道在应用程序图标上拖放了多少个文件?
但是,如何知道是否有多个?因为如果有更多的信息,那么应该显示错误信息,如:'你只能打开一张图片!'或类似的。
在ParamStr(1)中找到了在应用程序图标上放置的文件的名称。如何知道在应用程序图标上拖放了多少个文件?
但是,如何知道是否有多个?因为如果有更多的信息,那么应该显示错误信息,如:'你只能打开一张图片!'或类似的。
Windows只是执行你的程序是这样的:
yourapp.exe "C:\file1.jpg" "C:\file2.jpg"
因此每个文件都可以在ParamStr(i)
,其中i
会被发现最高返回值为ParamCount()
。
所以,你可以只是举例做到:
procedure TMainForm.FormShow(Sender: TObject);
begin
if ParamCount > 1 then
begin
ShowMessage('You can open only one picture!');
end
else
begin
MyOpen(ParamStr(1));
end;
end;
举例答案,每个文件将是一个参数
var
i:Integer;
begin
Memo1.Lines.Add(IntToStr(ParamCount));
for I := 1 to ParamCount do
memo1.Lines.Add(paramstr(i))
end;
@Ken:这是一个答案,而不是评论。 –
谢谢@Ken。答案被接受:) –
@Andreas:是的,我也是这样决定的。当我准备好时,那里还有两个人。 –