Как создать точку соединения с помощью WinApi? - PullRequest
7 голосов
/ 01 сентября 2010

Существует функция CreateHardLink для создания жестких ссылок. (Начиная с Win2000)
И есть функция CreateSymbolicLink с момента выпуска Vista.

Но почему нет CreateJunction?

Как mklink создает соединение?
И как мне писать коды для соединения в моем приложении?

Ответы [ 2 ]

6 голосов
/ 01 сентября 2010

Это точки повторного анализа, поэтому FSCTL_SET_REPARSE_POINT - это магический FSCTL. Вот пример, никогда не пробовал, но кажется правильным:

http://www.flexhex.com/docs/articles/hard-links.phtml

-Скотт

3 голосов
/ 21 апреля 2012

В настоящее время нет встроенной единой функции для создания соединений, как для символических или жестких ссылок.Как сказал snoone, это точка повторной обработки, поэтому вы должны использовать DeviceIoControl для взаимодействия с ним.Если я правильно помню, источник, на который он ссылался, - это тот же источник, с которым я играл, когда пытался это выяснить, и я не думаю, что столкнулся с какими-либо проблемами.

В качестве альтернативы, если выВы не против использования внешней библиотеки в своем приложении, и вам понадобится функциональность для чтения / проверки / удаления соединений, возможно, вы захотите взглянуть на reparselib , который является довольно приличной библиотекой, объединяющей соединения, символические ссылки, точки монтирования и пользовательские точки повторной обработки.

...