This example shows several possibilities of writing and reading files as well as working with directories. Synchronous and asynchronous function calls are used.
This example is now available for you in CODESYS Forge.
for the usage of a CODESYS Software or CODESYS Software Package
General Terms of License (End User License Agreement) for the supplied Software. Please read this Software User Agreement carefully before using the supplied Software. Downloading or installation of the Software constitutes recognition by the customer of the conditions of this Agreement.
The following conditions are agreed between you as the software user and the company 3S-Smart Software Solutions GmbH (hereinafter referred to as 3S), 87439 Kempten (Germany) and are legally binding.
With this license agreement, you acquire the permission of use for Software from 3S (e. g. http://codesys.com, http://store.codesys.com). Some products may only be used for a limited period of time (Products with the name affix “Abo”, “Abonnement” or “Subscription”). If you do not agree to the following license agreement, then you, the user, are not permitted to save and/or install the Software. Should you have already installed the Software, and you do not agree to the license agreement, then immediately delete or uninstall the Software.
§ 1 Object of the License Agreement
The object of the License Agreement is the supplied Software that you have received either directly or from the CODESYS Store. With the provided Software, the user is in the position to use and/or to extend the CODESYS Development System and/or implement a CODESYS runtime environment on a specific programmable logic controller (PLC), herein termed "device". The user has the right to install the functions of the Software after installation of the device software and/or the CODESYS Development System.
In this way, the user can use the functions as specified in the data sheet of the Software.
§ 2 Geographic Restriction
§ 3 Rights of Use
Different license models grant different usage rights. A CODESYS Softcontainer or CODESYS Key (hardware dongle) is required to use the demo, full or time license.
Free: Software that is indicated as "Free" in the CODESYS Store is not subject to an automatic license check by the manufacturer and can be used free of charge.
Demo: The user can order a simple and non-transferable demo license to the supplied Software, depending on availability. The license protected demo software is free of charge but limited by time and/or functionality.
Full: The provided Software is protected by license and requires a fee. The user acquires an unrestricted, simple, and non-transferable license to use the supplied Software with no restrictions.
Time license: Alternatively, a time-limited license is offered to the user, with which the user acquires a simple, non-transferable license to use the delivered software for an agreed, contiguous period.
It is not permitted to edit, modify, disassemble or decompile the Software or to use other processes of reverse engineering to by-pass the licensing mechanism, or to have these processes performed by third parties, insofar as this is not absolutely required for exploiting the rights that result from licenses in all events for open source components.
The Software can be components that are licensed as open source software. For these components, the contents of the respective open source licenses apply, as also stored in the Software. The list of components with the terms and conditions of license are available for reading before purchase and are also included in the Software. The licensee receives a simple rights of use from the respective right holders for using the open source software under the conditions as provided for it by the respective valid license terms. The provided license terms apply to only the components that are not licensed as open source software.
All rights regarding the usage and exploitation of the software and Software remain reserved to 3S.
§ 4 Warranty
4.1. The manufacturer warrants that the installed Software will substantially conform to its documentation or data sheet. The following restrictions shall apply. In particular, there is no warranty that the Software fulfills the specific requirements of the user, serves his specific purpose and works together with all the other programs selected by the user, in so far as interfaces to these programs have not been agreed upon in writing.
4.2. It is deemed to be agreed and the user recognizes and accepts that, according to the current state of knowledge and technology, it is not possible to create software in such a way that it works without errors or faults under all application conditions. A deviation from the agreed properties of the Software can only be considered significant if normal operation is substantially disrupted. If a disruption occurs under exceptional circumstances, this cannot be considered as a deviation from the agreed properties of the Software.
4.3. The user shall immediately examine the Software supplied, shall establish its appropriateness for the intended purpose and shall immediately issue complaints about initial or non-initial errors/defects in detail and in such a way that the error/defect can be reproduced by the manufacturer. The user agrees to provide 3S with material giving information on the nature and occurrence of these errors/defects in order to contribute to their localization and correction. The user bears sole responsibility for the selection, installation and use of the Software, as well as for the intended results thereof.
4.4. The manufacturer does not provide a warranty for errors or defects that are caused by or result from the following circumstances:
(a) Incorrect or insufficient maintenance or parameterization
(b) Operation outside the software’s specification
(c) Incorrect preparation and/or maintenance of the installation location
(d) Interaction with hardware or software not released by the manufacturer
A special guarantee which could result in additional rights is not provided.
4.5. Any defects with regard to the supplied Software (including defects with regard to the program description and any other documents provided along with the Software), will be rectified by the manufacturer within an appropriate period of time. The manufacturer has the right to decide between rework/repair free of charge or replacement at its own discretion.
4.6 The conditions for liability and warranty in these license terms are valid for the complete Software with respect to the manufacturer. The liability and warranty conditions of the open source licenses are valid between the user and the open source right holders.
§ 5 Limitation of Liability
The Software can be used for numerous applications. The user shall decide independently whether or not it is also appropriate for the actual intended application. After installation, the user is responsible for the Software functioning according to its specifications.
The manufacturer is liable for intentional acts and gross negligence. The manufacturer shall be liable for slight negligence only if this involves the breach of a major obligation deemed essential for the purpose of the contract (cardinal obligation) and the fulfillment of which the customer may regularly rely upon or for damages resulting from injury to life body or health. The manufacturer is obliged to act with due diligence.
Upon the determination of whether the manufacturer has culpability, it is to be considered that, as a matter of fact, it is not possible to provide software on an error-free basis. For events of slight negligence, total liability is limited to the amount of the foreseeable damage, the occurrence of which must typically be expected; however, the maximum of such liability arising from the contractual relationship is limited to a total of EURO 100,000.00. The manufacturer shall not be liable for other damages, consequential damages, or lost profits.
The preceding provisions also apply in favour of any vicarious agent of the manufacturer. Liability under product liability law remains unaffected. For the loss of data and/or programs, the manufacturer is not liable insofar the damages are based on the fact that the user refrained from conducting data security measures and thereby ensuring that the lost data could be restored with a justifiable expense. Before commissioning the device and an application written with the CODESYS Development System, the user is obligated to perform sufficient tests in a safe environment.
§ 6 Termination
For non-time limited software this Agreement may be terminated at any time by uninstalling from the device the described Software from the manufacturer and destroying all copies thereof.
If the software is limited in time (subscription or subscription), the user agreement ends with the termination of the subscription or subscription on the expiry date of the agreed period of use. The termination of the time limited use can take place at any time, but must take place at the latest one month before the end of the expiration of the temporal limitation, in order to still be effective at the end of the current subscription period. If this does not take place or is done too late, the period of use is automatically extended by the period of the time limit agreed in the data sheet. After the end of the period of use, the functions of the software are no longer available or are only available to a very limited extent.
§ 7 Governing Law
This License Agreement shall be governed by the laws of the Federal Republic of Germany excluding CISG. The place of performance and the court of jurisdiction for all disputes arising from or in connection with this agreement is 87439 Kempten (Germany). Claims may also be asserted against each contracting party in its general place of jurisdiction.
§ 8 Severability Clause
Should one provision of this contract be or become invalid, or should the contract contain a gap, the validity of the remaining provisions shall remain unaffected. In place of the ineffective provisions, or in order to fill the gap, a provision shall apply which, in so far as legally viable, approaches the original intention of the contractual parties as closely as possible, or what can be assumed to have been their intention if they had considered the point in question.