<?xml version="1.0" encoding="utf-8"?>
<feed xml:lang="en" xmlns="http://www.w3.org/2005/Atom"><title>Recent posts to Aufruf von einer Funktion aus einer Bibliothek (CoDeSys V3)</title><link href="https://forge.codesys.com/forge/talk/Deutsch/thread/c2ca2e50c3/" rel="alternate"/><link href="https://forge.codesys.com/forge/talk/Deutsch/thread/c2ca2e50c3/feed.atom" rel="self"/><id>https://forge.codesys.com/forge/talk/Deutsch/thread/c2ca2e50c3/</id><updated>2020-02-28T09:47:47.980000Z</updated><subtitle>Recent posts to Aufruf von einer Funktion aus einer Bibliothek (CoDeSys V3)</subtitle><entry><title>Aufruf von einer Funktion aus einer Bibliothek (CoDeSys V3)</title><link href="https://forge.codesys.com/forge/talk/Deutsch/thread/c2ca2e50c3/?limit=25#55e9" rel="alternate"/><published>2020-02-28T09:47:47.980000Z</published><updated>2020-02-28T09:47:47.980000Z</updated><author><name>saf</name><uri>https://forge.codesys.com/u/saf/</uri></author><id>https://forge.codesys.comc5a21d0915d755771e311cd8fd8512587a1d23c4</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;Hallo,&lt;/p&gt;
&lt;p&gt;ich portiere momentan eine Bibliothek von CoDeSys V2 zu CoDeSys V3 und bin hier auf folgendes Problem gestoßen.&lt;/p&gt;
&lt;p&gt;Die Bibliothek soll bei einem bestimmten Ereignis Projekt spezifischen Code ausführen, also eine Funktion die je nach Projekt angepasst wird.&lt;br/&gt;
Z.b. in der Bibliothek wird die Funktion F_ProjectSpecificCode an einer bestimmten Stelle (innerhalb der Bibliothek) aufgerufen, welche dann für jedes Projekt implementiert und angepasst wird. Unter CoDeSys V2 hat dies einwandfrei funktioniert. Unter CoDeSys V3 erhalte ich folgenden Fehler.&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="o"&gt;[&lt;/span&gt;&lt;span class="n"&gt;FEHLER&lt;/span&gt;&lt;span class="o"&gt;]&lt;/span&gt;&lt;span class="w"&gt;        &lt;/span&gt;&lt;span class="nl"&gt;xxxLibrary&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;FB_XXX&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;Zeile&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;134&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;Spalte&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;Impl&lt;/span&gt;&lt;span class="p"&gt;))&lt;/span&gt;&lt;span class="err"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;Bezeichner&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;'F_ProjectSpecificCode '&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;nicht&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;definiert&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;span class="o"&gt;[&lt;/span&gt;&lt;span class="n"&gt;FEHLER&lt;/span&gt;&lt;span class="o"&gt;]&lt;/span&gt;&lt;span class="w"&gt;        &lt;/span&gt;&lt;span class="nl"&gt;xxxLibrary&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;FB_XXX&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;Zeile&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;134&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;Spalte&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;Impl&lt;/span&gt;&lt;span class="p"&gt;))&lt;/span&gt;&lt;span class="err"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;Programmname&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;oder&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;Funktionsblockinstanz&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;an&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;Stelle&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;von&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;'F_ProjectSpecificCode '&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;erwartet&lt;/span&gt;&lt;span class="w"&gt;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;


&lt;p&gt;Wenn ich bei den Eigenschaften der Funktion 'F_ProjectSpecificCode' unter Übersetzten mit den "Systemaufruf ermöglichen", "Immer einbinden" rumspiele und immer wieder neu übersetzte, dann "findet" der Kompiler irgendwann die Funktion. Ich vermute mal, dass der Kompiler zuerst die Bibliotheken kompiliert und zu dem Zeitpunkt 'F_ProjectSpecificCode' nicht findet.&lt;/p&gt;
&lt;p&gt;Vielen Dank schonmal!&lt;/p&gt;
&lt;p&gt;Sascha&lt;/p&gt;&lt;/div&gt;</summary></entry></feed>