Teile einer Funk. auslagern als compiliertes Modul oder so

Übersicht BlitzMax, BlitzMax NG Allgemein

Gehe zu Seite 1, 2  Weiter

Neue Antwort erstellen

Markus2

Betreff: Teile einer Funk. auslagern als compiliertes Modul oder so

BeitragFr, Apr 11, 2008 12:25
Antworten mit Zitat
Benutzer-Profile anzeigen
Problem:
Ich habe eine Funktion ungefähr so

Funktion
bla
Formel
bla
End Funktion

der Teil "Formel" kann sich ändern
und den möchte ich austauschbar machen.

Heißt wenn jemand das Programm(EXE) hat
und mit Parameter Formel2 startet soll da diese Formel2
eingesetzt werden wenn er dieses Paket "Formel2" von mir bekommen hat .
Alternative die ganze Funktion austauschen was
dann in einer dll wohl enden würde .
Kann man sowas mit BlitzMax Board mitteln irgendwie lösen ?

Jan_

Ehemaliger Admin

BeitragFr, Apr 11, 2008 13:31
Antworten mit Zitat
Benutzer-Profile anzeigen
jup, mit Bmax kannste Dlls erzeugen, sozusagen, auch das was du willst, machen.
between angels and insects

Farbfinsternis

BeitragFr, Apr 11, 2008 15:28
Antworten mit Zitat
Benutzer-Profile anzeigen
Wenn es sich tatsächlich um eine Formel handelt, würde ich empfehlen diese in LUA zu fassen und nur die Parameter von BMax aus zu senden. LUA verwendet dann die Parameter in der Formel und gibt das Ergebnis an BMax zurück.
Farbfinsternis.tv

Markus2

BeitragFr, Apr 11, 2008 18:09
Antworten mit Zitat
Benutzer-Profile anzeigen
@Jan_
richtige DLLs ???
Wo hast du diese Information her ?

@Farbfinsternis
und von der Geschwindigkeit ?
Im Moment wird mit hilfe der Formel ein Bild
berechnet und das dauert so 9 sek.
Evtl. auch später eine Animation wo man
dann ca. 25 Bilder die Sekunde braucht .
 

D²O

BeitragFr, Apr 11, 2008 18:36
Antworten mit Zitat
Benutzer-Profile anzeigen
Markus2 hat Folgendes geschrieben:
@Jan_
richtige DLLs ???
Wo hast du diese Information her ?




http://www.blitzbasic.com/Comm...opic=66616
Blitz+; Blitz3d; BlitzMax; GLBasic; Purebasic;
GameMaker Studio 1.4xx; AGK;

Markus2

BeitragFr, Apr 11, 2008 19:14
Antworten mit Zitat
Benutzer-Profile anzeigen
@D²O,@Jan_
Ahh Smile
Danke !

BtbN

BeitragFr, Apr 11, 2008 19:16
Antworten mit Zitat
Benutzer-Profile anzeigen
Beachte aber, dass du mit BMax erstellte DLLs nicht weitergeben darfst.

Markus2

BeitragFr, Apr 11, 2008 19:19
Antworten mit Zitat
Benutzer-Profile anzeigen
@BORNtobeNAMELESS
wieso denn das nicht !?
Ist doch mein Quelltext drin .

BtbN

BeitragFr, Apr 11, 2008 19:22
Antworten mit Zitat
Benutzer-Profile anzeigen
http://blitzbasic.com:81/svn/b...bssc.bbdoc
Erstes was ich dazu gefunden habe. Sollte auch irgendwo in den Docs unter "Licenses" auftauchen.

Zitat daraus:
Zitat:
You may distribute executable applications built from
this source code under your own licensing terms. You may
not distribute static or dynamic library files based in
whole or in part on this source code.

Markus2

BeitragFr, Apr 11, 2008 20:31
Antworten mit Zitat
Benutzer-Profile anzeigen
@BORNtobeNAMELESS
damit ist wohl gemeint das man nicht den BlitzMax Quelltext
in eine dll wandeln und weiter geben darf .
Man kann zwar die BlitzMax Module verändern und damit eine
exe machen aber nicht die Module verändert verkaufen .

BtbN

BeitragFr, Apr 11, 2008 20:33
Antworten mit Zitat
Benutzer-Profile anzeigen
Betrachte dir mal das Modul BRL.Blitz.
Es steht unter besagter Lizenz.
Und du kannst BMax NICHT davon abbringen, es einzubauen, weil da so zimlich jede Elementare sache drin ist(String, Object, Type, alles).

