请问高手:用VB6.0能做出可以加载ISO包的程序吗?不知有没有现成的代码或文章?高手们帮忙提供下资料。多谢!
我的意思是:加载后也可以在资源管理器中出现一个虚拟驱动器。这样。各位多帮忙。

解决方案 »

  1.   

    这需要涉及到 Windows 驱动程序的开发,而通常的驱动程序都是以 C 语言为主进行开发的,
    如果一定要用到 VB 来开发,可以通过Windows DDK + WinDriver 来开发,里面有VB开发
    驱动的范例,不过进到了驱动开发上,即使用的是Basic,其实和C已经没多大区别了,基本上
    用的都是宏命令、结构体、NTAPI之类的东西,和普通的Windows应用程序已经不是一个概念
    的东西了,有时候,还不如直接用DDK的 Build 或 VC 环境来得简单,因为这方面的资料远
    比VB的多。而且兼容性也很好。
    如果要参考驱动开发的程序,你可以搜索一下 FileDisk 这个源代码,这是很早以前就在网上
    流行的一个DDK工程的NT驱动程序源代码,还包含应用程序调用和设置驱动的代码。是一个将
    文件虚拟成磁盘的的工具。有很不错的参考借鉴价值。
      

  2.   

    我唯一能想到的就是:shell一个"加载ISO后也可以在资源管理器中出现一个虚拟驱动器"的程序.
      

  3.   

    如果可能的话,我想找到用VB6做的可加载ISO包的程序代码。不知是否能帮我找到。
      

  4.   

    ISO是用于光盘映像的数据文件,这个数据里包含的光盘的文件系统,与磁盘系统不是一样的,
    比如光盘的的分区格式有CDFS,而文件系统的是FAT32或NTFS,这样硬操作需要在驱动层做
    一道过滤驱动来接分CDFS和磁盘分区间的数据读写交换,比直接做 FileDisk 难度更大。
    而且也没发现有人做这类过滤驱动的。如果你自己写估计就有了。
      

  5.   

    通常驱动程序分三类:
    1、总线驱动
    2、过滤驱动
    3、应用驱动
    而这几种驱动中,还存在两种模式
    1、NT驱动
    2、WDM驱动无论哪种模式和分类的驱动,如果要开发,就必须了解计算机结构,
    操作系统工作模式和相关的系统驱动接口等知识。通常我们大部分
    的程序员开发的都是工作在 CPU Ring 3 层的应用程序,而驱动
    程序则是运行在 CPU 的 Ring 0 层,这种区别在于指令集的不同
    和优先级和安全级的不同。可以说,如果是搞驱动开发,基本上90%
    以上的应用程序开发经验都要改变,即使你的开发工具是C语言。也
    会感觉不是在Windows下搞开发一样。你如果你不想涉及驱动开发,这东西只有两种做法:
    1、找个现成的工具或接口来调用。
    2、直接放弃
      

  6.   

    看来我只有放弃了。谢谢supermanking老师的解答!比我想像的还难。哎,不做了。