| \input texinfo @c -*-texinfo-*- | |
| @c %**start of header | |
| @setfilename wine.info | |
| @settitle Wine Reference Manual | |
| @iftex | |
| @afourpaper | |
| @end iftex | |
| @c %**end of header | |
| @ifinfo | |
| @format | |
| START-INFO-DIR-ENTRY | |
| * wine: (wine.info). The Windows Emulator. | |
| END-INFO-DIR-ENTRY | |
| @end format | |
| @end ifinfo | |
| @iftex | |
| @c @finalout | |
| @end iftex | |
| @ifinfo | |
| This file documents Wine, the Windows Emulator. | |
| @c | |
| Copyright @copyright{} 1997 The Wine authors. @* | |
| @xref{Authors}, for a list of the copyright holders. | |
| Permission is granted to make and distribute verbatim | |
| copies of this manual provided the copyright notice and | |
| this permission notice are preserved on all copies. | |
| @ignore | |
| Permission is granted to process this file through TeX | |
| and print the results, provided the printed document | |
| carries a copying permission notice identical to this | |
| one except for the removal of this paragraph (this | |
| paragraph not being relevant to the printed manual). | |
| @end ignore | |
| Permission is granted to copy and distribute modified | |
| versions of this manual under the conditions stated in | |
| the section entitled ``License, Warranty, and Authors of Wine''. | |
| @sp 4 | |
| FIXME: UNIX and POSIX trademarks. @* | |
| MS-Windows, Windows-NT, Windows 95 are registered trademarks of | |
| Microsoft Corp. Postscript is a registered trademark of Adobe Systems | |
| Inc. All other product names mentioned herein are the trademarks of | |
| their respective owners. | |
| @end ifinfo | |
| @c begin chapters on right pages | |
| @setchapternewpage odd | |
| @titlepage | |
| @sp 10 | |
| @center @titlefont{The Wine Reference Manual} | |
| @center Edition 0.0.1, 6 July 1997 | |
| @c The following two commands start the copyright page. | |
| @page | |
| @vskip 0pt plus 1filll | |
| Copyright @copyright{} 1997 The Wine authors. @* | |
| @xref{Authors}, for a list of the copyright holders. | |
| Permission is granted to make and distribute verbatim | |
| copies of this manual provided the copyright notice and | |
| this permission notice are preserved on all copies. | |
| Permission is granted to copy and distribute modified | |
| versions of this manual under the conditions stated in | |
| the section entitled ``License, Warranty, and Authors of Wine''. | |
| @sp 4 | |
| FIXME: UNIX and POSIX trademarks. @* | |
| MS-Windows, Windows-NT, Windows 95 are registered trademarks of | |
| Microsoft Corp. Postscript is a registered trademark of Adobe Systems | |
| Inc. All other product names mentioned herein are the trademarks of | |
| their respective owners. | |
| @end titlepage | |
| @c | |
| @c SETTINGS, DEFINES, MACROS | |
| @c | |
| @c Edit this macro manually in the above parts of the document | |
| @macro winemanualversion | |
| 0.0.1 | |
| @end macro | |
| @c Edit this macro manually in the above parts of the document | |
| @macro winemanualdate | |
| 6 July 1997 | |
| @end macro | |
| @c Edit this macro manually into the TeX titlepage | |
| @macro winemanualtitle {} | |
| The Wine Reference Manual | |
| @end macro | |
| @c | |
| @c MICROSOFT | |
| @c | |
| @c FIXME: automatical trademark reference | |
| @macro mswindows | |
| MS-Windows | |
| @end macro | |
| @c FIXME: automatical trademark reference | |
| @c spell it always the same | |
| @macro WIN32 | |
| WIN32 | |
| @end macro | |
| @c FIXME: automatical trademark reference | |
| @macro WINNT | |
| Windows NT | |
| @end macro | |
| @c FIXME: automatical trademark reference | |
| @macro WIN95 | |
| Windows 95 | |
| @end macro | |
| @c | |
| @c THE OTHERS | |
| @c | |
| @c FIXME: automatical trademark reference | |
| @macro unix | |
| UNIX | |
| @end macro | |
| @c FIXME: automatical trademark reference | |
| @macro posix | |
| POSIX | |
| @end macro | |
| @c | |
| @c THIS MANUAL | |
| @c | |
| @c flag out differences to MS-Windows | |
| @macro windiff | |
| @emph{Differences to @mswindows{}:} @* | |
| @end macro | |
| @macro windiffnone | |
| @windiff{} | |
| No differences known. | |
| @end macro | |
| @c tell whether function is present in Windows 95 and/or NT | |
| @macro winconf | |
| @emph{Conformance to @mswindows{}:} @* | |
| @end macro | |
| @macro winconfall | |
| @winconf{} | |
| Present in @WIN95{} and @WINNT{}. | |
| @end macro | |
| @c give information about completion | |
| @macro completion | |
| @emph{Completion status:} @* | |
| @end macro | |
| @macro completionnone | |
| @completion{} | |
| Not yet implemented. | |
| @end macro | |
| @c | |
| @c TOP NODE | |
| @c | |
| @ifinfo | |
| @node Top, Copying, (dir), (dir) | |
| @top Wine | |
| This is edition @winemanualversion{}, last updated @winemanualdate{}, | |
| of @winemanualtitle{}. | |
| Wine (Wine Is Not an Emulator, or the WINdows Emulator) | |
| is both an emulator that runs @mswindows{} executables and a library | |
| that can be used to compile @mswindows{} source code. | |
| Wine is free software. Wine is still in development-only state. | |
| @end ifinfo | |
| @menu | |
| * Copying:: License, Warranty, and Authors of Wine. | |
| * Introduction:: A short overview. | |
| * Reference Manual:: The Wine reference manual. | |
| * Installation:: Installing Wine. | |
| * The Wine Project:: How to contribute to Wine. | |
| * Concept Index:: Index of concepts and names. | |
| * Type Index:: Index of types and type qualifiers. | |
| * Function Index:: Index of functions and function-like | |
| macros. | |
| * Variable Index:: Index of variables and variable-like | |
| macros. | |
| * File Index:: Index of programs and files. | |
| @end menu | |
| @node Copying, Introduction, Top, Top | |
| @unnumbered License, Warranty, and Authors of Wine. | |
| @cindex copying conditions for Wine | |
| @cindex conditions for copying Wine | |
| @cindex Wine copying conditions | |
| The Wine license, warranty, and list of authors together form the | |
| copyright for Wine. Read these sections carefully. | |
| @menu | |
| * License:: The Wine license. | |
| * Warranty:: Wine comes with no warranty. | |
| * Authors:: The persons that contributed to Wine. | |
| @end menu | |
| @node License, Warranty, , Copying | |
| @cindex Wine license | |
| @cindex license of Wine | |
| @unnumberedsec The Wine License | |
| Wine is distributed under the following copyright. | |
| @quotation | |
| @include LICENSE | |
| @end quotation | |
| @node Warranty, Authors, License, Copying | |
| @cindex Wine warranty | |
| @cindex warranty of Wine | |
| @unnumberedsec The Wine Warranty | |
| @quotation | |
| @include WARRANTY | |
| @end quotation | |
| @node Authors, , Warranty, Copying | |
| @cindex Wine authors | |
| @cindex authors of Wine | |
| @cindex copyright holders of Wine | |
| @cindex Wine copyright holders | |
| @unnumberedsec The Wine Authors | |
| @quotation | |
| @include AUTHORS | |
| @end quotation | |
| These persons also hold the copyright on Wine. | |
| The overall coordination is done by @* | |
| Alexandre Julliard @* | |
| @email{julliard@@lrc.epfl.ch} | |
| @node Introduction, Reference Manual, Copying, Top | |
| @chapter Introduction | |
| FIXME: Somebody should say some solemn words. | |
| @xref{The Wine Project}, if you consider contributing some work. | |
| @node Reference Manual, Installation, Introduction, Top | |
| @menu | |
| * @WIN32{} Reference Manual:: The @WIN32{} function calls and data types. | |
| * Resources and INI files:: How to determine the appearance and | |
| behaviour of Wine programs. | |
| * Metafiles--Icons--Bitmaps:: FIXME missing. | |
| * Debugging:: Debugging Wine. | |
| * Programs:: Programs written to run in/with Wine. | |
| * Tools:: Programs to support Wine. | |
| @end menu | |
| @node @WIN32{} Reference Manual, Resources and INI files, , Reference Manual | |
| @chapter The @WIN32{} Reference Manual | |
| @menu | |
| * Kernel Objects:: How the Wine kernel keeps information. | |
| * Processes and Threads:: Job control and management in Wine. | |
| * Users and Groups:: Security in Wine. | |
| * Date and Time:: Functions for getting the date and time | |
| and for conversion between formats. | |
| * System Information:: Getting information about the hardware | |
| and software the system runs on. | |
| * Memory Management:: How your programs get memory from | |
| Wine. | |
| * I/O Facilities:: Input/Output in Wine. | |
| .everything except communication and windows | |
| * Communication:: How processes can communicate. | |
| * Windows and Graphics:: GUI functions of @WIN32{}. | |
| * Errors and Exceptions:: How your program can report errors. | |
| . messaging | |
| * Resources:: Functions for dealing with resources. | |
| * The Registry:: FIXME missing. | |
| * Dynamic Link Libraries:: Functions for dealing with DLL's. | |
| @end menu | |
| @node Kernel Objects, Processes and Threads, , @WIN32{} Reference Manual | |
| @section Kernel Objects | |
| @node Processes and Threads, Users and Groups, Kernel Objects, @WIN32{} Reference Manual | |
| @section Processes and Threads | |
| @node Users and Groups, Date and Time, Processes and Threads, @WIN32{} Reference Manual | |
| @section Users and Groups | |
| @node Date and Time, System Information, Users and Groups, @WIN32{} Reference Manual | |
| @section Date and Time | |
| This section describes functions for manipulating dates and times. This | |
| includes the current time, the creation or manipulation times of files | |
| and other objects, and conversion between different time | |
| representations. | |
| @menu | |
| * File Times:: Creation and manipulation times of files. | |
| @end menu | |
| @node File Times, , , Date and Time | |
| @subsection File Times | |
| @menu | |
| * Type FILETIME:: The data structure used for specifying | |
| file times. | |
| * Compare File Times:: Compare two file times. | |
| * Get File Times:: Get the time attributes of a file. | |
| @end menu | |
| @c | |
| @c *** struct FILETIME *** | |
| @c | |
| @node Type FILETIME, Compare File Times, , File Times | |
| @noindent | |
| File times in Wine are specified by the data type @code{FILETIME}, | |
| defined in @file{windows.h}. | |
| @deftp {Data type} FILETIME | |
| This is the data type for specifying file times. The file times are | |
| stored with 64 bit precision. The actual data type is a structure with | |
| two 32 bit values which are interpreted as the low and high parts of a | |
| 64-bit value. This value gives a time measured in a granularity of 100 | |
| nanoseconds, so 1.5 seconds are specified by a value of 15,000,000. In | |
| Wine, this 64-bit value is signed, with the sign taken from the high | |
| part. The lower part is used as unsigned. | |
| The definition of @code{FILETIME} reads: | |
| @example | |
| typedef struct _FILETIME | |
| @{ | |
| INT32 dwLowDateTime; | |
| INT32 dwHighDateTime; | |
| @} FILETIME; | |
| @end example | |
| @cindex epoch in file time | |
| The @code{FILETIME} structure may be used to hold absolute or relative | |
| times. Absolute times are given as the number of 100 nanoseconds | |
| intervals elapsed since 1 January 1601, 00:00:00 UTC (Coordinated | |
| Universal Time, which is GMT, Greenwich Mean Time). This might be | |
| called the @dfn{epoch} for file times. With a signed 64-bit value, this | |
| representation covers absolute times of 29247 years around the epoch. | |
| @windiff{} | |
| In @mswindows{}, the elements of the structure are apparently of type | |
| @code{DWORD}. Whether the full 64 bit value is interpreted as signed or | |
| unsigned I do not know. | |
| @end deftp | |
| @c | |
| @c *** CompareFileTime *** | |
| @c | |
| @node Compare File Times, Get File Times, Type FILETIME, File Times | |
| @noindent | |
| The Wine function @code{CompareFileTime} compares two file times, and | |
| returns whether the first time is less than, equal to, or greater than | |
| the second file time. It is defined in @file{windows.h}. | |
| @deftypefn {WIN32 function} LONG CompareFileTime (@w{CONST FILETIME* @var{time_1},} @w{CONST FILETIME* @var{time_2})} | |
| This function returns @code{1}, if @var{time_1} is greater than | |
| @var{time_2}, @code{-1} if it is less, and @code{0} if both times are | |
| equal. | |
| @winconfall{} | |
| @windiffnone{} | |
| @completionnone{} | |
| @end deftypefn | |
| @c | |
| @c ***GetFileTime *** | |
| @c | |
| @node Get File Times, , Compare File Times, File Times | |
| @noindent | |
| FIXME: move this function to the file IO section. @* | |
| The Wine function @code{GetFileTime} returns the creation time and | |
| the times of last the read and modification access to a file. It is | |
| defined in @file{windows.h}. | |
| @deftypefn {WIN32 function} BOOL GetFileTime (@w{HANDLE @var{file},} @w{LPFILETIME @var{ctime},} @w{LPFILETIME @var{atime},} @w{LPFILETIME @var{mtime})} | |
| This function obtains for the specified @var{file} the creation time | |
| @var{ctime}, the time of the last access to the file @var{atime}, and | |
| the time of the last modification (write) to the file, @var{mtime}. | |
| The @var{file} handle must have been obtained by opening the file with | |
| @code{GENERIC_READ} access. The file time arguments of this function are | |
| pointers to @code{FILETIME} variables, which are filled with a value that | |
| indicates an absolute time in UTC. To convert these values to local | |
| times, use the function @code{FileTimeToLocalFileTime}. If you do not | |
| need some of the times, you can pass a @code{NULL} pointer. | |
| The function returns @code{TRUE} on success, @code{FALSE} on failure. | |
| @winconfall{} | |
| @windiffnone{} | |
| @end deftypefn | |
| @node System Information, Memory Management, Date and Time, @WIN32{} Reference Manual | |
| @section System Information | |
| @node Memory Management, I/O Facilities, System Information, @WIN32{} Reference Manual | |
| @section Memory Management | |
| @node I/O Facilities, Communication, Memory Management, @WIN32{} Reference Manual | |
| @section I/O Facilities | |
| @node Communication, Windows and Graphics, I/O Facilities, @WIN32{} Reference Manual | |
| @section Communication | |
| @node Windows and Graphics, Errors and Exceptions, Communication, @WIN32{} Reference Manual | |
| @section Windows and Graphics | |
| @node Errors and Exceptions, Resources, Windows and Graphics, @WIN32{} Reference Manual | |
| @section Errors and Exceptions | |
| @node Resources, The Registry, Errors and Exceptions, @WIN32{} Reference Manual | |
| @section Resources | |
| @node The Registry, Dynamic Link Libraries, Resources, @WIN32{} Reference Manual | |
| @section The Registry | |
| @node Dynamic Link Libraries, , The Registry, @WIN32{} Reference Manual | |
| @section Dynamic Link Libraries (DLL's) | |
| @node Resources and INI files, Metafiles--Icons--Bitmaps, @WIN32{} Reference Manual, Reference Manual | |
| @chapter Resources and @file{INI} Files | |
| @node Metafiles--Icons--Bitmaps, Debugging, Resources and INI files, Reference Manual | |
| @chapter Metafiles --- Icons --- Bitmaps | |
| @node Debugging, Programs, Metafiles--Icons--Bitmaps, Reference Manual | |
| @chapter Debugging | |
| @node Programs, Tools, Debugging, Reference Manual | |
| @chapter Programs | |
| @node Tools, , Programs, Reference Manual | |
| @chapter Tools | |
| @node Installation, The Wine Project, Reference Manual, Top | |
| @chapter Wine Installation | |
| FIXME: write installation guide | |
| @menu | |
| * Applying patches:: How to update Wine to a newer version. | |
| @end menu | |
| @node Applying patches, , , Installation | |
| @section Applying patches | |
| @xref{Creating patches}, for instructions on creating patches. | |
| FIXME: write patch instructions | |
| @node The Wine Project, , Installation, Top | |
| @chapter The Wine project | |
| @cindex Wine project contributions | |
| @cindex project contributions to Wine | |
| If you are new to Wine and want to support this project, here are | |
| some suggestions. | |
| @menu | |
| * Creating patches:: How to create patches for Wine. | |
| * Adding Documentation:: Templates for the documentation. | |
| @end menu | |
| @xref{Debugging}, for advice on how to debug Wine. | |
| @xref{Applying patches}, for instructions on applying patches. | |
| FIXME: what is most urgently needed | |
| @node Creating patches, Adding Documentation, , The Wine Project | |
| @section Creating patches | |
| @xref{Applying patches}, for instructions on applying patches. | |
| FIXME: how to create patches | |
| @node Adding Documentation, , Creating patches, The Wine Project | |
| @section Adding Documentation | |
| @ifinfo | |
| Here are some templates which should help you collaborate on this | |
| documentation. Read the text below before examining them. | |
| @end ifinfo | |
| FIXME they are not here in dvi | |
| @menu | |
| * Type Template:: How to document data types in Wine's | |
| include files. | |
| * Function Template:: How to document an (API) function of | |
| Wine. | |
| @end menu | |
| These are my tips for adding documentation. | |
| Do not simply copy documentation from @mswindows{} related | |
| material. Except from risking copyright violations, which you would not | |
| want to do, there is another aspect to that: | |
| As Wine is a product to run on @unix{} and @unix{}-like workstations, | |
| it seems a good idea to me to organize this documentation primarily for | |
| the well-trained @unix{} reader. Please keep that in mind when you add | |
| some documentation. | |
| Finally, read the info pages for @code{texinfo}. | |
| @subsection Template introduction | |
| @iftex | |
| On the following pages you will find some @code{texinfo} templates, which | |
| should help you collaborate on this documentation. | |
| @end iftex | |
| These templates give hints on how to document data types, functions, | |
| variables, constants etc. in Wine. | |
| As documentation evolves, you will find common features of data types | |
| that should be described in a unified fashion. In such a case, please | |
| add a corresponding style guide-line here, in this very place, to help | |
| keeping documentation of data types unified. | |
| Start out the type or function with a new node. Write a comment before | |
| the node, listing all data types (and functions) described in the node, | |
| like this: | |
| @example | |
| @@c | |
| @@c *** struct FILETIME *** | |
| @@c | |
| @@node Type FILETIME, NextNodeName, PreviousNodeName, ParentNodeName | |
| @end example | |
| The node command describes the node name and the names of the next node, | |
| the previous node, and the parent node. The parent node should contain | |
| a menu entry for this node. The previous node is the node that appears | |
| before this node in the parent node menu. The next node is the node | |
| succeeding this one in the parent node menu. If there is no previous or | |
| next node, omit the name (putting just a single space between the two | |
| commata). | |
| The node name must be a unique sequence of words. Case is important, so | |
| @emph{Type} and @emph{type} are distinct. The node name must not contain | |
| special characters like @samp{@@, @{, @}} or the comma. If you need to | |
| give a node the same name as a function, data type, etc., use the words | |
| @samp{Type}, @samp{Function}, etc. before the identifier. | |
| Always put the names of the node and its links on the same line, even if | |
| it gets rather long. | |
| If there are two or more data types or functions described in the node, | |
| adapt the comment like this: | |
| @example | |
| @@c | |
| @@c *** int X *** | |
| @@c *** long Y() *** | |
| @@c | |
| @@node Ints and Longs, NextNodeName, PreviousNodeName, ParentNodeName | |
| @end example | |
| Start the description of the type(s) or function(s) with a single | |
| non-indented paragraph that gives a one-line description of the type(s) | |
| or function(s) and states the include files that are required. | |
| @example | |
| @@noindent | |
| File times in Wine are specified by the data type @@code@{FILETIME@}, | |
| defined in @@file@{windows.h@}. | |
| @end example | |
| If several types or functions are closely connected, use one paragraph | |
| as a common description. If more paragraphs are required for a proper | |
| description, indent all but the first of them. | |
| Then start the definition of the data type or function. Use the proper | |
| macro and specify a category and the formal definition on the same | |
| line. For proper categories, take a look at the specialized templates. | |
| Again, put everything that belongs to the header into a single line. | |
| @example | |
| @@deftp @{Data type@} FILETIME | |
| @end example | |
| In the definition, give a verbal explanation of the data type or | |
| function. The explanation should be rather complete, exact, and | |
| comprehensible, than well-structured. This is the point where you can | |
| tell everything you want. Do not be afraid of wasting space. | |
| Do not describe the @mswindows{} situation but only say what Wine | |
| does. That is important. (Sometimes they might even do the same.) | |
| @example | |
| This is the data type for specifying file times. The file times are | |
| stored with 64 bit precision. The actual data type is a structure with | |
| two 32 bit values which are interpreted as the low and high parts of a | |
| 64-bit value. This value gives a time measured in a granularity of 100 | |
| nanoseconds, so 1.5 seconds are specified by a value of 15,000,000. In | |
| Wine, this 64-bit value is signed, with the sign taken from the high | |
| part. The lower part is used as unsigned. | |
| @end example | |
| For data types, it is recommended to quote the definition from the | |
| header file. For a function, you might give a short example of its | |
| usage. You may also put one example in the end of a node that explains | |
| several of the functions in the node. Remember that cut-and-paste from a | |
| well prepared example will help the readers write their code. | |
| @example | |
| The definition of @@code@{FILETIME@} reads: | |
| @@example | |
| typedef struct _FILETIME | |
| @@@{ | |
| INT32 dwLowDateTime; | |
| INT32 dwHighDateTime; | |
| @@@} FILETIME; | |
| @@end example | |
| @end example | |
| You could also use the @code{cindex} command which creates an entry in | |
| the concept index. The @code{texinfo} manual recommends to keep concept | |
| entries distinct, so that a single concept index entry puts to one | |
| well-defined place in the document. Use lower case letters for index | |
| entries, unless they are proper names or quotes from actual code. | |
| @example | |
| @@cindex epoch in file time | |
| The @@code@{FILETIME@} structure may be used to hold absolute or relative | |
| times. Absolute times are given as the number of 100 nanoseconds | |
| intervals elapsed since 1 January 1601, 00:00:00 UTC (Coordinated | |
| Universal Time, which is GMT, Greenwich Mean Time). This might be | |
| called the @@dfn@{epoch@} for file times. With a signed 64-bit value, this | |
| representation covers absolute times of 29247 years around the epoch. | |
| @end example | |
| After the verbal documentation, you can add some special fields | |
| describing bugs, implementation dependencies etc. Two of these are | |
| recommended to attach to all descriptions. One describes the | |
| conformance of the data type or function to @mswindows{} products, | |
| i.e. whether the item is also present in @WINNT{} and @WIN95{}. The | |
| other one describes known differences of the Wine item to its | |
| @mswindows{} counterpart. Both will greatly help in porting software | |
| from @mswindows{} to Wine and vice versa. | |
| @example | |
| @@winconfall@{@} | |
| @@windiff@{@} | |
| In @@mswindows@{@}, the elements of the structure are apparently of type | |
| @@code@{DWORD@}. Whether the full 64 bit value is interpreted as signed or | |
| unsigned I do not know. | |
| @end example | |
| If you find that more of these property attributes are necessary, feel | |
| free to create your own ones. But keep in mind that they should be | |
| applicable more or less to all described items. Very special properties | |
| will better be put into the verbal text. | |
| Finally end the definition of the data type or function: | |
| @example | |
| @@end deftp | |
| @end example | |
| Do not forget to enter the node in the menu of its top node, and do | |
| properly link the node to its successor and predecessor. | |
| @node Type Template, Function Template, , Adding Documentation | |
| @subsection Data type template | |
| Category: Data type | |
| @node Function Template, , Type Template, Adding Documentation | |
| @subsection API function template | |
| Functions should be given category names, to indicate which API they | |
| belong to. Please add items to the list of categories possible. | |
| Category: WIN32 function | |
| @example | |
| @@c | |
| @@c ***GetFileTime() *** | |
| @@c | |
| @@node Get File Times, , Compare File Times, File Times | |
| @@noindent | |
| The Wine function @@code@{GetFileTime@} returns the creation time and | |
| the times of last the read and modification access to a file. It is | |
| defined in @@file@{windows.h@}. | |
| @@deftypefn @{WIN32 function@} BOOL GetFileTime (@@w@{HANDLE @@var@{file@},@} @@w@{LPFILETIME @@var@{ctime@},@} @@w@{LPFILETIME @@var@{atime@},@} @@w@{LPFILETIME @@var@{mtime@})@} | |
| This function obtains for the specified @@var@{file@} the creation time | |
| @@var@{ctime@}, the time of the last access to the file @@var@{atime@}, and | |
| the time of the last modification (write) to the file, @@var@{mtime@}. | |
| The @@var@{file@} handle must have been obtained by opening the file with | |
| @@code@{GENERIC_READ@} access. The file time arguments of this function are | |
| pointers to @@code@{FILETIME@} variables, which are filled with a value that | |
| indicates an absolute time in UTC. To convert these values to local | |
| times, use the function @@code@{FileTimeToLocalFileTime@}. If you do not | |
| need some of the times, you can pass a @@code@{NULL@} pointer. | |
| The function returns @@code@{TRUE@} on success, @@code@{FALSE@} on failure. | |
| @@winconfall@{@} | |
| @@windiffnone@{@} | |
| @@end deftypefn | |
| @end example | |
| @node Concept Index, , , Top | |
| @comment node-name, next, previous, up | |
| @unnumbered Concept Index | |
| @printindex cp | |
| @node Type Index, , , Top | |
| @comment node-name, next, previous, up | |
| @unnumbered Type Index | |
| @printindex tp | |
| @node Function Index, , , Top | |
| @comment node-name, next, previous, up | |
| @unnumbered Function Index | |
| @printindex fn | |
| @node Variable Index, , , Top | |
| @comment node-name, next, previous, up | |
| @unnumbered Variable Index | |
| @printindex vr | |
| @node File Index, , , Top | |
| @comment node-name, next, previous, up | |
| @unnumbered File and Program Index | |
| @printindex pg | |
| @contents | |
| @bye |