in reply to rename to UTF8 filename
Since I am reading the names from Excel, so I assumed the source(text of name) is sure UTF-8
Well, the docs don't agree with your assumption, see http://search.cpan.org/perldoc/Win32::OLE#CP, you need to use CP_UTF8
I had a little study. And I tried Win32API::File::MoveFile() and Win32::Unicode::File::moveW() but without success. I had also tried to create a batch file and run it in cmd, still not success.
And the error message was? Maybe you need to post your code :)