![]() |
Funktion aufrufen
Kurz und Schmerzlos:
Wie kann ich eine Funktion die die Kopfzeile
Delphi-Quellcode:
hat aufrufen?
function NamederFunktion(const Var: String): String;
begin // ... |
Re: Funktion abfragen
Was meinst du mit Abfragen?
Delphi-Quellcode:
a := Name(s);
|
Re: Funktion aufrufen
Mhh.. s ist dann aber leer die komplette funktion ist diese:
Delphi-Quellcode:
function getAppPath(const App: String): String;
var reg: Tregistry; path: String; begin reg := Tregistry.Create; try with reg do begin RootKey := HKEY_LOCAL_MACHINE; if openkey('DerKeyHalt' + App, true) then begin path := ReadString('Path'); CloseKey; result := path; end else result := ''; end; finally FreeAndNil(reg); end; end; |
Re: Funktion aufrufen
Es ist auch Parameter, den du der Funktion übergeben musst.
|
Re: Funktion aufrufen
Schau dir mal die Tutorials auf dsdt.info an, wie dir schon des öfteren empfohlen wurde. Mach's bitte mal (richtig durcharbeiten), dann tust du dich wirklich leichter!
Delphi-Quellcode:
Beispiel:
function FunktionsName(Parameter1, Parameter2: string): String;
function <Funktionsname>(<Parameter>): <Rückgabewert>;
Delphi-Quellcode:
Aufruf:
function Addiere(Zahl1, Zahl2: Integer): Integer;
begin result := Zahl1 + Zahl2; end;
Delphi-Quellcode:
Ergebnis := Addiere(12, 4); // zugewiesener Wert: 16
|
Re: Funktion aufrufen
die Funktion erwartet einen String zum aufruf und gibt einen String zurück.
Delphi-Quellcode:
showmessage(getAppPath('Notepad'));
|
Re: Funktion aufrufen
das habe ich ja schon verstanden, aber mit zahlen ist es was anderes.
ich kann ja schlecht
Delphi-Quellcode:
machen.
procedure TForm1.Button1Click(Sender: TObject);
var s: String; begin Label1.Caption := getAppPath('SOFTWARE\Classes\TypeLib\' + '{01E5A986-0F28-432B-8956-B38BFEDF99FF}\1.0\HELPDIR'); end; |
Re: Funktion aufrufen
Wieso nicht? Wo liegt dein Problem? :gruebel:
|
Re: Funktion aufrufen
Das ist doch auch ein String?
|
Re: Funktion aufrufen
Wozu die Variable s, wenn Du das Funktionsergebnis direkt ins Label schreibst? :gruebel:
|
Re: Funktion aufrufen
Das Problem ist, dass Label 1, oder halt der String, immer leer ist. Obwohl der Schlü+ssel ja existiert.
|
Re: Funktion aufrufen
Wie sieht denn diese Zeile wirklich bei dir aus?
Delphi-Quellcode:
if openkey('DerKeyHalt' + App, true) then
|
Re: Funktion aufrufen
Wenn ich das richtig sehe sollst du nur denn Namen der Application übergeben, nicht den gesamten Pfad.
|
Re: Funktion aufrufen
ich hab den "fehler" gefunden.. ich habe KEINE ahnung warum!
bei openkey stand groß "SOFTWARE" es musste aber kleingeschrieben sein. |
Re: Funktion aufrufen
Windows ist aber nicht case-sensitive, damit kann es doch eigentlich gar nix zu tun haben.
|
Re: Funktion aufrufen
Moin Rastaman,
Zitat:
Es gibt den einen oder anderen Eintrag in der Registry, der bei falscher Schreibweise keine Wirkung zeigt, deshalb sollte man sich hier, sicherheitshalber, an die Schreibweise halten. (mir fällt mein "Paradebeispiel" leider gerade nicht mehr ein, habe den Fall aber schon gehabt. :oops:) Nicht zu vergessen: Der Import von Funktionen aus DLLs. Wenn man hier den Namen angibt muss die Schreibweise auf jeden Fall stimmen. |
Re: Funktion aufrufen
[offtopic]
Zitat:
|
Re: Funktion aufrufen
Moin Thomas,
Zitat:
Danke. Ist korrigiert. BTW: Es handelt sich hierbei nicht um Regeln, eher Richtlinien... ;-) |
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:01 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz