<?xml version="1.0" encoding="utf-8"?>
<feed xml:lang="en" xmlns="http://www.w3.org/2005/Atom"><title>Recent posts to Einbinden von externen DLLs in CoDeSys V3</title><link href="https://forge.codesys.com/forge/talk/Deutsch/thread/03a9a3f5a2/" rel="alternate"/><link href="https://forge.codesys.com/forge/talk/Deutsch/thread/03a9a3f5a2/feed.atom" rel="self"/><id>https://forge.codesys.com/forge/talk/Deutsch/thread/03a9a3f5a2/</id><updated>2020-02-27T23:37:38.684000Z</updated><subtitle>Recent posts to Einbinden von externen DLLs in CoDeSys V3</subtitle><entry><title>Einbinden von externen DLLs in CoDeSys V3</title><link href="https://forge.codesys.com/forge/talk/Deutsch/thread/03a9a3f5a2/?limit=25#3eff" rel="alternate"/><published>2020-02-27T23:37:38.684000Z</published><updated>2020-02-27T23:37:38.684000Z</updated><author><name>Anonymous</name><uri>https://forge.codesys.com/u/*anonymous/</uri></author><id>https://forge.codesys.come4472e632a529a08be595344696bb9c75e67c43f</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;&lt;em&gt;Originally created by:&lt;/em&gt; thomas_nienstaedt&lt;/p&gt;
&lt;p&gt;Super!&lt;/p&gt;
&lt;p&gt;Vielleicht gibt es auch ein kleines Bsp!?&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>Einbinden von externen DLLs in CoDeSys V3</title><link href="https://forge.codesys.com/forge/talk/Deutsch/thread/03a9a3f5a2/?limit=25#28df" rel="alternate"/><published>2020-02-27T23:37:34.019000Z</published><updated>2020-02-27T23:37:34.019000Z</updated><author><name>DFreiberg</name><uri>https://forge.codesys.com/u/dfreiberg/</uri></author><id>https://forge.codesys.com6346523b0ccbbcae4217b57f5d25dca358616dd7</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;Bibliotheken, die im Laufzeitsystem in ANSI-C implementiert sind, werden als externe Bibliotheken bezeichnet. Wobei in CoDeSys V3 nicht mehr zwischen internen und externen Bibliotheken unterschieden wird.&lt;/p&gt;
&lt;p&gt;In CoDeSys V3 gibt es die Möglichkeit alle extern implementierten Funktionen bzw. Methoden&lt;/p&gt;
&lt;p&gt;einer Bibliothek automatisch in eine Datei für das Laufzeitsystem zu exportieren. Damit sind&lt;/p&gt;
&lt;p&gt;Inkompatibilitäten zwischen der Bibliothek und der Implementierung im Laufzeitsystem&lt;/p&gt;
&lt;p&gt;nahezu ausgeschlossen.&lt;/p&gt;
&lt;p&gt;In dieser erzeugten Datei (genannt m4-Datei) befinden sich alle extern implementierten&lt;/p&gt;
&lt;p&gt;Funktionen und Methoden mit ihrem Namen (entweder wie in CoDeSys definiert oder über&lt;/p&gt;
&lt;p&gt;das Attribut „external_name“ festgelegt), ihrer Schnittstelle, der Version der Bibliothek und der&lt;/p&gt;
&lt;p&gt;Checksumme der Schnittstelle. Diese Datei muss dann mittels einem m4-Compiler zu einer&lt;/p&gt;
&lt;p&gt;ANSI-C Schnittstellen Header Datei übersetzt werden. Zusätzlich besteht die Möglichkeit in&lt;/p&gt;
&lt;p&gt;CoDeSys auch einen C-Source Rahmen für die Implementierung erzeugen zu lassen.&lt;/p&gt;
&lt;p&gt;Die Schnittstellen Header Datei (&amp;lt;bibliotheksnamen&amp;gt;Itf.h) und die Source Datei&amp;lt;/bibliotheksnamen&amp;gt;&lt;/p&gt;
&lt;p&gt;(&amp;lt;bibliotheksnamen&amp;gt;.c) können dann im Laufzeitsystem als Basis für die Implementierung&amp;lt;/bibliotheksnamen&amp;gt;&lt;/p&gt;
&lt;p&gt;einer Komponente verwendet werden, die die Implementierung der externen Funktionen bzw.&lt;/p&gt;
&lt;p&gt;Bausteine enthält. Diese Komponente kann dann ins Laufzeitsystem eingebunden werden.&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>Einbinden von externen DLLs in CoDeSys V3</title><link href="https://forge.codesys.com/forge/talk/Deutsch/thread/03a9a3f5a2/?limit=25#b82d" rel="alternate"/><published>2020-02-27T23:37:32.249000Z</published><updated>2020-02-27T23:37:32.249000Z</updated><author><name>Anonymous</name><uri>https://forge.codesys.com/u/*anonymous/</uri></author><id>https://forge.codesys.com0475ec7ef9046965fa2777d8e10fd3e68b0c6853</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;&lt;em&gt;Originally created by:&lt;/em&gt; plivelic@metaind.de&lt;/p&gt;
&lt;p&gt;Hallo,&lt;/p&gt;
&lt;p&gt;wie kann man die externe DLLs in "SP PLCWinNT" Maschine einbinden?&lt;/p&gt;
&lt;p&gt;Unter Version 2.3 ging es so:&lt;/p&gt;
&lt;p&gt;######################&lt;/p&gt;
&lt;p&gt;In einen C/C++ Template/Richtlinien  eigene C/C++ Rutinen schreiben. Template mit Richtlinien hab ich vom Support bekommen. Daraus resultiert ein DLL. Z.B. "my_C_Library.dll"&lt;/p&gt;
&lt;p&gt;Danach in Registy registrieren:&lt;/p&gt;
&lt;p&gt;REGEDIT4&lt;/p&gt;
&lt;p&gt;&lt;span&gt;[HKEY_LOCAL_MACHINE\SOFTWARE\3S-Smart Software Solutions GmbH\CoDeSys SP\PLC\IODRIVERLIST]&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;"MODULE0"="my_C_Library"&lt;/p&gt;
&lt;p&gt;my_C_Library.dll in Directory mit der "SP PLCWinNT" Maschine kopieren. Bei neustart von der Maschine sind die im DLL vorhandene Funktionen eingebunden.&lt;/p&gt;
&lt;p&gt;########################&lt;/p&gt;
&lt;p&gt;Wie gehet es mit der CoDeSys Version 3?&lt;/p&gt;
&lt;p&gt;Gruß&lt;/p&gt;
&lt;p&gt;Boris&lt;/p&gt;&lt;/div&gt;</summary></entry></feed>