35 #define WIN32_LEAN_AND_MEAN
44 struct cfs_win32_dir {
54 struct cfs_win32_dir *dir = (
struct cfs_win32_dir *)p;
56 char dirname[MAX_PATH];
59 GetModuleFileName(
NULL, dirname,
sizeof(dirname));
60 strcpy(strrchr(dirname,
'\\'),
"/*");
62 sprintf(dirname,
"%s/*", n);
65 dir->handle = FindFirstFile(dirname, &data);
66 if(dir->handle == INVALID_HANDLE_VALUE) {
70 dir->name = strdup(data.cFileName);
71 dir->size = ((data.nFileSizeLow + 511) / 512) % 1000;
78 struct cfs_win32_dir *dir = (
struct cfs_win32_dir *)p;
81 if(dir->name ==
NULL) {
85 strncpy(e->name, dir->name,
sizeof(e->name));
89 if(FindNextFile(dir->handle, &data) == 0) {
93 dir->name = strdup(data.cFileName);
94 dir->size = ((data.nFileSizeLow + 511) / 512) % 1000;
101 struct cfs_win32_dir *dir = (
struct cfs_win32_dir *)p;
104 FindClose(dir->handle);
#define NULL
The null pointer.
int cfs_readdir(struct cfs_dir *dir, struct cfs_dirent *record)
Read a directory entry.
void cfs_closedir(struct cfs_dir *dir)
Close a directory opened with cfs_opendir().
int cfs_opendir(struct cfs_dir *dir, const char *name)
Open a directory for reading directory entries.