本人想注册一个类型的文件想与自己的程序关联,使用了很常用的一个过程,如下procedure RegisterFileType(ft,key,desc,icon,prg:string);
注册后可以产生关联,但本人的程序中有一个文件列表,我想把选中的文件不但能运行,而且自支要加入到文件列表,不知怎么实现!!
   望高手指点,这里先谢了!!

解决方案 »

  1.   

    利用修改系统的方式!
    如下:
    ---- 需要解决两个问题:①、如何把用户菜单项加入系统菜单,②、如何才能响应这一菜单项。 ---- 要解决第一个问题,就需要获取系统菜单的句柄,这一点可用 API 函数getsystemmenu() 来获取(getmenu() 只能获取用户菜单句柄),有了系统菜单句柄,便可以用 API 函appendmenu() 向系统菜单中加入用户菜单选项了。 ---- 要解决第二个问题,需要重载 WM_SYSCOMMAND 或WM_MENUSELECT 消息。我们知道,当用户从菜单中选一项时,系统便会发出 WM_COMMMAND 消息,而对于系统菜单,则会发出 WM_SYSCOMMAND 消息,重载这个消息,并判断选中菜单的 ID 值是否为用户设定值便可以了。Delphi 为我们提供了这方面的机制,使我们能方便的实现这一功能。当然,为实现这一功能我们还可以利用子类或为系统加消息钩子的方法来解决。
    以上是我找的一个方法,具体实现,自己可以写代码,如还有不懂,回复告之!