Ignore:
Timestamp:
Aug 25, 1999, 1:46:36 AM (26 years ago)
Author:
phaller
Message:

Add: added FindFirstFileW / FindNextFileW

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/kernel32/Fileio.cpp

    r299 r671  
    1 /* $Id: Fileio.cpp,v 1.7 1999-07-13 10:38:33 sandervl Exp $ */
     1/* $Id: Fileio.cpp,v 1.8 1999-08-24 23:46:36 phaller Exp $ */
    22
    33/*
     
    1717#include <string.h>
    1818#include "unicode.h"
     19#include <heapstring.h>
    1920#include "handlemanager.h"
    2021#include "devio.h"
     
    7475HANDLE WIN32API FindFirstFileA(LPCSTR arg1, WIN32_FIND_DATAA * arg2)
    7576{
    76     dprintf(("KERNEL32:  FindFirstFile %s\n", arg1));
     77    dprintf(("KERNEL32:  FindFirstFile(%s,%08xh)\n",
     78             arg1,
     79             arg2));
    7780
    7881    return O32_FindFirstFile(arg1, arg2);
     
    8285HANDLE WIN32API FindFirstFileW(LPCWSTR arg1, WIN32_FIND_DATAW *  arg2)
    8386{
    84  HANDLE rc;
    85  char  *astring;
    86 
    87     dprintf(("KERNEL32: FindFirstFileW: not implemented!!"));
    88 
    89     astring = UnicodeToAsciiString((LPWSTR)arg1);
    90 //    rc = O32_FindFirstFile(astring, arg2);
    91     rc = 0;
    92     FreeAsciiString(astring);
    93     return(rc);
     87  HANDLE           rc;
     88  char             *astring;
     89  WIN32_FIND_DATAA wfda;
     90
     91  dprintf(("KERNEL32: FindFirstFileW(%08xh, %08xh)",
     92           arg1,
     93           arg2));
     94
     95  astring = UnicodeToAsciiString((LPWSTR)arg1);
     96  rc = FindFirstFileA(astring, &wfda);
     97
     98  // convert back the result structure
     99  memcpy(arg2,
     100         &wfda,
     101         sizeof(WIN32_FIND_DATAA));
     102
     103  lstrcpynAtoW (arg2->cFileName,
     104                wfda.cFileName,
     105                sizeof(wfda.cFileName));
     106
     107  lstrcpynAtoW (arg2->cAlternateFileName,
     108                wfda.cAlternateFileName,
     109                sizeof(wfda.cAlternateFileName));
     110
     111  FreeAsciiString(astring);
     112  return(rc);
    94113}
    95114//******************************************************************************
     
    105124BOOL WIN32API FindNextFileW(HANDLE arg1, WIN32_FIND_DATAW * arg2)
    106125{
    107     dprintf(("KERNEL32:  FindNextFileW Not properly implemented!\n"));
    108 //    return O32_FindNextFile(arg1, arg2);
    109     return 0;
     126  WIN32_FIND_DATAA wfda;
     127  BOOL             rc;
     128
     129  dprintf(("KERNEL32:  FindNextFileW(%08xh, %08xh)\n",
     130           arg1,
     131           arg2));
     132
     133  rc = FindNextFileA(arg1, &wfda);
     134
     135  // convert back the result structure
     136  memcpy(arg2,
     137         &wfda,
     138         sizeof(WIN32_FIND_DATAA));
     139
     140  lstrcpynAtoW (arg2->cFileName,
     141                wfda.cFileName,
     142                sizeof(wfda.cFileName));
     143
     144  lstrcpynAtoW (arg2->cAlternateFileName,
     145                wfda.cAlternateFileName,
     146                sizeof(wfda.cAlternateFileName));
     147
     148  return rc;
    110149}
    111150//******************************************************************************
Note: See TracChangeset for help on using the changeset viewer.