Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
alfonsospringer
Anmeldungsdatum: 27.04.2006 Beiträge: 445
|
Verfasst am: 17.12.2006, 12:29 Titel: dll und visual basic |
|
|
Ich versuche grade einen Spiele-Trainer zu schreiben (siehe qb-forum spiele trainer) und möchte die Benutzeroberfläche mit VB gestalten weil es einfach schneller geht (bitte keine gehässigen Kommentare ) Allerdings ist mir der direkte Speicherzugriff mit VB zu schwer, bzw. villeicht auch nicht, aber ich hab einfach k.a. wie es geht. Deswegen war meine erste Überlegung einfach ein kompiliertes fb "script" zu schreiben, dass über die Kommandozeilen Parameter ($Command) für mich das Peeksen und Pokesen übernimmt. Nun stellte mir sich die Frage ob das zu langsam ist, bzw. zu viel porzessoraktivität, oder ram schluckt, denn ich möchte ja immer noch dazu in der Lage sein ein Spiel spielen zu können.
Falls dies der Fall ist und es wirklich zu viel schluckt wollte ich fragen, ob man mit fb eine dll erstellen kann die den dirketen Speicherzugriff übernimmt. Diese dll müsste dann von einem VB Proggi gesteu8ert werden. Ginge das? Wäre das schneller? Teilt mir bittte eure Gedanekn zu diesem Thema mit.
Ich wünsche allen gläubigen Forenmitgliedern einen fröhlichen 3. Advent _________________ Die Antworten zu fast allen Fragen des Lebens findest du entweder im MonsterFAQ oder der Befehlsreferenz - Und wenn du gar nicht mehr weiter weisst ? -> Wikipedia
ALLE RECHTSCHREIBFEHLER DIE ICH MACHE SIND BEABSICHTIGT, DAMIT DIE LEUTE, DIE SPAß DARAN HABEN SOLCHE ZU FINDEN, ETWAS ZU TUN HABEN |
|
Nach oben |
|
 |
Mao
Anmeldungsdatum: 25.09.2005 Beiträge: 4409 Wohnort: /dev/hda1
|
Verfasst am: 17.12.2006, 12:36 Titel: |
|
|
[OT]
Und allen nicht Gläubigen?
Btw, von mir auch, aber an alle.
[/OT]
Hier im FB-Bereich hatte terminate vor kurzem das Thema sehr detailliert aufgezeigt, evtl. nützt dir das ja was.  _________________ Eine handvoll Glück reicht nie für zwei.
--
 |
|
Nach oben |
|
 |
