Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht Das deutsche QBasic- und FreeBASIC-Forum
Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
 
FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen  RegistrierenRegistrieren
ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin
Zur Begleitseite des Forums / Chat / Impressum
Aktueller Forenpartner:

freebasic dll grafikausgabe in visual basic nutzen ?
Gehe zu Seite 1, 2, 3  Weiter
 
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu FreeBASIC.
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
tom_verbatim



Anmeldungsdatum: 03.02.2007
Beiträge: 53

BeitragVerfasst am: 04.02.2007, 17:03    Titel: freebasic dll grafikausgabe in visual basic nutzen ? Antworten mit Zitat

Hallo,

mehr durch Zufall bin ich auf Freebasic gestoßen und bin wirklich sehr überrascht über die Möglichkeiten ! Tolle Arbeit; aber das nur am Rande...

Ich möchte eine dll in Freebasic erstellen und in Visual Basic 5 nutzen, ich möchte erstmal nur testen, ob man eine Stringausgabe in einem Grafikfenster hinbekommt !
Leider ist da irgendwo ein Fehler und ich komme da nicht wirklich weiter...

Wie gesagt, ich möchte über die "Dll" einfach Text in einem Grafikfenster(Kein Vollbildmodus) ausgeben !

Der untere Code läuft nicht, entweder hängt sich die Ide von VB5 auf oder wenn es kompiliert ist, beep der Rechner mehr als ungesund ;-(


Was ich noch etwas merkwürdig fand, wenn ich bevor das Grafikfenster im Freebasic Programm aufgerufen wird, ich vorher ein Messagerequester/Infofenster setze, er mir dann aber das Grafikfenster aufbaut...wieso ist das denn?
und wie kann man ein Grafikfenster über die Dll aufgerufen wieder schließen lassen?
Das sind aber jetzt nur Fragen nebenbei, wichtig wäre erstmal, daß der untere Code läuft !

Ich würde mich über Antworten sehr freuen...

Gruß
Thomas
p.s. DANKE AN DEN ADMINISTRATOR, DER MICH HEUTE PER HAND FREIGESCHALTET HAT zwinkern)

Code:


Rem HIER DAS FREEBASIC PROGRAMM ALS -dynlib kompiliert

#include "windows.bi"

function show_string_method_1 alias "show_string_method_1" (byref mystring as string)as integer Export
   
SCREEN 18, 32, 8 or 8
' Ausgabe
for i=1 to 20
   
LOCATE i: PRINT mystring
' Warten bis ESCAPE gedrückt wurde
sleep 50
next

DO
LOOP UNTIL MULTIKEY(1)
 return 0

end function


rem HIER DAS VISUAL BASIC PROGRAMM

rem im ##########  MODUL

Public Declare Function show_string_method_1 Lib "c:\freedll.dll" Alias "show_string_method_1@4" (ByRef mystring As String) As Integer



rem auf ##########  Form1

Private Sub Command1_Click()
Dim test As String
test = show_string_method_1("DAS IST EIN TEST")
End Sub




Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Michael Frey



Anmeldungsdatum: 18.12.2004
Beiträge: 2577
Wohnort: Schweiz

BeitragVerfasst am: 04.02.2007, 18:21    Titel: Re: freebasic dll grafikausgabe in visual basic nutzen ? Antworten mit Zitat

tom_verbatim hat Folgendes geschrieben:
Code:
(byref mystring as string)

Ich bin mir recht sicher, das FB und VB ein anderes Stringformat haben.

Probiermal etwas wie ZString.
_________________
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
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
tom_verbatim



Anmeldungsdatum: 03.02.2007
Beiträge: 53

