0
A
回答
4
我把這個在我的.dpr文件的代碼開始:
if ParamCount>1 then
begin
for i := 1 to ParamCount do
ShellExecute(0, nil, PChar(ParamStr(0)), PChar('"'+ParamStr(i)+'"'),
nil, SW_SHOWDEFAULT);
exit;
end;
這檢查,看看是否有比單一命令行參數更多。如果是這樣,那麼每一個都被交給一個新的進程,並且這個進程終止。
我想你可以把參數2交給N,讓這個過程處理參數1.但是,作爲一個數學性質,這個版本的對稱性吸引了我。
2
只要將droppend文件作爲參數傳遞,就可以爲傳遞的每個參數運行Application的新實例。
在下面顯示的示例中,第一個參數將由通過Drog啓動的應用程序處理。&在資源管理器中,將爲任何其他參數運行應用程序的新實例。
program Project1;
uses
Forms, Shellapi,Messages,Windows,
Unit2 in 'Unit2.pas' {Form2};
{$R *.res}
var
i:Integer;
begin
for I := 2 to Paramcount do
ShellExecute(0,'OPEN',PChar(Paramstr(0)),PChar(Paramstr(i)),'',sw_Show);
Application.Initialize;
Application.MainFormOnTaskbar := True;
Application.CreateForm(TForm2, Form2);
Application.Run;
end.
最簡單的代碼在窗體2可以通過
procedure TForm2.FormCreate(Sender: TObject);
begin
Caption := ParamStr(1);
// whatever should be done with the dropped file
end;
+1
這段代碼意味着什麼?寫一些*句子*解釋答案。 – 2013-03-12 19:24:30
1
每個文件例如掉在你的應用程序圖標或快捷方式將是一個命令行參數。你可以通過它們循環容易:
var
i: integer;
begin
for i := 1 to ParamCount do
Memo1.Lines.Add(ParamStr(i));
end;
因此,對於每一個,你可以在你的應用程序中(例如,從你的主窗體的OnCreate中)在從項目調用程序打開一個單獨的形式,或者你也可以這個代碼(.dpr)文件,然後啓動您的應用程序的其他實例(爲您正在執行的實例保存一個實例)。
E.g.在上面的循環中,您可以使用ShellExecute或CreateProcess啓動您自己的實例,將ParamStr(i)作爲單個參數傳遞給該實例。
相關問題
- 1. 可可/對象 - - 打開文件拖放到應用程序圖標時
- 2. 如何在C#WPF應用程序中拖放圖像文件
- 3. C程序設計:拖放文件在程序的圖標
- 4. 如何在iphone地圖應用程序中打開KML文件?
- 5. 獲取打開文件的默認應用程序的圖標
- 6. C#如何使用默認應用程序打開所有的MP3文件
- 7. 如何打開應用程序引擎補丁上的文件?
- 8. 如何獲取應用程序擁有的所有打開的圖形頁面?
- 9. 如何在網格圖標菜單上打開應用程序的動作
- 10. 如何上傳文件,在iOS應用程序中打開文件後?
- 11. iOS 11拖放:拖放標準日曆應用程序
- 12. 從Outlook窗口拖放到.Net中的應用程序.EXE文件(或圖標)。
- 13. 如何在打開應用程序時閱讀文本文件?
- 14. 如何打開在另一個應用程序中打開的文件
- 15. 如何在HTA文件中使用VBScript打開應用程序
- 16. 在打開的應用程序上是否有事件產生?
- 17. 在iPad上的外部應用程序中打開PDF文件
- 18. 如何在Windows上使用Perl的默認應用程序打開文件?
- 19. 用應用程序打開文件
- 20. Linux mint將文件拖放到我的程序的桌面圖標上
- 21. 如何在Qt應用程序中打開文件?
- 22. 如何在Mac應用程序中打開文件
- 23. 如何在iOS應用程序中打開VRML(*。wrl)文件
- 24. 如何在iphone應用程序中打開xls文件?
- 25. 如何在NWJS或Electron應用程序中打開文件?
- 26. 如何在默認應用程序中打開文件。 Ruby
- 27. 「用...打開」Windows上的文件,用python應用程序
- 28. 如何用cmd中的默認應用程序打開文件?
- 29. Swift:如何使用關聯的應用程序打開文件?
- 30. 如何用我的應用程序打開文件?
你不想爲其中一個文件使用當前實例的任何原因? – 2013-03-12 18:29:50
@Andreas我喜歡對稱 – 2013-03-12 18:39:04
夠公平的。我也想到了這一點。 – 2013-03-12 18:40:28