alfonsospringer
Anmeldungsdatum: 27.04.2006 Beiträge: 445
|
Verfasst am: 17.12.2006, 12:47 Titel: |
|
|
hast ja recht
wenn ich versuche eine dll zu kompilieren (egal ob mit -dylib oder mit -dll)
bekomme ich imme eine Fehlermeldung:
D:\...\win32\ld.exe cannot find lLibrary
was mache ich falsch?
ich habe die test dell von wikibooks benutzt um es auszuprobieren
(http://de.wikibooks.org/wiki/FreeBasic:_DLL) _________________ Die Antworten zu fast allen Fragen des Lebens findest du entweder im MonsterFAQ oder der Befehlsreferenz - Und wenn du gar nicht mehr weiter weisst ? -> Wikipedia
ALLE RECHTSCHREIBFEHLER DIE ICH MACHE SIND BEABSICHTIGT, DAMIT DIE LEUTE, DIE SPAß DARAN HABEN SOLCHE ZU FINDEN, ETWAS ZU TUN HABEN |
|
Nach oben |
|
 |
jb

Anmeldungsdatum: 14.01.2005 Beiträge: 2010
|
Verfasst am: 17.12.2006, 15:15 Titel: |
|
|
Schau mal im examples Ordner von FB, da ist so ein Beispiel im Ordner dll,
das sollte alles erklären, bevor wir uns hier den Mund fusselig reden
jb _________________ Elektronik und Programmieren |
|
Nach oben |
|
 |
Michael Frey

Anmeldungsdatum: 18.12.2004 Beiträge: 2577 Wohnort: Schweiz
|
Verfasst am: 17.12.2006, 17:52 Titel: |
|
|
alfonsospringer hat Folgendes geschrieben: | ich habe die test dell von wikibooks benutzt um es auszuprobieren
(http://de.wikibooks.org/wiki/FreeBasic:_DLL) |
Das kann fehlerhaft/veraltet sein.
Welche Freebasic Version?
Mit 0.16 geht es.
Libary.bas hat Folgendes geschrieben: | Code: | declare sub PrintRot lib "Libary" alias "PrintRot"(text as string)
declare function quadrat lib "Libary" alias "quadrat" (a as double) as double
sub PrintRot(text as string) export
color 4
Print text
end sub
function quadrat(a as double) as double export
return a^2
End function |
|
Das mit
Code: | fbc.exe Libary.bas -dylib |
Kompllieren und es geht bei mir. _________________ http://de.wikibooks.org/wiki/FreeBasic Jede Hilfe für dieses Buch ist Willkommen!
http://de.wikibooks.org/wiki/FreeBasic:_FAQ FAQ zu Freebasic (im Aufbau, hilfe Willkommen)
Neu mit Syntax Highlight |
|
Nach oben |
|
 |
alfonsospringer
Anmeldungsdatum: 27.04.2006 Beiträge: 445
|
Verfasst am: 17.12.2006, 20:04 Titel: |
|
|
wenn ich das mache was du da grad geschrieben hast bekomme ich den oben genannten fehler.
Zu den examples: Bei denen bekomme ich genau den selben fehler _________________ Die Antworten zu fast allen Fragen des Lebens findest du entweder im MonsterFAQ oder der Befehlsreferenz - Und wenn du gar nicht mehr weiter weisst ? -> Wikipedia
ALLE RECHTSCHREIBFEHLER DIE ICH MACHE SIND BEABSICHTIGT, DAMIT DIE LEUTE, DIE SPAß DARAN HABEN SOLCHE ZU FINDEN, ETWAS ZU TUN HABEN |
|
Nach oben |
|
 |
alfonsospringer
Anmeldungsdatum: 27.04.2006 Beiträge: 445
|
Verfasst am: 17.12.2006, 20:58 Titel: |
|
|
Fehler gefunden ! Juhu!
Mein Fehler war, dass ich die Quelldatei immer als LibRary.bas abgespeichert habe, obwol im Header (ob gewollt oder nicht) libary steht.
Tja - manchmal passieren mir die dümmsten Fehler  _________________ Die Antworten zu fast allen Fragen des Lebens findest du entweder im MonsterFAQ oder der Befehlsreferenz - Und wenn du gar nicht mehr weiter weisst ? -> Wikipedia
ALLE RECHTSCHREIBFEHLER DIE ICH MACHE SIND BEABSICHTIGT, DAMIT DIE LEUTE, DIE SPAß DARAN HABEN SOLCHE ZU FINDEN, ETWAS ZU TUN HABEN |
|
Nach oben |
|
 |
Michael Frey

Anmeldungsdatum: 18.12.2004 Beiträge: 2577 Wohnort: Schweiz
|
|
Nach oben |
|
 |
alfonsospringer
Anmeldungsdatum: 27.04.2006 Beiträge: 445
|
Verfasst am: 20.12.2006, 19:45 Titel: |
|
|
der Spruch ist gut !
Kannst de mir villeicht mal erklären wie die declares mit dem alias und dem export bei dll's aufgebaut werden müssen? Ich weiss ja mitlerweile, dass unter lib der name des .bas quellcode kommen muss, aber ich verstehe zb. nicht warum in:
"declare function quadrat lib "Libary" alias "quadrat" (a as double) as double"
der datentyp 2x angegeben wird.
Kannst du mir mal bitte erklären was die einzelnen parameter machen?
P.S.: Ich habe jetzt übrigens FBIDE durch Jellyfish Pro ersetzt, der gefällt mir fast besser _________________ Die Antworten zu fast allen Fragen des Lebens findest du entweder im MonsterFAQ oder der Befehlsreferenz - Und wenn du gar nicht mehr weiter weisst ? -> Wikipedia
ALLE RECHTSCHREIBFEHLER DIE ICH MACHE SIND BEABSICHTIGT, DAMIT DIE LEUTE, DIE SPAß DARAN HABEN SOLCHE ZU FINDEN, ETWAS ZU TUN HABEN |
|
Nach oben |
|
 |
Jojo alter Rang

Anmeldungsdatum: 12.02.2005 Beiträge: 9736 Wohnort: Neben der Festplatte
|
Verfasst am: 20.12.2006, 20:39 Titel: |
|
|
Herzlichen Glückwunsch zu post Nr. 44400!!!  _________________ » Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
 |
|
Nach oben |
|
 |
alfonsospringer
Anmeldungsdatum: 27.04.2006 Beiträge: 445
|
Verfasst am: 20.12.2006, 21:19 Titel: |
|
|
Hab ich einen Preis gewonnen ?
Und jetzt hatte ich doch tatsaechlich einen sinvollen Post erwartet (natuerlich nicht boese gemeint)  _________________ Die Antworten zu fast allen Fragen des Lebens findest du entweder im MonsterFAQ oder der Befehlsreferenz - Und wenn du gar nicht mehr weiter weisst ? -> Wikipedia
ALLE RECHTSCHREIBFEHLER DIE ICH MACHE SIND BEABSICHTIGT, DAMIT DIE LEUTE, DIE SPAß DARAN HABEN SOLCHE ZU FINDEN, ETWAS ZU TUN HABEN |
|
Nach oben |
|
 |
Michael Frey

Anmeldungsdatum: 18.12.2004 Beiträge: 2577 Wohnort: Schweiz
|
Verfasst am: 23.12.2006, 20:04 Titel: |
|
|
alfonsospringer hat Folgendes geschrieben: | "declare function quadrat lib "Libary" alias "quadrat" (a as double) as double"
der datentyp 2x angegeben wird. |
Der Datentyp ist einmal für a und einmal für die Rückgabewert definiert. Ist ja eine Funkition und Funktionen haben in Basic Rückgabe Werte  _________________ http://de.wikibooks.org/wiki/FreeBasic Jede Hilfe für dieses Buch ist Willkommen!
http://de.wikibooks.org/wiki/FreeBasic:_FAQ FAQ zu Freebasic (im Aufbau, hilfe Willkommen)
Neu mit Syntax Highlight |
|
Nach oben |
|
 |
alfonsospringer
Anmeldungsdatum: 27.04.2006 Beiträge: 445
|
Verfasst am: 23.12.2006, 22:50 Titel: |
|
|
danke jetzt verstehe ich alles. alias gibt den namen an mit der die funktion spaeter aufgerufen wird, wenn kein anderer angegeben wird, oder? _________________ Die Antworten zu fast allen Fragen des Lebens findest du entweder im MonsterFAQ oder der Befehlsreferenz - Und wenn du gar nicht mehr weiter weisst ? -> Wikipedia
ALLE RECHTSCHREIBFEHLER DIE ICH MACHE SIND BEABSICHTIGT, DAMIT DIE LEUTE, DIE SPAß DARAN HABEN SOLCHE ZU FINDEN, ETWAS ZU TUN HABEN |
|
Nach oben |
|
 |
Michael Frey

Anmeldungsdatum: 18.12.2004 Beiträge: 2577 Wohnort: Schweiz
|
Verfasst am: 24.12.2006, 09:04 Titel: |
|
|
alfonsospringer hat Folgendes geschrieben: | alias gibt den namen an mit der die funktion spaeter aufgerufen wird, wenn kein anderer angegeben wird, oder? |
Gute Frage.
FB.de
FB.net
Hab mal etwas rumprobiert.
In Quellcode der DLL wird das ALIAS gebraucht, weil sonst die Funktion/Subroutine nicht gefunden wird.
In dem Fall scheint ALIAS also die Funktion zu haben, den Namen in die DLL zuschreiben, damit man die DLL einbinden kann.
Im Quellcode der EXE wird es für das Umgekehrte gebraucht.
Noch mal etwas verständlicher:
Das ALIAS wird gebraucht, damit der Compiler (Linker) weiss, wie die Funktion in der DLL heisst oder heissen soll.
Der Name kann gleich, aber auch anders sein wie der eigentliche Funktionnamen. _________________ http://de.wikibooks.org/wiki/FreeBasic Jede Hilfe für dieses Buch ist Willkommen!
http://de.wikibooks.org/wiki/FreeBasic:_FAQ FAQ zu Freebasic (im Aufbau, hilfe Willkommen)
Neu mit Syntax Highlight |
|
Nach oben |
|
 |
alfonsospringer
Anmeldungsdatum: 27.04.2006 Beiträge: 445
|
Verfasst am: 24.12.2006, 12:28 Titel: |
|
|
ich verstehs, ich verstehs !  _________________ Die Antworten zu fast allen Fragen des Lebens findest du entweder im MonsterFAQ oder der Befehlsreferenz - Und wenn du gar nicht mehr weiter weisst ? -> Wikipedia
ALLE RECHTSCHREIBFEHLER DIE ICH MACHE SIND BEABSICHTIGT, DAMIT DIE LEUTE, DIE SPAß DARAN HABEN SOLCHE ZU FINDEN, ETWAS ZU TUN HABEN |
|
Nach oben |
|
 |
|