http://www.perlmonks.org?node_id=996292


in reply to Getting filehandle access modes on Windows

apparently fcntl on that platform can't be used to determine filehandle access modes.

I wrote Win32::Fmode to address that very problem.

(and syphilis wrapped it over in what he considers a more user-friendly API in FileHandle::Fmode)

Unfortunately, the underlying method used by both requires XS -- that was the only method I could find for gaining access to the information.

I'm not guaranteeing there isn't a non-XS method, but I looked pretty hard at the time and didn't find one.

it uses XS and I'd like something that's pure Perl, as installing XS code on Windows boxes is not something I wish on anyone.

PPM makes it simple. Far simpler than installing pure perl modules on *nix in fact.

A whole 10 seconds (via a very slow connection):

[21:54:11.73] C:\test>ppm install Win32::Fmode Downloading Win32-Fmode-1.0.6...done Unpacking Win32-Fmode-1.0.6...done Generating HTML for Win32-Fmode-1.0.6...done Updating files in site area...done 6 files installed [21:54:20.57] C:\test>

With the rise and rise of 'Social' network sites: 'Computers are making people easier to use everyday'
Examine what is said, not who speaks -- Silence betokens consent -- Love the truth but pardon error.
"Science is about questioning the status quo. Questioning authority".
In the absence of evidence, opinion is indistinguishable from prejudice.

RIP Neil Armstrong

Replies are listed 'Best First'.
Re^2: Getting filehandle access modes on Windows
by djerius (Beadle) on Sep 28, 2012 at 21:08 UTC
    I wrote Win32::Fmode to address that very problem. (and syphilis wrapped it over in what he considers a more user-friendly API in FileHandle::Fmode)
    Thanks! I missed that. All I found was Win32API::File, which exposes file attributes, but not the filehandle ones.

    PPM makes it simple. Far simpler than installing pure perl modules on *nix in fact.
    Good to know. I won't shy away from using XS then.

    Thanks again.