Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi eintrag zum kontextmenü hinzufügen und dabei parameter überg (https://www.delphipraxis.net/90130-eintrag-zum-kontextmenue-hinzufuegen-und-dabei-parameter-ueberg.html)

superbobbes 12. Apr 2007 09:03


eintrag zum kontextmenü hinzufügen und dabei parameter überg
 
morgen,

ich habe ne frage. und zwar mein ausbilder bräuchte eine lösung wie man es schafft einen eintrag zum kontextmenü hinzuzufügen der bei allen arten von dateien sichtbar is. wenn ich z.b. jetzt bei einem pdf dokument den eintrag drücke soll ein programm aufgerufen werden und als parameter soll der speicherpfad von der datei übergeben werden.

hoffe ist verständlich :). wäre über ne komplette lösung sehr erfreut.


mfg
superbobbes


ps: danke schonmal im vorraus.

marabu 12. Apr 2007 09:18

Re: eintrag zum kontextmenü hinzufügen und dabei parameter ü
 
Herzlich willkommen in der Delphi-PRAXiS, superbobbes.

Ich würde eine Verknüpfung für das gewünschte Programm im Ordner %USERPROFILE%\SendTo einrichten.

Freundliche Grüße vom marabu

RavenIV 12. Apr 2007 09:22

Re: eintrag zum kontextmenü hinzufügen und dabei parameter ü
 
Eine komplette Lösung wirst Du hier nicht bekommen. Du musst schon selbst Einsatz zeigen.
Aber Du bekommst sicher Denkanstösse.

Du kannst aber auch die Suchfunktion benutzen mit geeigneten Suchbegriffen.
Beide Themen wurden schon mehrfach diskutiert...

himitsu 12. Apr 2007 09:24

Re: eintrag zum kontextmenü hinzufügen und dabei parameter ü
 
Es gibt hier viele Codes zum registrieren von Dateiendungen und den dazugehörigen Verknüpfen mit einer Anwendung.

aktuell:
http://www.delphipraxis.net/internal...t.php?t=107654

wenn du da als Dateieindung nicht '.xyz', sondern '*' nimmst, dann gilt das für alles (Dateien/Verzeichnisse).
'Directory' gilt für alle Verzeichnisse, 'file' gilt (glaub ich) für alle Dateien.


Der "einzige" Unterschied zwischen diesen "Master"-Verweisen und denen für eine bestimmte Datei-Erweiterung:
bezieh dich nur auf die "shell" verzeichnisse (z.B. "\*\shell\...") und laß alles mit Linknamen/-Beschreibung, DefaultIcon und Co. weg.


PS: als Tipp: schau mal in meinen FileSplitter rein

superbobbes 12. Apr 2007 10:31

Re: eintrag zum kontextmenü hinzufügen und dabei parameter ü
 
das eintragen soll ja jetz net das problem sein.

die frage is wie ich den pfad an das programm übergeben kann!!

marabu 12. Apr 2007 10:39

Re: eintrag zum kontextmenü hinzufügen und dabei parameter ü
 
Nach Einrichtung des Links erhält dein Programm in ParamStr(1) den Namen der Datei und mit ExtractFilePath(ParamStr(1)) erhältst du den Pfad der Datei.

marabu

himitsu 12. Apr 2007 10:46

Re: eintrag zum kontextmenü hinzufügen und dabei parameter ü
 
ist zwar auch in den angesprochenen Beiträgen erwähnt, aber....


Code:
>HKEY_CLASSES_ROOT\*\shell\EinName
[default] = 'Name im KontextMenü'

>HKEY_CLASSES_ROOT\*\shell\EinName\command
[default] = '"C:\Programme\DasVerzeichnis\ProgrammName.exe" "%1"'
%1 ist der Name der ausgewählten Datei
und wird als Parameter übergeben

hierbei wäre dann also der ausgewählte Dateiname in ParamStr(1)


du kannst natürlich auch noch weiderte Parameter übergeben
z.B.
Code:
>HKEY_CLASSES_ROOT\*\shell\EinName\command
[default] = '"C:\Programme\DasVerzeichnis\ProgrammName.exe" -c "%1" -x'
ParamStr(1) = '-c'
ParamStr(2) = der Dateiname
ParamStr(3) = '-x'

superbobbes 12. Apr 2007 13:04

Re: eintrag zum kontextmenü hinzufügen und dabei parameter ü
 
kennt jemand ne seite wo der ich den fertigen code zum eintrage in die regestry bekomme. hab jetzt die aufgabe ein programm zu schreiben was das automatisch einträgt und den pfad zeigt wenn ich bei einer datei den eintrag benutze.

ich habe keine ahnung von delphi und habs noch nie programmiert :(

superbobbes 20. Apr 2007 10:23

Re: eintrag zum kontextmenü hinzufügen und dabei parameter ü
 
wie kann ich das denn in delphi auslesen.

ich hab keine ahnung davon ;).

mfg
superbobbes

himitsu 20. Apr 2007 12:08

Re: eintrag zum kontextmenü hinzufügen und dabei parameter ü
 
also dafür wäre die Suchfunktion hier ganz gut zu nutzen ... es gibt unmassen an Kodes hier im Forum, welche dieses machen und einer davon wurde weiter oben auch schon verlinkt.


Alle Zeitangaben in WEZ +1. Es ist jetzt 17:30 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