Stellt den C-Quellcode bereit, der zum Vervollständigen des Skeletts myshared.c benötigt wird, das vom Knoten zum Aufruf externer Bibliotheken erzeugt wurde. Fasst erforderliche Header wie extcode.h und optionale LabVIEW-Managerbibliotheken für DLL-Builds zusammen.

Stellen Sie nach dem Erstellen eines Funktionsprototyps zum Erstellen einer DLL in einer befehlsorientierten Programmiersprache die*.c-Datei fertig.

Im Knoten zum Aufruf externer Bibliotheken wird in myshared.c folgender Rumpfcode erzeugt:

  /* Call Library source File */
  #include "extcode.h"
  int32_t avg_num(float a[], int32_t size, float *avg);
  int32_t avg_num(float a[], int32_t size, float *avg)
  {
  /* Insert code here */
  }

Ersetzen Sie /* Fügen Sie den Code hier ein. */ durch den nachfolgenden Funktionscode. Stellen Sie dabei sicher, dass der Code innerhalb der beiden geschweiften Klammern eingefügt wird.

int i;
float sum = 0;
if(a != NULL)
{
for(i=0; i < size; i++)
sum = sum + a[i];
}
else
return (1);
*avg = sum / size;
return (0);

Erforderliche Bibliotheken

Für dieses Beispiel wird die Header-Datei extcode.h für einige einfache Datentypen benötigt. Die Datei extcode.h bietet Zugriff auf LabVIEW-Managerfunktionen für Arbeitsschritte unterschiedlicher Komplexität von der Low-Level-Datenbearbeitung bis hin zu Routinen zum Sortieren und Speichern von Daten. Bei komplexeren DLLs werden Header-Dateien allerdings für alle Bibliotheken benötigt. So muss beispielsweise bei einem DLL-Projekt unter Windows eventuell windows.h einbezogen werden.

Zum Einbinden der LabVIEW-Managerfunktionen in eine DLL muss die LabVIEW-Bibliotheksdatei labviewv.lib zum kompilierten Projekt hinzugefügt werden. Diese Datei ist im Verzeichnis labview\cintools gespeichert.

Die LabVIEW-Managerfunktionen werden für folgende Arbeitsschritte benötigt:

  • Reservieren oder Freigeben von Speicherplatz sowie Größenänderungen von Arrays, Strings oder anderen Datenstrukturen, die mit LabVIEW-Bibliotheken ausgetauscht werden.
  • Arbeiten mit LabVIEW-Pfaden verschiedenen Typs.
  • Arbeiten mit Dateireferenzen innerhalb der Bibliothek.
  • Arbeiten mit einer Support-Manager-Funktion.

Die einzelnen Funktionen sind im Abschnitt LabVIEW-Manager beschrieben.

Nach Fertigstellung der *.c-Datei in einer anderen IDE sollten Sie das Bibliotheksprojekt erstellen.