文件和文件夹操作的奇怪有关问题

文件和文件夹操作的奇怪问题
程序如下代码
WinExec( "Cmd.exe   /C   md   创建文件夹的路径1 ",   SW_HIDE);
::CopyFile(文件名称1,   文件名称1,   FALSE);
WinExec( "Cmd.exe   /C   md   创建文件夹的路径2 ",   SW_HIDE);
::CopyFile(文件名称2,   文件名称2,   FALSE);
先创建一个文件夹,然后拷贝指定文件到此文件夹中。再创建另一个文件夹,也拷贝一个文件到这个文件夹中。
奇怪的是,第一个拷贝的函数失败,而接下来执行的第二个拷贝却能成功。
如果我在创建文件夹1的函数后面跟一个一秒的延时,拷贝就能成功,但是为什么第二个拷贝没有延时,却也能成功呢?


------解决方案--------------------
在执行这个语句的时候WinExec( "Cmd.exe /C md 创建文件夹的路径1 ", SW_HIDE);很可能文件夹还没有创建成功,就执行了CopyFile的操作,因为WinExec函数是立即返回的,要能保证100%的创建文件夹成功,建议采用CreateProcess,然后等待其返回后,再执行拷贝文件操作.

------解决方案--------------------
CreateDirectory
------解决方案--------------------
可以GetLastError看看返回什么错误