我按照《Delphi深度探索-用外殼介面對系統進行管理》中的步骤安装Microsoft Shell Controls And Automation后,为什么没一有组件,但书上说有TShellFolderItem,TShellLinkObject,TShellFolderView,TShell,TSearchCommand组件?这是为什么?

解决方案 »

  1.   

    是是,我也发现这样
    你从Import library lib 里可以导入
      

  2.   

    安装Microsoft shell controls and automation 类型库
    在Delphi中选Project Import Type Library命令,选择Microsoft shell controls and automation 类型库,
    我成功安装了Microsoft shell controls and automation 类型库,不过在此过程中碰到几个小问题(本人用的是
    DELPHI6+WIN2000)就是安装后,编译时(Compile)出现4-6处编译错误:“只读属性不能被赋值”,比如下面就是一处错误:
    //procedure TShellLinkObjectProperties.Set_Hotkey(piHK: SYSINT);
    //begin
    //  DefaultInterface.Hotkey := piHK;就是这条语句出错
    //end;
    解决办法:用鼠标右击出错处的HOTKEY,选弹出菜单的FIND DECLARATION,你会看到这条语句:
       property Hotkey: SYSINT read Get_Hotkey;原来是因为HOTKEY属性只定义了读方法,没有定义
    写方法,所以编译出错,知道出错原因,改就容易了,把它改成:
     property Hotkey: SYSINT read Get_Hotkey write Set_Hotkey,其中Set_Hotkey出错位置的过程名,
    其它几处错误就按上面的办法修改,成功后,ACTIVEX控件板就多了好几个组件,把TShell拖到桌面
      

  3.   

    谢谢各位支持,是不是只有Delphi6才能安装?