Правила для допустимого пути задокументированы в MSDN в статье Имена файлов, путей и пространств имен .Что является «действительным» в вашем случае, зависит от того, насколько строгим вы хотите быть.Windows NT технически поддерживает практически все, что касается пути, за исключением нескольких зарезервированных символов.
Тем не менее, подсистема Win32 NT немного менее прощаема и имеет несколько правил, которым вы должны следовать, такие как зарезервированные имена файлов CON, PRN, AUX, NUL, COM1, COM2, COM3, COM4, COM5, COM6, COM7, COM8, COM9, LPT1, LPT2, LPT3, LPT4, LPT5, LPT6, LPT7, LPT8 и LPT9и т. д.
В конце дня, хотя вы не должны проверять, является ли путь действительным.Просто попробуйте открыть или иным образом работать по пути, который вам дает пользователь, и если вы не можете открыть / оперировать тем, что он дает, покажите сообщение об ошибке.На самом деле это ничем не отличается от того, что пользователь вручает вам испорченный файл и просит вас сделать из него заголовки или хвосты.