I just stumbled upon an undocumented behavior of the GetFiles methods in System.IO.Directory.
Whenever the searchPattern parameter passed to the method contains a reserved Windows device name, such as "nul.*" or "aux.bmp", the method returns an array containing the name of a nonexisting file, like C:\Users\ft1\nul or D:\aux, etc.
I wonder if those device names have a special meaning it that context, like "." or "..", or if this is just a sort of bug. Anyway, that still seems pretty weird. For example, this code snippet in C#:
string[] fileNames = Directory.GetFiles(@"C:\D:\..\..\...\", "con.txt");
foreach (string fileName in fileNames) Console.WriteLine(fileName);
prints
C:\D:\..\..\...\con
Any clues?