BeitragVerfasst am: 04.02.2007, 18:30    Titel: zstring geht nicht ;-( Antworten mit Zitat

Hallo,

erstmal Danke für Deine Antwort.


Code:
function show_string_method_1 alias "show_string_method_1" (byref mystring as zstring)as integer Export


wenn ich string in zstring ändere, steigt der compiler mit einer fehlermeldung aus ;-( irgendwas mit expect...

hat evtl. jemand ein beispielcode ? oder noch einen tipp ?

Gruß+Danke
Thomas
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Michael Frey



Anmeldungsdatum: 18.12.2004
Beiträge: 2577
Wohnort: Schweiz

BeitragVerfasst am: 04.02.2007, 19:20    Titel: Re: zstring geht nicht ;-( Antworten mit Zitat

tom_verbatim hat Folgendes geschrieben:

Code:
function show_string_method_1 alias "show_string_method_1" (byref mystring as zstring)as integer Export

Länge muss auch angegeben sein.
Code:
function show_string_method_1 alias "show_string_method_1" (byref mystring as zstring*50)as integer Export


Wie gesagt, ich kenn die VB Seite nicht, ich weiss nur das FB eben ein "exotisches" Stringformat hat.
_________________
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
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
tom_verbatim



Anmeldungsdatum: 03.02.2007
Beiträge: 53

BeitragVerfasst am: 04.02.2007, 19:43    Titel: geht nicht Antworten mit Zitat

hi,

ich kann das nicht compilieren ;-(

auch wenn ich bei zstring die *50 ransetze


der compiler sagt mir Error 57: "illegale spezification "....
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Jojo
alter Rang


Anmeldungsdatum: 12.02.2005
Beiträge: 9736
Wohnort: Neben der Festplatte

BeitragVerfasst am: 04.02.2007, 19:57    Titel: Antworten mit Zitat

Welche Compiler-Version hast du?

Ich empfehle dir wärmstens, den neuesten Compiler zu installierern ,falls du eine ältere Version (z.B. das komplettpaket von freebasic.de) besitzt.
Thread dazu: http://forum.qbasic.at/viewtopic.php?t=3231
_________________
» Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
tom_verbatim



Anmeldungsdatum: 03.02.2007
Beiträge: 53

BeitragVerfasst am: 04.02.2007, 20:01    Titel: compilerversion Antworten mit Zitat

hi,

also meine compilerversion ist die 0.16

und ich arbeite mit dem FBIDE; aber bin natürlich in der Eingabeaufforderung, wenn ich das .bas zur -dynlib compiliere....

gruß thomas
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
tom_verbatim



Anmeldungsdatum: 03.02.2007
Beiträge: 53

BeitragVerfasst am: 04.02.2007, 20:07    Titel: auch 0.17 geht nicht Antworten mit Zitat

so, hab mir jetzt nochmal die letze Version von FB geholt
FB-v0.17b-jul-30

und versucht damit zu compilieren, gleicher fehler ;-(


gruß thomas
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Jojo
alter Rang


Anmeldungsdatum: 12.02.2005
Beiträge: 9736
Wohnort: Neben der Festplatte

BeitragVerfasst am: 04.02.2007, 20:08    Titel: Antworten mit Zitat

Wo genau markiert der compiler den fehler? poste mal bitte die log.
_________________
» Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
tom_verbatim



Anmeldungsdatum: 03.02.2007
Beiträge: 53

BeitragVerfasst am: 04.02.2007, 20:39    Titel: log ? Antworten mit Zitat

die fbide log ausgabe ist leer, ich gebe ja alles in der eingabeaufforderung vo n fbide ein; jedenfalls hier der genaue fehlercode



freedll.bas(3):error 57: Illegal specification, at parameter 1 (mystring) of show_string_method_1()

function show_string_method_1 alias "show_string_method_1" (byref mystring as zstring*50) as integer export
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Michael712
aka anfänger, programmierer


Anmeldungsdatum: 26.03.2005
Beiträge: 1593

BeitragVerfasst am: 04.02.2007, 23:31    Titel: Antworten mit Zitat

Mach mal zstring ptr draus und schreib byval statt byref, dann sollte es gehen.
_________________
Code:
#include "signatur.bi"
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
tom_verbatim



Anmeldungsdatum: 03.02.2007
Beiträge: 53

BeitragVerfasst am: 05.02.2007, 09:47    Titel: geht aber läuft nicht ;-( Antworten mit Zitat

hi,

erstmal danke für den tipp...
ja compilieren läuft jetzt, aber das verhalten des programms ist genau das gleiche...

entweder die ide hängt sich auf oder wenn das prg. compiliert ist, beep es und der bildschirm wird kurz initialisiert aber nicht aufgebaut und bleibt hängen.....


jemand noch ein tipp, wie ich über eine dll aufgerufen in vb5 graphicbildschirm mit text ausgeben kann; die sich NICHT aufhängen ?


danke im vorfeld
thomas
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
alfonsospringer



Anmeldungsdatum: 27.04.2006
Beiträge: 445

BeitragVerfasst am: 05.02.2007, 16:35    Titel: Antworten mit Zitat

Zitat:
Rem HIER DAS FREEBASIC PROGRAMM ALS -dynlib kompiliert


muss das nicht -dylib heissen? Wenn ja kann es gar nicht klappen
_________________
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
Benutzer-Profile anzeigen Private Nachricht senden MSN Messenger
tom_verbatim



Anmeldungsdatum: 03.02.2007
Beiträge: 53

BeitragVerfasst am: 05.02.2007, 17:07    Titel: hi ;-) Antworten mit Zitat

hi

"muss das nicht -dylib heissen? Wenn ja kann es gar nicht klappen"

neee ist schon richtig so, war hier nur ein schreibfehler, arbeite auf zwei rechnern parallel und da kommt sowas schonmal vor zwinkern

übrigens hab ich ja geschrieben, daß ES COMPILIERT WURDE....

das problem ist, das die dll nicht richtig läuft und wahrscheinlich hat das irgendwie mit dem grafikfenster bzw. mit der grafikausgabe zu tun....

WIESO KANN MAN KEINE DLL BAUEN, DIE ÜBER VISUAL BASIC ANGESPROCHEN WIRD, EINEN STRING ÜBERGIBT UND GENAU DIESEN STRING IN EIN GRAFIKFENSTER SETZT ? SOLLTE DOCH MACHBAR SEIN ODER ?

Haben die Grafikausgaben irgendwie mit directx zu tun?

Ich habe die ganze Sache mal versucht in Purebasic zu machen und da ist auch alles abgestürzt; lag aber an directx..aber das nur am Rande...

Help, ist hier KEIN PROFI ;-(((


Schade, wäre ja auch zu schön gewesen

Gruß Thomas
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
alfonsospringer



Anmeldungsdatum: 27.04.2006
Beiträge: 445

BeitragVerfasst am: 05.02.2007, 20:51    Titel: Antworten mit Zitat

war ja nicht boese gemeint zwinkern Ich bin jedenfalls kein Profi, aber es gibt bestimmt jmd hier, der es dir erklaeren kann.
_________________
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
Benutzer-Profile anzeigen Private Nachricht senden MSN Messenger
tom_verbatim



Anmeldungsdatum: 03.02.2007
Beiträge: 53

BeitragVerfasst am: 05.02.2007, 23:16    Titel: ok Antworten mit Zitat

"aber es gibt bestimmt jmd hier, der es dir erklaeren kann!"

wäre schön, aber so langsam glaube ich nicht mehr, daß das überhaupt geht....

stringübergabe an dll und grafikausgabe in freebasic....

s cccccccccccccccccchhhhhhhhhhaaaaaaaaddddddddeeeeeeeeeee

gruß
thomas
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Mao



Anmeldungsdatum: 25.09.2005
Beiträge: 4409
Wohnort: /dev/hda1

BeitragVerfasst am: 06.02.2007, 14:59    Titel: Antworten mit Zitat

Stringübergabe geht, aber bei Delphi gibt es z.B. ähnliche Hürden.
Man kann keine sprachspezifischen Strings nehmen (normalerweise der Datentyp String), da eine DLL normalerweise auch von anderen Anwendungen genutzt wird, die nicht mit dem gleichen Compiler compiliert wurden. Und demzufolge würde erstmal die Argumentübergabe nicht klappen und dann b) auch die String-Übergabe scheitern. Hier musst du also wirklich PString nehmen und in der DLL mit einem Pointer arbeiten.
_________________
Eine handvoll Glück reicht nie für zwei.
--
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
tom_verbatim



Anmeldungsdatum: 03.02.2007
Beiträge: 53

BeitragVerfasst am: 06.02.2007, 18:04    Titel: hmm ? Antworten mit Zitat

Hi,

ich denke, daß problem ist nicht so sehr die dll übergabe wie einen string senden; ich denke, daß hat was mit der grafikausgabe zu tun.


ein string kann ich ja problemlos senden in vb5 an die dll und beispielsweise eine messagebox mit dem übergebenden string ausgeben lassen, daß läuft alles wunderbar, auch kann ich mit werten arbeiten etc.



aber sobald irgendwie was mit grafikausgabe kommt / ABSTURZ
und genau dafür wäre für mich freebasic so gut geeignet .....

hat den niemand mal eine dll für vb entwickelt, die grafik ausgiebt ?


gruß tom
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Mao



Anmeldungsdatum: 25.09.2005
Beiträge: 4409
Wohnort: /dev/hda1

BeitragVerfasst am: 06.02.2007, 18:13    Titel: Antworten mit Zitat

Ah.
Also entweder ich hab das überlesen, oder das hast du nicht gesagt. zwinkern

MUSS es unbedingt über eine FB-DLL sein? Evtl. magst du ja auch mit OpenGL arbeiten?
Die Einarbeitung darin ist wirklich schnell getan. lächeln
_________________
Eine handvoll Glück reicht nie für zwei.
--
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
tom_verbatim



Anmeldungsdatum: 03.02.2007
Beiträge: 53

BeitragVerfasst am: 06.02.2007, 18:25    Titel: Antworten mit Zitat

hi,

hmmm die dll wäre einfach super gewesen, es geht mir jetzt direkt um mein eigentlich schon fast fertiges projekt...

ich habe da ein wortspiel erstellt und möchte nun einfach per string, verschiedene wörter/buchstaben in einem fenster ausgeben, die sich bewegen bzw. ein/ausgeblendet werden/hin und herschweben etc; mit visual basic 5 mitteln ist das nicht so einfach zu machen und directx nein danke, ist mir zu langwierig, mich da einzuarbeiten...

Also wenn ich das komplette Projekt auf Freebasic umstellen müßte ;-( ohje, dann lasse ich es doch lieber...

OpenGL ist ansonsten schon eine schöne sache....

schade, daß es mit freebasic nicht geht, aber warum eigentlich nicht ???und da ist wieder diese eine entscheidene Frage zwinkern


gruß tom


p.s. wer rechtschreibfehler findet bzw. falsche groß und kleinschreibung, kann sie gerne behalten zwinkern
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu FreeBASIC. Alle Zeiten sind GMT + 1 Stunde
Gehe zu Seite 1, 2, 3  Weiter
Seite 1 von 3

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.

 Impressum :: Datenschutz