Here is what I use in windows :
bool CheckFileAccess( PCTSTR filename )
{
bool state = true;
DWORD attrib = GetFileAttributes( filename );
if( attrib == INVALID_FILE_ATTRIBUTES )
{
state = false; }
else if( attrib & FILE_ATTRIBUTE_DIRECTORY )
{
state = false; }
return state;
}