【问题标题】:How to restore drive mount after DeleteVolumeMountPoint?DeleteVolumeMountPoint 后如何恢复驱动器挂载?
【发布时间】:2014-03-30 21:31:29
【问题描述】:

在使用 DeleteVolumeMountPoint("E:\") (例如)为了删除 DOK 的安装点后,我想恢复它。 (使驱动器号再次可用)

我该怎么做?

【问题讨论】:

    标签: c++ windows hard-drive wdk


    【解决方案1】:

    查看 DeleteVolumeMountPoint 的 MSDN 文档说 SetVolumeMountPoint 可以完成任务。

    文档links to an example

    #define _WIN32_WINNT 0x0501
    
    #include <windows.h>
    #include <tchar.h>
    #include <stdio.h>
    
    #define BUFSIZE MAX_PATH 
    
    int _tmain( int argc, TCHAR *argv[] )
    {
       BOOL bFlag;
       TCHAR Buf[BUFSIZE];     // temporary buffer for volume name
    
       if( argc != 3 ) 
       {
          _tprintf( TEXT("Usage: %s <mount_point> <volume>\n"), argv[0] );
          _tprintf( TEXT("For example, \"%s c:\\mnt\\fdrive\\ f:\\\"\n"), argv[0]);
          return( -1 );
       }
    
      // We should do some error checking on the inputs. Make sure there 
      // are colons and backslashes in the right places, and so on 
    
       bFlag = GetVolumeNameForVolumeMountPoint(
                  argv[2], // input volume mount point or directory
                      Buf, // output volume name buffer
                  BUFSIZE  // size of volume name buffer
               );
    
       if (bFlag != TRUE) 
       {
          _tprintf( TEXT("Retrieving volume name for %s failed.\n"), argv[2] );
          return (-2);
       }
    
       _tprintf( TEXT("Volume name of %s is %s\n"), argv[2], Buf );
       bFlag = SetVolumeMountPoint(
                  argv[1], // mount point
                      Buf  // volume to be mounted
               );
    
       if (!bFlag)
         _tprintf (TEXT("Attempt to mount %s at %s failed.\n"), argv[2], argv[1]);
    
       return (bFlag);
    }
    

    【讨论】:

      【解决方案2】:

      如果只是以交互方式进行操作,您可以打开“卷管理器”,右键单击卷并分配驱动器号。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2013-07-16
        • 1970-01-01
        • 2011-12-27
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-08-10
        相关资源
        最近更新 更多