MkLink
Функция FSF.MkLink создает жесткие и символические ссылки, связи каталогов, а
также монтирует локальные диски на файловую систему. Функция работает
только под Windows NT 4 и выше.
int WINAPI MkLink(
const char *Src,
const char *Dest,
DWORD Flags
);
Параметры
Src
Имя файлового объекта, на который создаётся ссылка.
Dest
Имя создаваемой ссылки.
Flags
Тип операции. Одно из (перечисление
MKLINKOP):
В дополнении к вышеуказанным операциям можно указать флаг:
Возвращаемое значение
1 - ссылка создана.
0 - ошибка при создании ссылки:
- Для жестких ссылок:
- Src или Dest находятся на разных разделах;
- раздел не NTFS;
- раздел не локальный;
- Src не существует или не является файлом.
- Dest уже существует;
- Для связей:
- Src или Dest находятся не на локальных разделах;
- раздел не NTFS 5.0;
- Src не существует или не является каталогом;
- Dest существует, но не пустой каталог.
- Для монтирования дисков:
- Src или Dest находятся не на локальных разделах;
- раздел для Dest не NTFS 5.0;
- Src не существует или диск является не локальным;
- Dest существует, но не пустой каталог.
Примечание
- Ссылки создаются по следующим правилам:
- жесткие ссылки (hardlink) создаются только для файлов в пределах
текущего NTFS-раздела (NT4/Win2K/NTFS);
- связи (junction) создаются только для каталогов в
пределах локальных NTFS-разделов (Win2K/NTFS 5.0);
- монтирование локальных дисков на файловую систему только на NTFS-раздел
(Win2K/NTFS 5.0)
- Если в качестве Src было передано значение, например "C:", то вместо
связи каталогов будет монтирован диск.
- Если для монтирования диска Dest оканчивается слешем, то в Dest будет
создан каталог "disk_N" (где N - буква диска).
- В Windows 2000 напрямую делать связи на папки CD-ROM нельзя, но можно это
ограничение обойти, смонтировав CD-ROM диск на папку NTFS-раздела (т.н. Mount Points).
И уже из этой папки сделать нужную связь.
Пример
Смотрите также: