升级程序中出现的问题:
[虫害]
升级包通过硬盘执行是OK的;但是刻录后通过光盘执行,总在复制文件夹时出错。
[捉虫]
升级包内的文件属性的判断条件有误:
- if(FindFileData.dwFileAttributes == FILE_ATTRIBUTE_DIRECTORY)
- {
- // 复制文件夹
- }
对于硬盘上的文件夹,取到的dwFileAttributes属性是FILE_ATTRIBUTE_DIRECTORY(0x00000010),而对于光盘,其属性是FILE_ATTRIBUTE_DIRECTORY | FILE_ATTRIBUTE_READONLY(0x00000011),导致无法满足判断条件。
应该改为:
- if( FindFileData.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY) == FILE_ATTRIBUTE_DIRECTORY )
- {
- // 复制文件夹
- }