Any problems arising from the use of spaces so far? If not, then it's a good assumption that M$ just maybe was thinking about something else at the time. I wouldn't put any restrictions in my code, only let the restrictions be the stricter of the code itself or the underlying API. As in your case the API seems to be doing fine with it, I wouldn't worry. Just like detecting invalid characters in a filename is the OS's job, and all you need to do is pass ASCIIZ strings to the functions. It will eliminate many redundant checks in your code, and possibly make it forward-compatible. An excellent example is the filename one above; back in the days of DOS I had already understood that the file paths for the (then) new filefunctions were passed as ASCIIZ strings, and did not make any assumptions about their content. Those programs back then that I wrote now work for long filenames with spaces and whatever else characters there are (as long as not null - because that was the delimiter), all because I made sure to not treat filenames as being in a fixed format (which is up to the OS to decide, after all.) Same goes for your computer names. If your APIs use ASCIIZ strings, pass them what the user gives and don't care about what's in them.