如何加强DLL的应该如注册表引用自定义的DLL内的图标
原现在的帖子如下:
http://topic.csdn.net/u/20110609/11/e04405b3-e428-4cb2-bd30-ab443388953d.html
记事本的图标信息为:%SystemRoot%\system32\shell32.dll,-152
也成功加载了自定义的DLL图标格式,现在出现一个新问题:
我在[注册表]怎么没找到office的相关参数及版本
Office2000  Office2007  Office2010对应的图标,这是为何呀

解决方案 »

  1.   

    txt 格式在注册表中:txtfile
    为什么:
    office的相关参数及版本
    Office2000 Office2007 Office2010没有这些参数..........
      

  2.   

    office可能是用windwos外壳扩展实现的文件关联吧~
      

  3.   

    不是,图标中关联的是方式是:
    C:\WINDOWS\Installer\{90120000-0011-0000-0000-0000000FF1CE}\wordicon.exe
      

  4.   

    这个要看windows 系统方面的 设置的
      

  5.   

    我们能不能加载自定义的DLL,并初始化呀,并且不影响
    源程序的运行呀????????
      

  6.   

    这样不行呀,你得留下向句技巧的高招给我呀>>>>>>>>>>>>>>
      

  7.   

    用的是WPS吗,一个道理的呀.......
      

  8.   


    wps对文件图标的定义和普通方式相同,比如.doc文件:HKEY_CLASSES_ROOT\WPS.Doc.6\DefaultIcon
    D:\Kingsoft\WPS Office Personal\office6\wps.exe,3
      

  9.   

    office图标中关联的是方式是:
    C:\WINDOWS\Installer\{90120000-0011-0000-0000-0000000FF1CE}\wordicon.exe
      

  10.   

    我想修改成我自己编写的DLL文件,但是不确定客户电脑上安装OFFICE的版本
    版本如: 
    office2000
    office2003
    office2007
    office2010
    我不确定安装的路径及版本所有参数表
      

  11.   

    可以读取HKEY_CLASSES_ROOT\.doc的默认值,得到对.doc扩展名进行定义的注册表项,比如:WPS.Doc.6
    然后再根据读取到的值设置HKEY_CLASSES_ROOT\上面读取到的值\DefaultIcon的默认值为你写的dll的地址,就能改好图标了
      

  12.   

    读取HKEY_CLASSES_ROOT\.doc的默认值
    [HKEY_CLASSES_ROOT\.doc]
    "Content Type"="application/msword"
    @="Word.Document.8"[HKEY_CLASSES_ROOT\.doc\PersistentHandler]
    @="{98DE59A0-D175-11CD-A7BD-00006B827D94}"[HKEY_CLASSES_ROOT\.doc\shellex][HKEY_CLASSES_ROOT\.doc\shellex\{8895b1c6-b41f-4c1c-a562-0d564250836f}]
    @="{84F66100-FF7C-4fb4-B0C0-02CD7FB668FE}"[HKEY_CLASSES_ROOT\.doc\Word.Document.8][HKEY_CLASSES_ROOT\.doc\Word.Document.8\ShellNew]
    我修改那个呀?????????????????
      

  13.   

    都不是,而是根据 HKEY_CLASSES_ROOT\.doc 的默认值得到 Word.Document.8然后去修改:HKEY_CLASSES_ROOT\Word.Document.8\DefaultIcon 的默认值
      

  14.   

    Word.Document.8
    这个是什么意思
    难道是
    版本如:  
    office2000
    office2003
    office2007
    office2010
    的标识吗
      

  15.   

    你不用管它版本是多少,Word.Document.8是通过HKEY_CLASSES_ROOT\.doc的默认值得到的,也可能是Word.Document.9、Word.Document.10,是多少都无所谓只要先读取注册表中HKEY_CLASSES_ROOT\.doc的默认值,然后再根据读取的值,去读取或修改注册表中的
    HKEY_CLASSES_ROOT\前面读取的值(比如是Word.Document.8)\DefaultIcon
      

  16.   

    我在[注册表]中找到两个呀
    Word.Document.8  
    Word.Document.12  
    难道找到一个就修改一个吗
      

  17.   

    找到几个也不用理,只有一个有效,就是HKEY_CLASSES_ROOT\.doc的默认值那个
      

  18.   

    找到就是这个
    C:\WINDOWS\Installer\{90120000-0011-0000-0000-0000000FF1CE}\wordicon.exe,13
    {90120000-0011-0000-0000-0000000FF1CE}
    这个是固定的,还是“动态”的呀
      

  19.   

    我的意思是这个C:\WINDOWS\Installer\{90120000-0011-0000-0000-0000000FF1CE}\wordicon.exe
    我如何在任何OFFICE的都在这个路径或者文件名码
      

  20.   

    不清楚,很多年不装office了,另外,不必管是不是,不论它怎么变,读取注册表的值就行了
      

  21.   

    问题已解决,但但是必须重启Explorer.exe进程或者重启才有效