Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Unterschied: Application.Exename - ParamStr(0) (https://www.delphipraxis.net/74152-unterschied-application-exename-paramstr-0-a.html)

Cyberbob 29. Jul 2006 02:36


Unterschied: Application.Exename - ParamStr(0)
 
Hallo @all,

wie der Titel des Threads bereits aussagt, stehe ich vor der frage, welchen Code ich verwenden soll. Application.Exename oder doch ParamStr(0). Was ist hier der Unterschied und welche Vor- Nachteile gibts evtl.




PS: Bitte nicht Böse nehmen, wenn ich nicht so schnell antworte. Router durch Blitzschlag Auseinander genommen. :wall:

Harry M. 29. Jul 2006 03:48

Re: Unterschied: Application.Exename - ParamStr(0)
 
Für
Delphi-Quellcode:
 ParamStr(0)
reicht die
Delphi-Quellcode:
SysUtils
bei
Delphi-Quellcode:
Application.ExeName
musst Du die
Delphi-Quellcode:
Forms
einbinden was das Programm um einiges vergrössert.

Christian Seehase 29. Jul 2006 04:21

Re: Unterschied: Application.Exename - ParamStr(0)
 
Moin Cyberbob,

und Application.Exename zu verwenden ist einen Hauch langsamer, da hier noch ein kleines bisschen mehr passiert, bevor dann die gleiche Funktion aufgerufen wird wie bei paramstr(0), um das Ergebnis zu erhalten.
Da man aber wohl kaum sehr oft diesen Wert ausliest, ist der Unterschied vernachlässigbar.
Ich bevorzuge ParamStr(0), da man hier auch einfach weniger zu schreiben hat ;-)

Luckie 29. Jul 2006 04:22

Re: Unterschied: Application.Exename - ParamStr(0)
 
Falsch. ParamStr ist in der Unit System deklariert. Die Methode Exename von TApplication ruft intern aber auch nur ParamStr auf.

Harry M. 29. Jul 2006 05:46

Re: Unterschied: Application.Exename - ParamStr(0)
 
Sorry dann Irrtum von mir!

negaH 29. Jul 2006 12:51

Re: Unterschied: Application.Exename - ParamStr(0)
 
ParamStr() direkt zu benutzen ist cleverer. Application.ExeName benötigt eine Derefernzierung eines Objektzeigers. In DLLs ohne ein Application Objekt könnte dies zu AVs führen die unnötig sind. Normalerweise hätte man die Methode .ExeName von TApplication als Klassenmethode deklarieren sollen, dann wäre es richtiger.

Gruß Hagen

Cyberbob 1. Aug 2006 15:25

Re: Unterschied: Application.Exename - ParamStr(0)
 
So! Innernet geht nun wieder (Hoffentlich bleibt das auch so)!

Danke für eure Antworten. Hab mich nun entschlossen ParamStr(0) zu verwenden.

Dank an alle!!!


Alle Zeitangaben in WEZ +1. Es ist jetzt 23:54 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz