![]() |
Verknüpfungen
hallo ich benutze das Delphie 7 Personal und muss was für die Schule programmieren.
Meine Frage ist vllcht schoneinmal gekommen aber da ich wenig Zeit hatte bitte ich es zu entschuldigen das ich ned alle Treads lesen konnte. Also meine Frage wäre wie kann ich im Delphie mit einem Button einen externen Link zum Starten einer Exe Datei herstellen. Ich habe schon vieles ausprobiert aber nichts hatt geklappt. Des weiteren würde ich ebenfalls noch zwei projekte miteinander über einen Button verknüpfen. Wenn jemand einen programmiertext als Beispiel dafür hätte würde ich mich sehr freun. Also danke schonmal im vorraus. MFG swordwolt |
Re: Verknüpfungen
erstmal hallo und willkommen in der dp :dp: :dp:
möchtest du eine link (.lnk) datei erstellen oder möchtest du ein programm nur per knopfdruck verlinken?? |
Re: Verknüpfungen
Hallo und Willkommen in der DP :dp:
leider hab ich nicht ganz verstanden, was Du machen möchtest. Soll per Button ein anderes Programm gestartet werden oder möchtest Du eine Verknüpfung z.B. auf dem Desktop anlegen? [edit] :lol: Da bin ich wohl nicht alleine :roll: [/edit] |
Re: Verknüpfungen
Zitat:
|
Re: Verknüpfungen
Sieht ganz so aus. @swordwolt: das heißt Delphi ohne e hinten ;)
|
Re: Verknüpfungen
Um mit einem Button eine .exe zu starten kannst du doch einfach ShellExecute nehmen
Oder was willst du erreichen |
Re: Verknüpfungen
ein programm per knopfdruck sollte es sein
|
Re: Verknüpfungen
Zitat:
Delphi-Quellcode:
Shellexecute(hwnd, 'open', PChar('DeinProgrammHierRein.exe'), nil, nil, SW_SHOWNORMAL);
|
Re: Verknüpfungen
Verknüpfung erstellen:
![]() Ich glaube das das gemeint war. |
Re: Verknüpfungen
Das programm muss dann aber im selben ordner sein oder kann ich da auch nen ganzen pfad angeben?
|
Re: Verknüpfungen
Ja, kannst du. Such mal hier im Forum, da gibts dutzende Beispiele dazu.
Mfg |
Re: Verknüpfungen
ja kalr kannst du nen kompletten pfad angeben, aber bei meinem bsp hab ich noch was vergessen:
Delphi-Quellcode:
Shellexecute(hwnd, 'open', PChar('c:\deinordner\DeinProgrammHierRein.exe'), nil, nil, SW_SHOWNORMAL);
//hwnd kannst du als nil (0) angeben |
Re: Verknüpfungen
Und wenn das zu startende Programm Parameter erwartet, das erste nil durch PChar(<Parameterstring>) ersetzen.
|
Re: Verknüpfungen
Okey soweit hab ich es verstanden. Nun noch eine Frage. Diese Verknüpfung ist ja relativ statisch. Das heißt wenn ich das Programm verschiebe müssst ich alle Vreknüpfenen neu definieren. Da ich alle Verknüpfungen untereinander in einem Großen Ordenr habe müsste dies ja auch so gehn dasd diese Verknüpfungen nach außerhalb dynamisch erscheinen. Das heißt das der Bezugspunkt nicht der Arbeitsplatz ist sondern der Ordenr.
Um mal ein Beispiel zu nennen. Mein Ordner heißt "a" ich hab in einem unterordner "a/b" ein programm dies will ich mit einem Link zu einem Programm im Ordener "a" Verknüpfen und mit einem anderen programm im Ordenr "a/c". Aber wenn ich den Ordner a verschiebe sollen die velinkungen trotzdem aktuell bleiben. Geht dies zu verwirklichen??? |
Re: Verknüpfungen
also leicht ist das nicht zu bewerkstelligen, müsste aber gehen wenn du die dateioperation überwachst, also alles was so im dateisystem verändert wird...
ne andere möglichkeit währe, die pfade (links) zu den verschiedenen dateien in einer seperaten hauptdatei auszulagern... vllt unter benutzung von einer ini/txt datei!!! das währe aber gleub ich die sinvollere lösung.. |
Re: Verknüpfungen
So ich hab volgenden code angegeben
Delphi-Quellcode:
und es kommt volgender error
procedure TForm1.FormCreate(Sender: TObject);
begin Shellexecute(hwnd, 'open', PChar('e:Programme/hamachie\hamachi.exe'), nil, nil, SW_SHOWNORMAL); end; [Error] Unit1.pas(28): Undeclared identifier: 'Shellexecute' [Error] Unit1.pas(28): '(' expected but ',' found Bitte helft mir |
Re: Verknüpfungen
Delphi-Quellcode:
uses ShellAPI; //wichtig!!
procedure TForm1.FormCreate(Sender: TObject); begin Shellexecute(Handle, 'open', PChar('e:\Programme\hamachie\hamachi.exe'), nil, nil, SW_SHOWNORMAL); //richtiges Trennzeichen verwenden end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:20 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