Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
ALWIM
Anmeldungsdatum: 08.08.2006 Beiträge: 1037 Wohnort: Niederbayern
|
Verfasst am: 24.08.2014, 03:45 Titel: Messagebox mit einem String ausgeben? |
|
|
Ich versuche gerade einen Messagebox der WINApi mit einem String auszugeben. Das Problem dabei ist, dass der String einen fortlaufende Nummer hat also "Ausgabe(1)" und immer wieder einen Fehlermeldung bringt. Egal was ich Versuche, es kommt eine Fehlermeldung!
Code: |
Ausgabe(1) = "Dies ist ein Test"
MessageBox(0, Ausgabe(1)) + "Test", MB_ICONINFORMATION) |
Kann man da irgendwas machen?
Im Internet finde ich nichts brauchbares, was mein Problem löst!
Gruß
ALWIM _________________ SHELL SHUTDOWN -s -t 05 |
|
Nach oben |
|
|
Eternal_pain
Anmeldungsdatum: 08.08.2006 Beiträge: 1783 Wohnort: BW/KA
|
Verfasst am: 24.08.2014, 07:08 Titel: |
|
|
Vielleicht richtig schreiben?
Code: |
#Include "windows.bi"
Dim Ausgabe(0 to 9) as String
Ausgabe(1) = "Dies ist ein Test"
MessageBox(0, Ausgabe(1) + "Test", NULL, MB_ICONINFORMATION) |
_________________
|
|
Nach oben |
|
|
ALWIM
Anmeldungsdatum: 08.08.2006 Beiträge: 1037 Wohnort: Niederbayern
|
Verfasst am: 24.08.2014, 16:20 Titel: |
|
|
Zitat: | Vielleicht richtig schreiben? |
Im Quellcode ist es richtig geschrieben! Das hier, war ein Flüchtigkeitsfehler! Keine Ahnung wieso der passiert ist? Trotzdem bekomme ich unten genannte Fehlermeldungen:
Zitat: | Test.o:fake:(.text+0x6fef): undefined reference to `FSOUND_Init@12'
Test.o:fake:(.text+0x7021): undefined reference to `FSOUND_Stream_SetBufferSize@4'
Test.o:fake:(.text+0x7035): undefined reference to `FSOUND_Stream_Open@16'
Test.o:fake:(.text+0x70a1): undefined reference to `FSOUND_Close@0'
Test.o:fake:(.text+0x70b9): undefined reference to `FSOUND_Stream_Play@8'
Test.o:fake:(.text+0x1d094): undefined reference to `FSOUND_Close@0'
Test.o:fake:(.text+0x1dd3c): undefined reference to `FSOUND_Close@0' |
Schon komisch? Werde auf jeden Fall nochmals ein paar Versuche machen.
Gruß
ALWIM _________________ SHELL SHUTDOWN -s -t 05 |
|
Nach oben |
|
|
Eternal_pain
Anmeldungsdatum: 08.08.2006 Beiträge: 1783 Wohnort: BW/KA
|
Verfasst am: 24.08.2014, 16:43 Titel: |
|
|
Vielleicht FSound einbinden oder weglassen? _________________
|
|
Nach oben |
|
|
ALWIM
Anmeldungsdatum: 08.08.2006 Beiträge: 1037 Wohnort: Niederbayern
|
Verfasst am: 24.08.2014, 17:06 Titel: |
|
|
Eternal_pain hat Folgendes geschrieben: | Vielleicht FSound einbinden oder weglassen? |
Jetzt bin ich etwas überfragt? Ich habe im Programm Fmod mit drin. Also Sound! Das was mich so wundert ist, dass die Messagebox ganz am Anfang drin steht und mit allem was danach kommt, nichts zu tun hat. Ohne dem String funktioniert das Programm mit der Messagebox ohne Probleme! Nur diesen String in der Messagebox schluckt er nicht!
Ich weiß gar nicht ob FSound das Problem löst?
Code: | #INCLUDE ONCE "fmod.bi"
#INCLUDE ONCE "WINDOWS.BI"
SCREENRES 640, 320, 32
DIM SHARED AS STRING Sprachausgaben(188)
Sprachausgaben(1) = "Test"
MessageBox(0, Sprachausgaben(1), "Testprogramm", MB_ICONINFORMATION OR MB_SYSTEMMODAL)
SLEEP
END |
Dieser oben stehende Quellcode funktioniert!
Genau so, ist der auch in meinem anderen Testprogramm drin und funktioniert nicht.
Wieso geht eine Messagebox ohne einem String, während die Messagebox mit String Probleme macht?
Vielleicht finde ich das Problem noch?
Danke für eure Hilfe, auch wenn es nicht viel ist!
Gruß
ALWIM _________________ SHELL SHUTDOWN -s -t 05 |
|
Nach oben |
|
|
Eternal_pain
Anmeldungsdatum: 08.08.2006 Beiträge: 1783 Wohnort: BW/KA
|
Verfasst am: 24.08.2014, 17:15 Titel: |
|
|
Hättest lieber was gepostet das NICHT Funktioniert
Wie ist bei deinem anderen Programm die reihenfolge der eingebundenen Libs?
Code: | #INCLUDE ONCE "fmod.bi"
#INCLUDE ONCE "WINDOWS.BI" | geht wie in Deinem Beispiel.
Umgekehrt Code: |
#INCLUDE ONCE "WINDOWS.BI"
#INCLUDE ONCE "fmod.bi"
|
Führt zumindest bei mir zu komplikationen... _________________
|
|
Nach oben |
|
|
ALWIM
Anmeldungsdatum: 08.08.2006 Beiträge: 1037 Wohnort: Niederbayern
|
Verfasst am: 24.08.2014, 17:37 Titel: |
|
|
Eternal_pain hat Folgendes geschrieben: | Hättest lieber was gepostet das NICHT Funktioniert
Wie ist bei deinem anderen Programm die reihenfolge der eingebundenen Libs?
Code: | #INCLUDE ONCE "fmod.bi"
#INCLUDE ONCE "WINDOWS.BI" | geht wie in Deinem Beispiel.
Umgekehrt Code: |
#INCLUDE ONCE "WINDOWS.BI"
#INCLUDE ONCE "fmod.bi"
|
Führt zumindest bei mir zu komplikationen... |
Bei meinem anderen Programm ist die Reihenfolge die gleiche!
Ich kann leider nicht mehr Quellcode posten, da dieser nicht für die Öffentlichkeit bestimmt ist!
so ein Mist ist das! Da schreibt man alles richtig und wundert sich über Fehlermeldungen! echt zum
Tja, die Suche geht weiter...
Vielleicht kann sich ja mal ein anderer User zu der Sache melden? Betrifft schließlich auch andere User mal in irgendeiner Form!
Code: | #INCLUDE ONCE "WINDOWS.BI"
#INCLUDE ONCE "fmod.bi" |
Das macht bei mir auch Probleme!
Gruß
ALWIM
EDIT:
Code: | #INCLUDE ONCE "fmod.bi"
#INCLUDE ONCE "WINDOWS.BI"
DECLARE SUB FONT (WORT AS STRING, HOEHE AS INTEGER, BREITE AS INTEGER, FARBE1 AS INTEGER, FARBE2 AS INTEGER, FARBE3 AS INTEGER)
DECLARE SUB MUSIK
DIM SHARED AS INTEGER L, T, E, XXX
DIM SHARED AS STRING Sprachausgaben(188), Wort, Sound_File
SCREENRES 640, 320, 32
Sprachausgaben(1) = "Test"
MessageBox(0, Sprachausgaben(1), "Testprogramm", MB_ICONINFORMATION OR MB_SYSTEMMODAL)
FONT "Test", 9, 2, &hFFFFFF, &h55FFFF, &h00AAAA
SLEEP
END
SUB FONT (WORT AS STRING, HOEHE AS INTEGER, BREITE AS INTEGER, FARBE1 AS INTEGER, FARBE2 AS INTEGER, FARBE3 AS INTEGER)
'
REM PALETTE 7, 7
COLOR 7
L = LEN(WORT)
CharToOem Wort, Wort
LOCATE HOEHE, BREITE: PRINT WORT;
T = HOEHE * 8 - 8
FOR E = BREITE * 8 - 8 TO BREITE * 8 + L * 8 - 8
FOR XXX = 0 TO 7
IF XXX < 2 AND POINT(E, T + XXX) = 7 THEN PSET (E, T + XXX), FARBE1
IF XXX > 1 AND XXX < 5 AND POINT(E, T + XXX) = 7 THEN PSET (E, T + XXX), FARBE2
IF XXX > 4 AND POINT(E, T + XXX) = 7 THEN PSET (E, T + XXX), FARBE3
NEXT
NEXT
PALETTE
COLOR 15
END SUB
SUB MUSIK
' Musik initialisieren und abspielen
COLOR &hFFFFFF
IF (FSOUND_Init(44100, 4, 0) = 0) THEN
PRINT "Could not initialize FMOD"
SLEEP
END 1
END IF
FSOUND_Stream_SetBufferSize(50)
DIM AS FSOUND_STREAM PTR stream = FSOUND_Stream_Open(Sound_File, FSOUND_MPEGACCURATE, 0, 0)
IF (stream = 0) THEN
PRINT "FMOD could not load '" & Sound_File & "'"
FSOUND_Close()
SLEEP
END 1
END IF
FSOUND_Stream_Play(FSOUND_FREE, stream)
END SUB |
Bei oben stehenden Quellcode gibt es das besagte Problem auch!
Gruß
ALWIM _________________ SHELL SHUTDOWN -s -t 05 |
|
Nach oben |
|
|
St_W
Anmeldungsdatum: 22.07.2007 Beiträge: 949 Wohnort: Austria
|
Verfasst am: 24.08.2014, 20:53 Titel: |
|
|
ALWIM hat Folgendes geschrieben: | Test.o:fake:(.text+0x6fef): undefined reference to `FSOUND_Init@12'
Test.o:fake:(.text+0x7021): undefined reference to `FSOUND_Stream_SetBufferSize@4'
Test.o:fake:(.text+0x7035): undefined reference to `FSOUND_Stream_Open@16'
Test.o:fake:(.text+0x70a1): undefined reference to `FSOUND_Close@0'
Test.o:fake:(.text+0x70b9): undefined reference to `FSOUND_Stream_Play@8'
Test.o:fake:(.text+0x1d094): undefined reference to `FSOUND_Close@0'
Test.o:fake:(.text+0x1dd3c): undefined reference to `FSOUND_Close@0' |
Das sind ja ganz eindeutig Fehler beim Linken. Wenn du keine, eine alte oder eine nicht kompatible Version (Import)Bibliothek verwendest sind diese Fehler doch selbstverständlich!
Andererseits kannst du natürlich auch (anstatt die richtige Bibliothek zu wählen) die Include-Datei (.bi) entsprechend anpassen. _________________ Aktuelle FreeBasic Builds, Projekte, Code-Snippets unter http://users.freebasic-portal.de/stw/
http://www.mv-lacken.at Musikverein Lacken (MV Lacken) |
|
Nach oben |
|
|
ALWIM
Anmeldungsdatum: 08.08.2006 Beiträge: 1037 Wohnort: Niederbayern
|
Verfasst am: 24.08.2014, 21:59 Titel: |
|
|
Ich glaube ich habe wirklich eine alte Version? FMOD.bi Version 3.74f?
Angeblich gibt es schon 3.75
Konnte eine Version 3.75 aus dem Internet bis jetzt runterladen. Keine Ahnung wo ich die finde?
Wenn es nicht klappt, werde ich alles so lassen wie es ist. Dient eh nur einem Programmiertest!
Danke für die Hilfe!
Gruß
ALWIM _________________ SHELL SHUTDOWN -s -t 05 |
|
Nach oben |
|
|
St_W
Anmeldungsdatum: 22.07.2007 Beiträge: 949 Wohnort: Austria
|
Verfasst am: 25.08.2014, 10:17 Titel: |
|
|
ALWIM hat Folgendes geschrieben: | Ich glaube ich habe wirklich eine alte Version? FMOD.bi Version 3.74f?
Angeblich gibt es schon 3.75 | Mit "Alt" hab ich alt in Bezug auf die verwendete fmod.bi gemeint. Die Versionen müssen halt zusammenpassen. Wenn du eine fmod.bi Version 3.74f verwendest, musst du auch eine libfmod.a / libfmod.dll.a + fmod.dll mit dieser Version verwenden. _________________ Aktuelle FreeBasic Builds, Projekte, Code-Snippets unter http://users.freebasic-portal.de/stw/
http://www.mv-lacken.at Musikverein Lacken (MV Lacken) |
|
Nach oben |
|
|
ALWIM
Anmeldungsdatum: 08.08.2006 Beiträge: 1037 Wohnort: Niederbayern
|
Verfasst am: 25.08.2014, 19:27 Titel: |
|
|
Genau die sind das Problem! Die verwende ich bereits und machen Probleme! Ich brauche eine neuere Version und finde keine im Internet zum Download! Jedenfalls nicht direkt. Ich suche jetzt schon Stundenlang danach!
Ze Fix, scheiss Glump verreckts...
5.1 soll es angeblich auch schon geben?
Vielleicht kann mir mal einer einen passenden Link für die .bi geben?
Gruß
ALWIM _________________ SHELL SHUTDOWN -s -t 05 |
|
Nach oben |
|
|
ALWIM
Anmeldungsdatum: 08.08.2006 Beiträge: 1037 Wohnort: Niederbayern
|
Verfasst am: 06.09.2014, 20:16 Titel: |
|
|
Hallo Programmierer,
mir fehlen folgende Dateien:
libfmod.a
libfmod.dll.a
fmod.dll
Die libfmod.a und die libfmod.dll.a habe ich gar nicht einmal?
Die fmod.dll habe ich in der Version 3.7.5 runterladen können. Aber es fehlen halt die anderen beiden Dateien!
Bringe mein Programm in der Form nicht zum laufen! So gut wie alles probiert. Keine Chance!
Bin jedem dankbar, der mir sagen kann, wo ich die Dateien aus dem Internet runterladen kann.
Bin ratlos? Letzteres Mittel, was ich ungerne anwenden möchte, ist die Verwendung einer anderen Bibliothek!
Gruß
ALWIM _________________ SHELL SHUTDOWN -s -t 05 |
|
Nach oben |
|
|
Eternal_pain
Anmeldungsdatum: 08.08.2006 Beiträge: 1783 Wohnort: BW/KA
|
Verfasst am: 06.09.2014, 20:57 Titel: |
|
|
Soweit ich in Erinnerung habe war fmod closed source und statische dlls gibt es mMn keine (evtl. bei einer version für kommerzielle nutzung? (gebührenpflichtig?!))? Kann mich aber irren, habe ebenfalls die fmod 3.7.5.0 und das glaube schon ewig, geht bisher wunderbar, damit ich diese nicht ständig rumkopieren brauch liegt diese im lib/win32/ verzeichniss
Edit: Scheint ein konflikt/problem mit dem aktuellen fbc und fmod zu geben, mit der 0.24.0 geht es problemlos _________________
|
|
Nach oben |
|
|
ALWIM
Anmeldungsdatum: 08.08.2006 Beiträge: 1037 Wohnort: Niederbayern
|
Verfasst am: 07.09.2014, 13:03 Titel: |
|
|
Zitat: | Edit: Scheint ein konflikt/problem mit dem aktuellen fbc und fmod zu geben, mit der 0.24.0 geht es problemlos |
Ich weiß nicht wieso, aber wenn ich auf kompilieren gehe (nicht auf ausführen), dann funktioniert es! Ich bin bisher immer auf ausführen (kompilieren + Programmstart - bei Fbedit der Button: Start) gegangen. Und was noch interessant ist: Die Bibliotheken sind nicht im Ordner drin! Alles mit der aktuellsten Version 0.90.1 getestet!
noch interessanter ist, dass das in dem einen Ordner geht und in dem anderen nicht! Sind beide von mir erstellt worden und tragen einen von mir frei gewählten Namen!!!
Schon komisch?
Auf jeden Fall geht es jetzt!!!
Ich danke allen für die suche nach der Ursache! Auch wenn, ich nicht weiß woran es liegt, warum das so ist, so habe ich doch allen ein wenig geholfen!
Gruß
ALWIM _________________ SHELL SHUTDOWN -s -t 05 |
|
Nach oben |
|
|
nemored
Anmeldungsdatum: 22.02.2007 Beiträge: 4597 Wohnort: ~/
|
Verfasst am: 07.09.2014, 15:59 Titel: |
|
|
Zitat: | Ich bin bisher immer auf ausführen (kompilieren + Programmstart - bei Fbedit der Button: Start) gegangen. |
Ich weiß nicht, wo FBEdit seine temporäre .bas- und.-exe-Datei speichert, aber wenn das nicht der Ordner ist, in dem die DLL liegt, wird es nicht funktionieren. _________________ Deine Chance beträgt 1:1000. Also musst du folgendes tun: Vergiss die 1000 und konzentriere dich auf die 1. |
|
Nach oben |
|
|
|