Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Для новичков > Ассоциация с файлами


Автор: romanzi 17.4.2011, 10:23
Короче говоря, код действует. Ассоциации заносятся в реестр, но не работают. 

Код
procedure Associate;
var s:string;
begin
  Reg:=TRegistry.Create; // создаем
  Reg.RootKey := HKEY_CLASSES_ROOT; // указываем корневую ветку

  Reg.OpenKey('.dcu\OpenWithList\', true);
  Reg.WriteString('TestApplication.dcu', '');

  Reg.OpenKey('\TestApplication.dcu\DefaultIcon\', true);
  s:=Application.ExeName+',0';
  Reg.WriteString('', s);

  Reg.OpenKey('\TestApplication.dcu\Shell\Open\', true);
  Reg.WriteString('', 'Открыть в TestApplication');

  Reg.OpenKey('command\', true);
  s:='"'+Application.ExeName+'" "%1"';
  Reg.WriteString('', s);

  Reg.Free;

  SHChangeNotify(SHCNE_ASSOCCHANGED, SHCNF_IDLIST, nil, nil);
end;


Почему?

Автор: MaxGr 20.4.2011, 10:20
8-ю строку поправь 

с  Reg.WriteString('TestApplication.dcu', '');
на  Reg.WriteString('','TestApplication.dcu');

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)