如何能够实现“在IE中打开我自己的文件(*.abc),IE会调用我自己的ocx来打开该文件”

huangbeyond 2003-01-06 09:01:58
如何能够实现“在IE的地址栏中输入一个文件,该文件类型是我自己定义的文件类型(比如*.abc),IE会调用我自己的ocx(已经注册到系统中)来打开该文件”

提供思路的也给分!!
...全文
48 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
huangbeyond 2003-01-07
  • 打赏
  • 举报
回复
谢谢nbgyf(梅花峰)

我马上试,成功就马上结贴.........
nbgyf 2003-01-07
  • 打赏
  • 举报
回复
Good Luck
nbgyf 2003-01-07
  • 打赏
  • 举报
回复
步骤一:在在注册表的HKEY_CLASSES_ROOT下创建MyApp主键:
   ret = RegCreateKey(HKEY_CLASSES_ROOT, sKeyName, lphKey)

  语句中sKeyName已经预先赋值为"MyApp",而函数执行完后lphKey会返回新创建的主键的句柄,然后我们向句柄lphKey所指的位置写入键值sKeyValue(已经赋值为"Logfiles")
   RegSetValue(lphKey, "", REG_SZ, sKeyValue, 0)

  步骤二:在注册表的HKEY_CLASSES_ROOT下创建另外一个主键,键名为“.log”,键值为“MyApp”,创建的方法与第一步相同,只不过键名和键值不同。建立此键值的作用是,把“.log”文件关联到“MyApp”主键所规定的内容

  第三步:我们为“MyApp”设置了一个命令行
  实现的代码是:
   sKeyName = "MyApp"        '*名为MyApp的键名
   sKeyValue = "notepad.exe %1"   '*把键值设为"notepad.exe %1",%1指的是要打开的文件
      '如果该键已经创建,则RegCreateKey那么函数会打开现有的项
   RegCreateKey(HKEY_CLASSES_ROOT, sKeyName, lphKey)
      '下面一句的实际效果是在MyApp键下建立shell\open\command目录,并写入键值sKeyValue
      '说明:放在一个键的shell\open\command下的是打开某一类型文件的应用程序的名称
    = RegSetValue(lphKey, "shell\open\command", REG_SZ, sKeyValue, MAX_PATH)
huangbeyond 2003-01-07
  • 打赏
  • 举报
回复
有朋友曾经做过吗?
huangbeyond 2003-01-06
  • 打赏
  • 举报
回复
的确,"现在的ActiveX控件不都是能在WEB上发布",
可是,我却希望用户仅仅是在IE的地址栏里输入一个"http://hhh/test.abc",就能够使用我的OCX,来打开这个abc文件.

说简单些:
1.用户在IE的地址栏里输入一个"http://hhh/test.abc";
2.IE能够判断出"*.abc"这种文件类型已经注册,并且和某个指定.ocx文件关联;
3.IE启动 与*.abc相关联的.ocx文件(假如是my.ocx),将其加载到IE的当前进程空间,并把*.abc文件的URL传递给my.ocx;
4.my.ocx下载打开这个文件,并进行相应处理.

思路肯定是这样的,我观察过FLASH的.swf文件.现在,关键的是,

我不知道在注册表中添加哪些子键/键值,才能实现上面所描述的关联.

希望曾经做过的,或者清楚细节的朋友,能够告诉我!
谢谢了,分不够,我可以再加的.
zhenxizhou 2003-01-06
  • 打赏
  • 举报
回复
现在的ActiveX控件不都是能在WEB上发布的吗?
LookSail 2003-01-06
  • 打赏
  • 举报
回复
难,我只会把ocx嵌入在自己的对话框里面,在IE里面不知道
蒋晟 2003-01-06
  • 打赏
  • 举报
回复
activedocument
microyzy 2003-01-06
  • 打赏
  • 举报
回复
利用IE的插件功能好像可以实现
就像显示pdf文件一样,安装了插件以后,就可以在ie里显示pdf了
你可以找找插件方面的编程资料
microyzy 2003-01-06
  • 打赏
  • 举报
回复
没做过,有没见过,不过我觉得应该是使用COM自动化来实现
然后也许IE有这方面的接口
huangbeyond 2003-01-06
  • 打赏
  • 举报
回复
希望各位朋友能够帮帮我!!
提供的源码资源涵盖了安卓应用、小程序、Python应用和Java应用等多个领域,每个领域都包含了丰富的实例和项目。这些源码都是基于各自平台的最新技术和标准编写,确保了在对应环境下能够无缝运行。同时,源码配备了详细的注释和文档,帮助用户快速理解代码结构和实现逻辑。 适用人群: 这些源码资源特别适合大学生群体。无论你是计算机相关专业的学生,还是对其他领域编程感兴趣的学生,这些资源都能为你提供宝贵的学习和实践机。通过学习和运行这些源码,你可以掌握各平台开发的基础知识,提升编程能力和项目实战经验。 使用场景及目标: 在学习阶段,你可以利用这些源码资源进行课程实践、课外项目或毕业设计。通过分析和运行源码,你将深入了解各平台开发的技术细节和最佳实践,逐步培养起自己的项目开发和问题解决能力。此外,在求职或创业过程,具备跨平台开发能力的大学生将更具竞争力。 其他说明: 为了确保源码资源的可运行性和易用性,特别注意了以下几点:首先,每份源码都提供了详细的运行环境和依赖说明,确保用户能够轻松搭建起开发环境;其次,源码的注释和文档都非常完善,方便用户快速上手和理解代码;最后,我定期更新这些源码资源,以适应各平台技术的最新发展和市场需求。

16,472

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

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