Markus2

BeitragFr, Apr 11, 2008 20:42
Antworten mit Zitat
Benutzer-Profile anzeigen
@BORNtobeNAMELESS
ich mache daraus ja auch keine DLL das andere diese Funktionen
aus dem Modul BRL.Blitz nutzen können .
Ich darf ja auch eine EXE machen und da sind quasi auch Teile der
BRL Module drin und die brauche ich schließlich damit überhaupt ein
Programm heraus kommt .

BtbN

BeitragFr, Apr 11, 2008 20:44
Antworten mit Zitat
Benutzer-Profile anzeigen
Deshalb steht ja auch in der Lizenz: Executables sind ok, Librarys nicht.
Die Lizenz will dir sagen: Du darfst dieses stück Code/Modul in ausführbaren Dateien weitergeben, nicht aber in Bibliotheken.
 

klepto2

BeitragFr, Apr 11, 2008 20:50
Antworten mit Zitat
Benutzer-Profile anzeigen
Leider hat BtbN recht, dazu gab es auch schon mehrere Diskussionen auf bb.com . Dll support ist deswegen auch kein offizielles Feature. Und es gibt auch leider kein offizielles Statement zu dieser Situation. Leider sehr schade, da es ein wichtiges Feature nahezu ausschließt. Aber mal sehen was die Zukunft bringt.
Matrix Screensaver
Console Modul für BlitzMax
KLPacker Modul für BlitzMax

HomePage : http://www.brsoftware.de.vu

Markus2

BeitragFr, Apr 11, 2008 20:54
Antworten mit Zitat
Benutzer-Profile anzeigen
Hmm,
ich fasse diese Lizenz zwar anders auf aber werde
dort mal Fragen wenn es soweit ist .
Danke euch für die Hinweise .
 

Dreamora

BeitragFr, Apr 11, 2008 23:05
Antworten mit Zitat
Benutzer-Profile anzeigen
es würde auch nix bringen wenn man es könnte und dürfte (das ist der grund warum der DLL support nur inoffiziel drin ist, denn drin ist er seit 1.22): BM DLLs stürzen gerne ab wenn man callbacks benutzt und zwar egal ob man extern bm callbacks hat oder umgekehrt.
Der GC kann mit diesem asyncronen Verhalten nicht umgehen und es schmiert ab.

Du kannst übrigens von BRL explizit die Erlaubnis für DLL release einholen. Sonst könnte Josh Trashseller Leadwerks auch seine instabile verbuggte Leadwerksengine nicht verkaufen, da sind nämlich zu nicht unerheblichen Teilen BM DLL im spiel.
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen.

Markus2

BeitragSa, Apr 12, 2008 9:31
Antworten mit Zitat
Benutzer-Profile anzeigen
@Dreamora
gut zu wissen Wink
 

ChristianK

BeitragSa, Apr 12, 2008 10:56
Antworten mit Zitat
Benutzer-Profile anzeigen
Wenn in den DLLs sowieso nur die Berechnung statt finden soll, lohnt es sich vielleicht, sie in C++ zu schreiben.
Wird vermutlich schneller sein als BlitzMax.
AdvanceLcd
Intel Core 2 Duo 3.2 GHz, 4 GB RAM, GeForce 8800 GTX | MacBook Pro 15,4″ Intel Core 2 Duo 2.4 GHz, 2 GB RAM, GeForce 8600M GT

Markus2

BeitragSa, Apr 12, 2008 13:39
Antworten mit Zitat
Benutzer-Profile anzeigen
@ChristianK
wäre auch möglich aber dann verlagert sich irgendwie so viel
in die dll was ich eigentlich nicht wollte .
 

ChristianK

BeitragSa, Apr 12, 2008 14:56
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich weiss ja nicht, wie komplex die Formeln sind, aber vielleicht wäre etwas in Richtung "String-Rechnen" ganz praktisch. https://www.blitzforum.de/foru...hp?t=26136
AdvanceLcd
Intel Core 2 Duo 3.2 GHz, 4 GB RAM, GeForce 8800 GTX | MacBook Pro 15,4″ Intel Core 2 Duo 2.4 GHz, 2 GB RAM, GeForce 8600M GT

Gehe zu Seite 1, 2  Weiter

Neue Antwort erstellen


Übersicht BlitzMax, BlitzMax NG Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group