精华区 [关闭][返回]

当前位置:网易精华区>>讨论区精华>>编程开发>>● Delphi>>Windows API函数>>注册表>>Re: 如何用代码修改注册表实现文件关联?

主题:Re: 如何用代码修改注册表实现文件关联?
发信人: tiyi()
整理人: (2000-12-05 19:18:16), 站内信件
用TRegistry对象

操作起来和ini文件一样简单.

或者使用api 象下面一样(来自电子书库)
-------
问题:在我的程序中生成了一种自己的存盘文件,比如后缀是.me。现在我想把这

种文件和我的程序关联在一起,该怎么办?
Tips 16:关联是Windows的一个显著特性。比如安装了office后,后缀是.doc的

件会和word关联在一起。如果我们想自己创建关联关系,就必须从注册表入手。

面的代码会把后缀是.me的文件和Notepad关联在一起,请参阅:
procedure TForm1.Button1Click(Sender: TObject);
var
  lphKey: HKEY;
  sKeyName: string;
  sKeyValue: string;
begin
  sKeyName := 'ReadMeFile';
  sKeyValue := '说明文档';
  RegCreateKey(HKEY_CLASSES_ROOT, pchar(sKeyName), lphKey);
  RegSetValue(lphKey, '', REG_SZ, pchar(sKeyValue), 0);
  sKeyName := '.me';
  sKeyValue := 'ReadMeFile';
  RegCreateKey(HKEY_CLASSES_ROOT, pchar(sKeyName), lphKey);
  RegSetValue(lphKey, '', REG_SZ, pchar(sKeyValue), 0);
  sKeyName := 'ReadMeFile';
  sKeyValue := 'c:\Win95\NotePad.exe %1'; { 注意路径 }
  RegCreateKey(HKEY_CLASSES_ROOT, pchar(sKeyName), lphKey);
  RegSetValue(lphKey, 'shell\open\command', REG_SZ,
  pchar(sKeyValue), MAX_PATH);
end; 

--
一心不散乱,尽摄诸善法.

※ 来源:.月光软件站 http://www.moon-soft.com.[FROM: 202.96.101.254]

[关闭][返回]