Einzelnen Beitrag anzeigen

kingflo

Registriert seit: 21. Jun 2004
Ort: Hamburg
502 Beiträge
 
Delphi 7 Professional
 
#1

Datein mit meinem Programm öffnen

  Alt 7. Jan 2005, 12:19
Hallo ich habe schon gesucht aber nichts gefunden, wie kann ich es anstellen, dass ich z.b *.mp3 Datein mit meinem Programm öffne?

ich habe es so versucht

Delphi-Quellcode:
function InstallExt(Extension, ExtDescription, FileDescription,
                    OpenWith, ParamString: String; IconIndex: Integer): Boolean;
var
  Reg: TRegistry;
begin
  Reg := TRegistry.Create;
  try
    with Reg do
     begin
      RootKey := HKEY_CLASSES_ROOT;
      OpenKey(Extension, True);
      WriteString('', ExtDescription);
      OpenKey('\' + ExtDescription, True);
      WriteString('', FileDescription);
      OpenKey('DefaultIcon', True);
      WriteString('', OpenWith + ','+IntToStr(IconIndex));
      OpenKey('\' + ExtDescription + '\Shell\Open\Command', True);
      WriteString('', '"' + OpenWith + '" "' + ParamString + '"');
     end;
   Result := True;
  except
   Result := False;
  end;
  Reg.Free;
end;

function UnInstallExt(Extension, ExtDescription: String): Boolean;
var
  Reg: TRegistry;
begin
  Reg := TRegistry.Create;
  try
    with Reg do
     begin
      RootKey := HKEY_CLASSES_ROOT;
      DeleteKey(Extension);
      DeleteKey('\' + ExtDescription);
     end;
   Result := True;
  except
   Result := False;
  end;
  Reg.Free;
end;

...

 InstallExt('.mp3', 'MP3 Datei', 'Player', Application.ExeName, '%1',0);
 UnInstallExt('.mp3', 'MP3 Datei');
Allerdings geht es so nicht mit dieser Methode kann ich nur Datein assoziieren, die es noch nicht gibt z.B
Delphi-Quellcode:
 InstallExt('.xyz', 'xyz Datei', 'Player', Application.ExeName, '%1',0);
 UnInstallExt('.xyz', 'xyz Datei');
Weiß da zufällig jemand ne bessere möglichkeit??

[edit=Christian Seehase]Code-Tags durch Delphi-Tags ersetzt. Mfg, Christian Seehase[/edit]
[edit=Christian Seehase] Mfg, Christian Seehase[/edit]
Florian Gilde
  Mit Zitat antworten Zitat