Forum: Programmieren allgemein
by FriFra,
2. Feb 2004
Das liegt daran, dass Windows eine solche Änderung "mitgeteilt" werden muss:
SHChangeNotify(SHCNE_ASSOCCHANGED, SHCNF_IDLIST, nil, nil);
Normalerweise sollte aber auch ein Neustart reichen, damit auch manuelle Änderungen wirksam werden.
Forum: Programmieren allgemein
by FriFra,
2. Feb 2004
:oops: Ups... da hab ich blödsinn geschrieben. Es muss ein Wert "NeverShowExt" eingefügt werden ;)
Ich verwende dafür immer folgende procedure:
procedure RegisterFileType(Extension: string; exepfad,
description: string; IconIndex: integer);
var
reg: TRegistry;
Created: boolean;
MyBin: array of byte;
begin
Forum: Programmieren allgemein
by FriFra,
2. Feb 2004
1. Nein, man sieht Die Endung nicht ;) (unter Win98, 98 SE, ME, 2000, XP, 2003 getestet)
2. Ja, es erscheint gar keine keine Endung. Die einzige Möglichkeit die Endung zu sehen ist wenn man auf die Datei über einen Open- bzw. SaveDialog zugreift und wenn deren Filter entspr. eingestellt ist sieht man den vollständigen Namen im Auswahlfenster, sonst aber nicht...
Du kannst Deine Datei dann...
Forum: Programmieren allgemein
by FriFra,
2. Feb 2004
Man kann übrigens für jede einzelne Extension auch einstellen, dass diese NICHT angezeigt wird, egal was sonst auf dem Rechner eingestellt ist ;) (Dafür setzt man den Wert "EditFlags" für das entspr. Format auf 00 00 01 00) 8)
Ich verwende seit Jahren "unsichtbare" lange Extensions um meinen Konfigurationsdateien eigene Icons zuweisen zu können. Wenn man diese langen Extensions sehen würde,...