FindFirstFileW和FindNextFileW在unicode编译环境下发生堆破坏的问题!
2014-07-15 16:58
507 查看
dirent.h头文件中的_wopendir和_wreaddir在XP和vs2010中有
FindFirstFileW和FindNextFileW在unicode编译环境下发生堆破坏的问题
可能解决办法有:
1、
struct _WDIR {
struct _wdirent ent; /* Current directory entry */
WIN32_FIND_DATAW find_data; /* Private file data */
int cached; /* True if data is valid */
HANDLE handle; /* Win32 search handle */
wchar_t patt[PATH_MAX+1]; 将原先的指针设为数组
};
2、
typedef struct _WIN32_FIND_DATAW {
DWORD dwFileAttributes;
FILETIME ftCreationTime;
FILETIME ftLastAccessTime;
FILETIME ftLastWriteTime;
DWORD nFileSizeHigh;
DWORD nFileSizeLow;
DWORD dwReserved0;
DWORD dwReserved1;
WCHAR cFileName[ MAX_PATH ];
WCHAR cAlternateFileName[ 14 ]; //将此处的值改大,比如140
#ifdef _MAC
DWORD dwFileType;
DWORD dwCreatorType;
WORD wFinderFlags;
#endif
} WIN32_FIND_DATAW, *PWIN32_FIND_DATAW, *LPWIN32_FIND_DATAW;
本人经过测试解决了堆破坏的问题。
FindFirstFileW和FindNextFileW在unicode编译环境下发生堆破坏的问题
可能解决办法有:
1、
struct _WDIR {
struct _wdirent ent; /* Current directory entry */
WIN32_FIND_DATAW find_data; /* Private file data */
int cached; /* True if data is valid */
HANDLE handle; /* Win32 search handle */
wchar_t patt[PATH_MAX+1]; 将原先的指针设为数组
};
2、
typedef struct _WIN32_FIND_DATAW {
DWORD dwFileAttributes;
FILETIME ftCreationTime;
FILETIME ftLastAccessTime;
FILETIME ftLastWriteTime;
DWORD nFileSizeHigh;
DWORD nFileSizeLow;
DWORD dwReserved0;
DWORD dwReserved1;
WCHAR cFileName[ MAX_PATH ];
WCHAR cAlternateFileName[ 14 ]; //将此处的值改大,比如140
#ifdef _MAC
DWORD dwFileType;
DWORD dwCreatorType;
WORD wFinderFlags;
#endif
} WIN32_FIND_DATAW, *PWIN32_FIND_DATAW, *LPWIN32_FIND_DATAW;
本人经过测试解决了堆破坏的问题。
相关文章推荐
- FtpFindFirstFile()及InternetFindNextFile()对汉字编码的支持问题
- 使用FindFirstFile和FindNextFile查找某个目录下的所有文件
- FindFirstFile和FindNextFile的用法
- findfirstfile和findnextfile用法试用
- 使用FindFirstFile和FindNextFile对给定目录下所有文件进行广度优先遍历
- 关于FINDFIRSTFILE的问题
- 使用FindFirstFile和FindNextFile查找某个目录下的所有文件(包括子目录)
- windows系统下使用FindFirstFile 和 FindNextFileA遍历某目录下的所有文件(c++编写)
- FindFirstFile 和FindNextFile的用法
- 使用FindFirstFile,FindNextFile遍历一个文件夹
- Windows下使用FindFirstFile和FindNextFile列举目录中的文件
- 使用FindFirstFile和FindNextFile查找某个目录下的所有文件(包括子目录)
- 关于VB的函数dir和Api函数FindFirstFile和FindNextFile
- 遍历目录 常用FindFirstFile()和FindNextFile()
- Windows API一日一练 FindFirstFile和FindNextFile函数
- findfirstfile的问题和遍历目录
- 使用FindFirstFile和FindNextFile查找某个目录下的所有文件(包括子目录)
- FindFirstFile和FindNextFile的使用
- FindFirstFile和FindNextFile
- 遍历目录 常用FindFirstFile()和FindNextFile()