This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
move B-Lint and File-CheckTree to ./cpan
[perl5.git] / cpan / Win32API-File / README
CommitLineData
00f02a57 1Win32API::File v0.1200 -- Low-level access to Win32 API calls for files.
00701878
SH
2
3New since v0.07:
4
5 GetHandleInformation SetHandleInformation
6 HANDLE_FLAG_INHERIT HANDLE_FLAG_PROTECT_FROM_CLOSE
7 fileConstant fileLastError
8
9Low-level and full-power access to the following routines are provided:
10
11 CloseHandle CopyFile CreateFile
12 DefineDosDevice DeleteFile DeviceIoControl
13 GetDriveType GetFileType GetHandleInformation
14 GetLogicalDrives GetLogicalDriveStrings GetVolumeInformation
15 IsRecognizedPartition IsContainerPartition MoveFile
16 MoveFileEx QueryDosDevice ReadFile
17 SetFilePointer SetErrorMode SetHandleInformation
18 WriteFile
19
20Plus the Unicode versions:
21
22 CopyFileW CreateFileW DefineDosDeviceW
23 DeleteFileW GetDriveTypeW GetLogicalDriveStringsW
24 GetVolumeInformationW MoveFileW MoveFileExW
25 QueryDosDeviceW
26
27Full conversion between Win32-native file handles and Perl file handles is
28also supported. Access to the following C run-time library routines [or at
29least the Perl run-time library wrappers for them] is provided:
30
31 _get_osfhandle or win32_get_osfhandle as FdGetOsFHandle
32 _open_osfhandle or win32_open_osfhandle as OsFHandleOpenFd
33
34The following Perl-friendly wrappers and helper functions are also provided:
35
36 OsFHandleOpen GetOsFHandle attrLetsToBits
37 createFile fileConstant fileLastError
38 getLogicalDrives
39
40Plus the following constants:
41
42 CREATE_ALWAYS CREATE_NEW FILE_BEGIN
43 FILE_CURRENT FILE_END INVALID_HANDLE_VALUE
44 OPEN_ALWAYS OPEN_EXISTING TRUNCATE_EXISTING
45
46 DDD_EXACT_MATCH_ON_REMOVE DDD_RAW_TARGET_PATH
47 DDD_REMOVE_DEFINITION
48
49 DRIVE_UNKNOWN DRIVE_NO_ROOT_DIR DRIVE_REMOVABLE
50 DRIVE_FIXED DRIVE_REMOTE DRIVE_CDROM
51 DRIVE_RAMDISK
52
53 FILE_READ_DATA FILE_LIST_DIRECTORY
54 FILE_WRITE_DATA FILE_ADD_FILE
55 FILE_APPEND_DATA FILE_ADD_SUBDIRECTORY
56 FILE_CREATE_PIPE_INSTANCE FILE_READ_EA
57 FILE_WRITE_EA FILE_EXECUTE
58 FILE_TRAVERSE FILE_DELETE_CHILD
59 FILE_READ_ATTRIBUTES FILE_WRITE_ATTRIBUTES
60 FILE_ALL_ACCESS FILE_GENERIC_READ
61 FILE_GENERIC_WRITE FILE_GENERIC_EXECUTE
62
63 FILE_ATTRIBUTE_ARCHIVE FILE_ATTRIBUTE_COMPRESSED
64 FILE_ATTRIBUTE_HIDDEN FILE_ATTRIBUTE_NORMAL
65 FILE_ATTRIBUTE_OFFLINE FILE_ATTRIBUTE_READONLY
66 FILE_ATTRIBUTE_SYSTEM FILE_ATTRIBUTE_TEMPORARY
67
68 FILE_FLAG_BACKUP_SEMANTICS FILE_FLAG_DELETE_ON_CLOSE
69 FILE_FLAG_NO_BUFFERING FILE_FLAG_OVERLAPPED
70 FILE_FLAG_POSIX_SEMANTICS FILE_FLAG_RANDOM_ACCESS
71 FILE_FLAG_SEQUENTIAL_SCAN FILE_FLAG_WRITE_THROUGH
72
73 FILE_SHARE_DELETE FILE_SHARE_READ FILE_SHARE_WRITE
74
75 FILE_TYPE_CHAR FILE_TYPE_DISK FILE_TYPE_PIPE
76 FILE_TYPE_UNKNOWN
77
78 FS_CASE_IS_PRESERVED FS_CASE_SENSITIVE
79 FS_UNICODE_STORED_ON_DISK FS_PERSISTENT_ACLS
80 FS_FILE_COMPRESSION FS_VOL_IS_COMPRESSED
81
82 HANDLE_FLAG_INHERIT HANDLE_FLAG_PROTECT_FROM_CLOSE
83
84 IOCTL_STORAGE_CHECK_VERIFY IOCTL_STORAGE_MEDIA_REMOVAL
85 IOCTL_STORAGE_EJECT_MEDIA IOCTL_STORAGE_LOAD_MEDIA
86 IOCTL_STORAGE_RESERVE IOCTL_STORAGE_RELEASE
87 IOCTL_STORAGE_FIND_NEW_DEVICES IOCTL_STORAGE_GET_MEDIA_TYPES
88
89 IOCTL_DISK_GET_DRIVE_GEOMETRY IOCTL_DISK_GET_PARTITION_INFO
90 IOCTL_DISK_SET_PARTITION_INFO IOCTL_DISK_GET_DRIVE_LAYOUT
91 IOCTL_DISK_SET_DRIVE_LAYOUT IOCTL_DISK_VERIFY
92 IOCTL_DISK_FORMAT_TRACKS IOCTL_DISK_REASSIGN_BLOCKS
93 IOCTL_DISK_PERFORMANCE IOCTL_DISK_IS_WRITABLE
94 IOCTL_DISK_LOGGING IOCTL_DISK_FORMAT_TRACKS_EX
95 IOCTL_DISK_HISTOGRAM_STRUCTURE IOCTL_DISK_HISTOGRAM_DATA
96 IOCTL_DISK_HISTOGRAM_RESET IOCTL_DISK_REQUEST_STRUCTURE
97 IOCTL_DISK_REQUEST_DATA
98
99 GENERIC_ALL GENERIC_EXECUTE
100 GENERIC_READ GENERIC_WRITE
101
102 Unknown F5_1Pt2_512 F3_1Pt44_512
103 F3_2Pt88_512 F3_20Pt8_512 F3_720_512
104 F5_360_512 F5_320_512 F5_320_1024
105 F5_180_512 F5_160_512 RemovableMedia
106 FixedMedia F3_120M_512
107
108 MOVEFILE_COPY_ALLOWED MOVEFILE_DELAY_UNTIL_REBOOT
109 MOVEFILE_REPLACE_EXISTING MOVEFILE_WRITE_THROUGH
110
111 SECURITY_ANONYMOUS SECURITY_CONTEXT_TRACKING
112 SECURITY_DELEGATION SECURITY_EFFECTIVE_ONLY
113 SECURITY_IDENTIFICATION SECURITY_IMPERSONATION
114 SECURITY_SQOS_PRESENT
115
116 SEM_FAILCRITICALERRORS SEM_NOGPFAULTERRORBOX
117 SEM_NOALIGNMENTFAULTEXCEPT SEM_NOOPENFILEERRORBOX
118
119 PARTITION_ENTRY_UNUSED PARTITION_FAT_12
120 PARTITION_XENIX_1 PARTITION_XENIX_2
121 PARTITION_FAT_16 PARTITION_EXTENDED
122 PARTITION_HUGE PARTITION_IFS
123 PARTITION_FAT32 PARTITION_FAT32_XINT13
124 PARTITION_XINT13 PARTITION_XINT13_EXTENDED
125 PARTITION_PREP PARTITION_UNIX
126 VALID_NTFT PARTITION_NTFT
127
128Comments, additions, and bug reports are welcomed. Please address
fa191b07
YO
129technical questions that are not full bug reports to
130
131http://perlmonks.org/index.pl?node=Seekers%20of%20Perl%20Wisdom
00701878 132
00f02a57 133Tye McQueen, tye@metronet.com, http://perlmonks.org/?node=tye.
3826db83
SH
134
135This program is free software; you can redistribute it and/or modify it
136under the same terms as Perl itself.