怎样有自己写的程序打开文件并读取?

KingI 2005-05-19 07:38:22
我写了一个类似记事本的程序,保存文件后怎样双击保存的文件,然后调用这个程序打开读取里面的内容呢?
...全文
75 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
cxj1976 2005-05-20
  • 打赏
  • 举报
回复
var
lphKey: HKEY;
sKeyName: string;
sKeyValue: string;
begin
sKeyName := 'myfile';
sKeyValue := '我的文档';
RegCreateKey(HKEY_CLASSES_ROOT, pchar(sKeyName), lphKey);
RegSetValue(lphKey, '', REG_SZ, pchar(sKeyValue), 0);
sKeyName := '.xyz';
sKeyValue := 'myfile';
RegCreateKey(HKEY_CLASSES_ROOT, pchar(sKeyName), lphKey);
RegSetValue(lphKey, '', REG_SZ, pchar(sKeyValue), 0);
sKeyName := 'myfile';
sKeyValue := 'c:\Windows\NotePad.exe %1';
RegCreateKey(HKEY_CLASSES_ROOT, pchar(sKeyName), lphKey);
RegSetValue(lphKey, 'shell\open\command', REG_SZ, pchar(sKeyValue), MAX_PATH);
end;
zhp97 2005-05-20
  • 打赏
  • 举报
回复
同意楼上的
Frank.WU 2005-05-20
  • 打赏
  • 举报
回复
需要兩個:
1.注冊文件關聯;//這一步是為了讓你在雙擊是得到文件的路徑參數;
2.將路徑參數傳遞給你自己寫的程序;
//這裡你可以在窗體的Create或者Show中判斷paramstr(1)這個參數,得到雙擊的文件名稱,打開之...
Dizovin 2005-05-19
  • 打赏
  • 举报
回复
写个注册表文件file.reg,加入系统注册表。如下
REGEDIT
HKEY_CLASSES_ROOT\.文件扩展名 = 文件类型名称
HKEY_CLASSES_ROOT\文件扩展名.Document\shell\open\command = 可执行文件名 %1
HKEY_CLASSES_ROOT\文件扩展名.Document\shell\open\ddeexec = [open("%1")]
HKEY_CLASSES_ROOT\文件扩展名.Document\shell\open\ddeexec\application = 可执行文件名缩写HKEY_CLASSES_ROOT\文件扩展名.Document = 文件类型名称

5,392

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