AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein LibreOffice-Calc: DLL --> Declare Function-Problem
Thema durchsuchen
Ansicht
Themen-Optionen

LibreOffice-Calc: DLL --> Declare Function-Problem

Ein Thema von Andreas13 · begonnen am 9. Jul 2021 · letzter Beitrag vom 12. Jul 2021
Antwort Antwort
Seite 1 von 2  1 2      
Andreas13

Registriert seit: 14. Okt 2006
Ort: Nürnberg
719 Beiträge
 
Delphi XE5 Professional
 
#1

LibreOffice-Calc: DLL --> Declare Function-Problem

  Alt 9. Jul 2021, 14:05
Hallo Community,
ich würde gerne Berechnungsfunktionen aus meinen Delphi-DLL’s nach Excel-Manier auch in einer Calc-Tabelle von LibreOffice verwenden. Ein einfaches Beispiel sieht z.B. so aus:
Code:
Declare Function Reynolds Lib "SuchPfad\ChemWingsFlow.dll"_
(ByVal w#, ByVal d#, ByVal Ny#) As Double
Und die Benutzung der Routine in der Calc-Tabelle sieht wie folgt aus:
Code:
= REYNOLDS(E6;E7;E8)
Hierbei kommt es stets zu einer Fehlermeldung:
Code:
"BASIC-Laufzeitfehler: Fehler beim Laden einer DLL-Datei."
Meine DLL verwendet stets StdCall; In Excel funktioniert es seit eh und je einwandfrei.

Leder helfen mir dabei selbst die 4 neuesten Bücher über Makro-Programmierung von LibreOfice-Großmeister Thomas Krumbein auch nicht weiter, weil er immer SUB’s mit eigenen Anzeigefenstern verwendet und keine Funktionen, die in die Zellen schreiben. Diese Frage habe ich bereits vor 9 Monaten auch im LibreOfice-Forum gestellt, https://ask.libreoffice.org/de/quest.../39953/opaque/ aber überhaupt keine Antwort bekommen.

1: Was mache ich falsch?
2: Geht es überhaupt, daß meine Routinen aus der DLL direkt in die Zelle(n) der Calc-Tabelle schreiben?
3: Kann man mit Calc eine sogenannte "Matrix-Funktion" (= ein- und mehrdimensionale Arrays) definieren und die Rückgabewerte der Funktion direkt in die Tabellenzellen schreiben?

Kennt vielleicht jemand das Problem von Euch und hat bereits eine Lösung dafür, oder weiß definitiv, daß es in LibreOfice nicht möglich ist?

Herzlichen Dank für Eure Hilfe im Voraus!

Viele Grüße
Andreas
Grüße, Andreas
Wenn man seinem Nächsten einen steilen Berg hinaufhilft, kommt man selbst dem Gipfel näher. (John C. Cornelius)

Geändert von Andreas13 ( 9. Jul 2021 um 14:17 Uhr)
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.276 Beiträge
 
Delphi 10.4 Sydney
 
#2

AW: LibreOffice-Calc: DLL --> Declare Function-Problem

  Alt 9. Jul 2021, 14:18
Hallo,
64bit <-> 32bit - Problem?

Ist Dein LibreOffice 64Bit?
Heiko
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.861 Beiträge
 
Delphi 11 Alexandria
 
#3

AW: LibreOffice-Calc: DLL --> Declare Function-Problem

  Alt 9. Jul 2021, 14:18
Stimmt die Bitigkeit?
Markus Kinzler
  Mit Zitat antworten Zitat
Andreas13

Registriert seit: 14. Okt 2006
Ort: Nürnberg
719 Beiträge
 
Delphi XE5 Professional
 
#4

AW: LibreOffice-Calc: DLL --> Declare Function-Problem

  Alt 9. Jul 2021, 14:20
Meine DLL ist für 32-Bit-Windows kompiliert.
Gruß, Andreas
Grüße, Andreas
Wenn man seinem Nächsten einen steilen Berg hinaufhilft, kommt man selbst dem Gipfel näher. (John C. Cornelius)
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.276 Beiträge
 
Delphi 10.4 Sydney
 
#5

AW: LibreOffice-Calc: DLL --> Declare Function-Problem

  Alt 9. Jul 2021, 14:21
Halo,
Andreas13, ja,
und wie Bittig ist dein LibreOffice?
Heiko
  Mit Zitat antworten Zitat
Andreas13

Registriert seit: 14. Okt 2006
Ort: Nürnberg
719 Beiträge
 
Delphi XE5 Professional
 
#6

AW: LibreOffice-Calc: DLL --> Declare Function-Problem

  Alt 9. Jul 2021, 14:25
LibreOffice ist 64-Bit.
Aber auch mein 64-Bit-Excel kann meine 32-Bit-DLL's benutzen.
Andreas
PS:
Jetzt habt Ihr mich verunsichert...
Nur, um sicher zu gehen: Wie stelle ich fest, welche Bitigkeit mein Excel hat?
Grüße, Andreas
Wenn man seinem Nächsten einen steilen Berg hinaufhilft, kommt man selbst dem Gipfel näher. (John C. Cornelius)
  Mit Zitat antworten Zitat
Andreas13

Registriert seit: 14. Okt 2006
Ort: Nürnberg
719 Beiträge
 
Delphi XE5 Professional
 
#7

AW: LibreOffice-Calc: DLL --> Declare Function-Problem

  Alt 9. Jul 2021, 14:30
Jetzt habe ich's: Mein Excel 2016 hat nur 32-Bit...
Ich muß gleich schauen, ob LibreOffice eine 32-Bit Version hat.
Viele Dank & Gruß,
Andreas
Grüße, Andreas
Wenn man seinem Nächsten einen steilen Berg hinaufhilft, kommt man selbst dem Gipfel näher. (John C. Cornelius)
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.276 Beiträge
 
Delphi 10.4 Sydney
 
#8

AW: LibreOffice-Calc: DLL --> Declare Function-Problem

  Alt 9. Jul 2021, 14:31
Hallo,
im TaskManager steht beim Prozess *32 oder (32Bit), wenn es ein 32-Bit-Programm ist.
Heiko
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.276 Beiträge
 
Delphi 10.4 Sydney
 
#9

AW: LibreOffice-Calc: DLL --> Declare Function-Problem

  Alt 9. Jul 2021, 14:39
Hallo,
Zitat:
Aber auch mein 64-Bit-Excel kann meine 32-Bit-DLL's benutzen.
Nein, kann es nicht.
Aber wie Du schon geschrieben hattest, hast Du ja ein 32Bit-Excel.
Heiko
  Mit Zitat antworten Zitat
venice2
(Gast)

n/a Beiträge
 
#10

AW: LibreOffice-Calc: DLL --> Declare Function-Problem

  Alt 9. Jul 2021, 14:48
Hallo,
Zitat:
Aber auch mein 64-Bit-Excel kann meine 32-Bit-DLL's benutzen.
Nein, kann es nicht.
Aber wie Du schon geschrieben hattest, hast Du ja ein 32Bit-Excel.
Doch, kann es.

Erstelle eine 32Bit.exe die du zwischen der 32Bit_DLL und der 64Bit Anwendung schaltest.
Aus der 32Bit Anwendung sendest du dann über "WM_COPYDATA" die entsprechenden Funktionen an die 64Bit.EXE
Das setzt aber fundierte Kenntnisse der Win_32Api voraus.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:15 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz