2008-08-15 9 views
1

Предположим, что у меня есть привод, такой как C: \, и я хочу узнать, является ли он общим и что такое имя общего ресурса (например, C $).Windows/C++: Как определить имя общего ресурса, связанное с общим диском?

Чтобы узнать, есть ли общий доступ, я могу использовать NetShareCheck.

Как мне сопоставить диск с его общим именем? Я думал, что это сделает NetShareGetInfo, но похоже, что в качестве ввода вместо имени локального диска берется имя общего ресурса, а не имя локального диска.

ответ

3

Если все остальное не удается, вы всегда можете использовать NetShareEnum и вызывать NetShareGetInfo для каждого.

0

Использование;

SHGetFileInfo with SHGFI_ATTRIBUTES 

после возврата проверьте флаг dwAttributes для SFGAO_SHARE.

Я не уверен, как найти фактический путь tho.