Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Explorer->Kontextmenü->Neu (https://www.delphipraxis.net/179505-explorer-kontextmenue-neu.html)

Razor03 11. Mär 2014 15:13

Explorer->Kontextmenü->Neu
 
Hallo,

ich habe ein Problem bei dem ich nicht weiterkomme und hoffe ihr könnt mir weiterhelfen.

In meiner Anwendung habe ich ein Kontextmenü um neue Dateien zu erstellen. Dies ist eigentlich analog zu dem Kontextmenü im Explorer->Kontextmenü->Neu.

Dabei nutze ich die Komponente VirtualShellTools -> VirtualShellNewMenu. Diese geht die Registry durch und sucht in HKEY_CLASSES_ROOT nach Einträgen mit "ShellNew", ermittelt die Dateibezeichnungen und fügt diese hinzu.

Mein Problem ist nun, dass diese in meinem Kontextmenü fast durchgängig englisch sind. Im Explorer aber deutsch.

Nun ist es so, dass es in der Registry ebenfalls englisch steht. z.B. Bitmap Image oder Text Document.
Im Explorer steht richtigerweise Bitmapbild bzw. Textdokument.

Übersetzt der Explorer das intern? Kann man direkt auf das Kontextmenü->Neu vom Explorer zugreifen bzw. das anzeigen?
Ich will in dieses Menü nichts einfügen..nur auslesen und dem User die Möglichkeit geben ein entsprechendes File zu erzeugen.

himitsu 11. Mär 2014 15:30

AW: Explorer->Kontextmenü->Neu
 
Der Explorer übersetzt nichts automatisch.

Man kann aber statt direkt einen Text anzugeben, dem Explorer sagen, daß er den Text aus einer DLL-Resource laden soll.
Und diese Resourcen kann man lokalisieren. (mehrere Resourcen anlegen, mit den entsprechenden Sprachcodes oder halt mehrere Sprach-Resource-DLLs, je Sprache eine DLL)

Bei der neuen TextDatei steht in HKEY_CLASSES_ROOT\.txt\ShellNew\ItemName halt
Delphi-Quellcode:
@%SystemRoot%\system32\notepad.exe,-470
drin, also der ResourceString mit der ID 470, aus der angegebenen Datei (EXE oder DLL).

Razor03 11. Mär 2014 15:44

AW: Explorer->Kontextmenü->Neu
 
Ahhh...das macht schon mehr Sinn.

Top. Danke für die Erklärung.

Razor03 12. Mär 2014 13:47

AW: Explorer->Kontextmenü->Neu
 
Hab ich jetzt so implementiert, dass er sich die Ressourcenstrings holt, doch so 100%-ig ist das dennoch nicht. Die Bezeichnungen sind teils anders als im Explorer
z.b: Neue Bitmap im Explorer Bitmapbild

und "Contact File" ->im Explorer "Kontakt"

Also irgendwie haut das nicht so ganz hin. Noch eine Idee?


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