<Return[S]><Top>

SetVolumeMountPoint

Declare Function Api_SetVolumeMountPoint& Lib "kernel32" Alias "SetVolumeMountPointA" (ByVal lpszVolumeMountPoint$, ByVal lpszVolumeName$)

Declare Function SetVolumeMountPoint Lib "kernel32" Alias "SetVolumeMountPointA" (ByVal lpszVolumeMountPoint As String, ByVal lpszVolumeName As String) As Long

指定したマウントポイントにボリュームをマウントする。

パラメータ
lpszVolumeMountPoint
    ボリュームがマウントされるマウントポイントを表す、文字列へのポインタを指定する。
lpszVolumeName
    マウントするボリュームを表す文字列へのポインタを指定する。この文字列は、"\\?\Volume{GUID}\" という書式の一意のボリューム名で

    ある。GUID は、ボリュームを識別する GUID を表す。\\?\ はパス解析を回避し、パスの一部として無視される。たとえば、

    "\\?\C:\myworld\private" は "C:\myworld\private" とみなされる。

戻り値
    関数が成功すると、0 以外の値が返る。
    関数が失敗すると、0 が返る。 拡張エラー情報を取得するには、GetLastError 関数を使う。

解説
    すでにボリュームがマウントされているマウントポイントにボリュームをマウントしようとしてもエラーにはならない。この場合、システムは通知を

    行わずに以前のボリュームをアンマウントしてから、新しいボリュームをマウントする。
    ファイルまたはサブディレクトリを持つディレクトリ上のボリュームをマウントしようとするとエラーが発生する。このエラーは、システムディレクトリ

    や隠しディレクトリに対して、さらに、システムファイルや隠しファイルに対しても発生する。