Offline - это особый статус файла, который вы также можете установить для сетевых файлов, но вы должны установить его самостоятельно. Не каждый автономный файл автоматически помечается для автономного использования. Я думаю, что даже есть специальный значок наложения в проводнике для автономных файлов (черные часы?).
Я думаю, что с помощью PathIsNetworkPath()
вы можете проверить, что файл находится в сети.