I think it would just be a matter of blacklisting filenames (not paths) containing things that qualify as a "path root" or a path "separator".

Hm The problem is that Windows has two separate OS APIs for dealing with ANSI and Wide file & paths, but Perl only uses the ANSI versions internally, so trying to even open a file who's name that contains Unicode characters fails. Often silently. Even the simplest things -- like globing a directory -- won't see files that the user can see are there, because glob templates that contain Unicide characters won't match the ANSIfied short pathnames that the ANSI APIs return for files containing unicode characters.

The user can see a file (using explorer or dir), but when he uses your module to attempt to manipulate that file, your module can't even see it. He's gonna blame your module.

One possible route -- and maybe an eye-opener for the task you are thinking of taking on -- would be to look at the Win32::Unicode::* set of modules.

Good luck.

With the rise and rise of 'Social' network sites: 'Computers are making people easier to use everyday'

Examine what is said, not who speaks -- Silence betokens consent -- Love the truth but pardon error.

"Science is about questioning the status quo. Questioning authority".

In the absence of evidence, opinion is indistinguishable from prejudice.