petsatan
驱动牛犊
驱动牛犊
  • 注册日期2007-09-03
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分12分
  • 威望133点
  • 贡献值0点
  • 好评度17点
  • 原创分0分
  • 专家分0分
阅读:1746回复:1

怎么才能映射服务器的磁盘到本地呢?

楼主#
更多 发布于:2011-05-22 22:42
  今天下了filedisk研究了下,其主要功能是创建了磁盘(和驱动中设备对应 DefineDosDevice),把对磁盘的操作定位到了对文件的操作上。

    我的想法:
    设:
    a. 驱动的设备名为: \Device\RemoteDisk
    b. 服务器需映射的磁盘为 \\Server\H:
    c. 映射到本地磁盘Z:
    d. 控制码 IOCTL_DISK_INFORMATION  结构名 DISKINFORMATION(含服务器的路径等信息)

   App应用层:
   1  DefineDosDevice(DDD_RAW_TARGET_PATH, "Z:", "\Device\RemoteDisk");
   2  hDevice = CreateFile ("Z:", ...);
       DeviceIoControl(
                                hDevice,
                                IOCTL_DISK_INFORMATION ,
                                diskInformation, ...
                                );
      
   Drv驱动层:
   1  创建设备\Device\RemoteDisk
   2  IOCTL_DISK_INFORMATION处理中,需要获取哪些信息来初始化虚拟磁盘呢???
   3  把所有操作定位到远程服务器的磁盘上? filedisk中是通过文件的句柄?这里怎么搞呢?
  
znsoft
管理员
管理员
  • 注册日期2001-03-23
  • 最后登录2023-10-25
  • 粉丝300
  • 关注6
  • 积分910分
  • 威望14796点
  • 贡献值7点
  • 好评度2410点
  • 原创分5分
  • 专家分100分
  • 社区居民
  • 最爱沙发
  • 社区明星
沙发#
发布于:2011-05-23 18:21
是不是设备名不对? \\lanmanredirector\xxx
之类的,用真实的设备路径
http://www.zndev.com 免费源码交换网 ----------------------------- 软件创造价值,驱动提供力量! 淡泊以明志,宁静以致远。 ---------------------------------- 勤用搜索,多查资料,先搜再问。
游客

返回顶部