<?xml version="1.0" encoding="Shift_JIS"?>
<?xml-stylesheet type="text/xsl" href="../Fmethod_xsl/fmethod_he_c.xsl"?>

<root>
  <func>


    <title>ds_rdhdddir</title>



    <declare>
      <vc>
        <include>#include "fwlib32.h"</include>
        <prottype>FWLIBAPI short WINAPI ds_rdhdddir(unsigned short FlibHndl, char *nc_file, long offset, short *number, ODBHDDDIR *hdddir);</prottype>
      </vc>
    </declare>



    <doc>
        <cmn>
            <p>
            Get the file information at each file.
            </p>
            The following information is acquired at each file.<br/>
                <dd>- File name</dd>
                <dd>- Comment of file</dd>
                <dd>- File attribute</dd>
                <dd>- File size</dd>
                <dd>- Update time of file</dd>
            <br/>
                This function is available even to "Fast Ethernet".
        </cmn>
    </doc>



    <argument>
        <hssb>
            <vc>
                <item>
                    <name>FlibHndl</name>
                    <type>in</type>
                    <content>
                        <p>
                            Specify the library handle. See "<a href="handle.htm" target="_parent">Library handle</a>" for details.
                        </p>
                    </content>
                </item>

                <item>
                    <name>nc_file</name>
                    <type>in</type>
                    <content>
                        Specify the pointer to the string where the based file name is stored.<br/>
                        The 63 characters from the head are recognized as file name, but the file name in DATA SERVER is managed by the format of 8.3. <br/>
                        When the '\0' is specified, the process is done assuming that the file of the top in the work directory is specified.
                    </content>
                </item>
                <item>
                    <name>offset</name>
                    <type>in</type>
                    <content>
                        Specify the number of offset files from the file specified by based file name(nc_file).<br/>
                        The file information is acquired from the position where the number of files specified by this data was skipped.<br/>
                        When the file name or the '\0' is specified for the based file name and the number of offsets which does not exist in the DATA SERVER is given, the last file information in the work directory is got.<br/>
                        When NULL is specified for the based file name and the number of offsets which does not exist in the DATA SERVER is given, the EW_NUMBER is returned.
                    </content>
                </item>

                <item>
<name>number</name>
<type>in/out</type>
                    <content>
Specify the pointer to the variable where the number of file information which wants to be acquired was setted.<br/>
Specify the 1 to 32 for this data.<br/>
This function returns the number of data which was acquired actually.
                    </content>
                </item>

                <item>
<name>hdddir</name>
<type>out</type>
                    <content>
Specify the pointer to the ODBHDDDIR structure to store the file information which is acquired.<p/>
The ODBHDDDIR structure is as follows.
<pre>
typedef struct _odbhdddir {
    char    file_name[64];
    char    comment[80];
    short   attribute;
    short   reserved;
    long    size;
    char    date[16];
} ODBHDDDIR;
</pre>

<dt>hdddir[n].file_name[64]</dt>
    <dd>File name</dd>
    <dd>The Ascii string less than 64 characters which included NULL is set.</dd>

<dt>hdddir[n].comment[80]</dt>
    <dd>Comment of file</dd>
    <dd>The Ascii string less than 80 characters which included NULL is set.</dd>

<dt>hdddir[n].attribute</dt>
    <dd>File attribute</dd>
<dd><table class="dd">
       <tr> <td>bit 4 = </td> <td>0</td> <td>:</td> <td>File</td>      </tr>
       <tr> <td>        </td> <td>1</td> <td>:</td> <td>Directory</td> </tr>
</table></dd>


<dt>hdddir[n].reserved</dt>
    <dd>Reserved (unused)</dd>

<dt>hdddir[n].size</dt>
    <dd>File size</dd>


<dt>hdddir[n].date[16]</dt>
    <dd>Update time of file</dd>
    <dd>The Ascii string of "yy-mm-dd hh:mm" format which terminated by NULL  is set.</dd>

                    </content>
                </item>
            </vc>
        </hssb>
    </argument>



    <errcode>
        <item>
            <name>EW_LENGTH</name>
            <content>Data length error<br/>The number of file information(*number) is wrong.</content>
        </item>
        <item>
            <name>EW_NUMBER</name>
            <content>Data number error<br/>When the based file name is NULL, the number(offset) of offsets which does not exist in the DATA SERVER is given.</content>
        </item>
        <item>
            <name>EW_NOOPT</name>
            <content>No option</content>
        </item>
        <item>
            <name>EW_REJECT</name>
            <content>CNC execution rejection<br/>The DATA SERVER is doing another processing.</content>
        </item>
        <item>
            <name>EW_DTSRVR</name>
            <content>DATA SERVER error<br/>Error occurred in DATA SERVER.</content>
        </item>
        <add></add>
    </errcode>



    <option>
        <hssb>The DATA SERVER function and the extended driver/library function are necessary.</hssb>
        <add></add>
    </option>



    <parameter>
    </parameter>



    <mode></mode>



    <support>
        <m>
            <fs0ia>X</fs0ia>
            <fs0ib>X</fs0ib>
             <fs15>X</fs15>
            <fs15i>X</fs15i>
             <fs16>X</fs16>
             <fs18>X</fs18>
             <fs21>X</fs21>
           <fs16ia>O</fs16ia>
           <fs18ia>O</fs18ia>
           <fs21ia>O</fs21ia>
           <fs16ib>O</fs16ib>
           <fs18ib>O</fs18ib>
           <fs21ib>O</fs21ib>
            <fs30i>X</fs30i>
        </m>
        <t>
            <fs0ia>X</fs0ia>
            <fs0ib>X</fs0ib>
             <fs15>X</fs15>
            <fs15i>X</fs15i>
             <fs16>X</fs16>
             <fs18>X</fs18>
             <fs21>X</fs21>
           <fs16ia>O</fs16ia>
           <fs18ia>O</fs18ia>
           <fs21ia>O</fs21ia>
           <fs16ib>O</fs16ib>
           <fs18ib>O</fs18ib>
           <fs21ib>O</fs21ib>
            <fs30i>X</fs30i>
        </t>
        <lc>
            <fs0ia>X</fs0ia>
            <fs0ib>X</fs0ib>
             <fs15>X</fs15>
            <fs15i>X</fs15i>
             <fs16>X</fs16>
             <fs18>X</fs18>
             <fs21>X</fs21>
           <fs16ia>X</fs16ia>
           <fs18ia>X</fs18ia>
           <fs21ia>X</fs21ia>
           <fs16ib>X</fs16ib>
           <fs18ib>X</fs18ib>
           <fs21ib>X</fs21ib>
            <fs30i>X</fs30i>
        </lc>
        <p>
            <fs16i>X</fs16i>
            <fs18i>X</fs18i>
        </p>
        <l>
            <fs16i>X</fs16i>
            <fs18i>X</fs18i>
        </l>
        <w>
            <fs16i>X</fs16i>
            <fs18i>X</fs18i>
        </w>
        <pw>
            <d>X</d>
            <h>X</h>
        </pw>
        <add><b></b></add>
    </support>



    <reference></reference>



    <example></example>



  </func>
</root>
