Nein!! Ich bin gerade dabei, ein Spiel zu programmieren, heute, um 11:12:49 den letzten Test abgeschlossen, als da was auf mich wartet: Nun gu - Ich habe [F5] gedrückt und da ist eine Fehlermeldung gekommen
Die Anwendung konnte nicht gestartet werden, weil MIDAS11.DLL nicht gefunden wurde. Neuinstallation der Anwendeung könnte das Problem beheben.
Obwohl ich doch Midas11.dll im Spiele-Ordner habe. Wenn es euch interessiert hier ein Teil der Init()-Befehle
Win 7 Home Premium 64 bit | PureBasic 5.20 - x86 und x86-64 | Firefox [aktuelle stable-Version hier einfügen]
"Jeder macht irgendwann mal Fehler, darum gibt's auch Bleistifte mit Radiergummi." --Carl
Aber wenn er das Programm startet, dann liegt das Programm im Compiler-
verzeichniss. Und Windows sucht nach den DLLs an ganz bestimmten Orten
bevor es ne Fehlermeldung gibt.
Magix-Soft <Kain> hat geschrieben:
Beim Testen wird automatisch der Datei pfat vom projekt Verzeichnis automatisch eingesetzt.
Aber nicht für statisch gebundenen DLLs, nur für dynamische DLLs, Bilder usw. wird der richtige Pfad simuliert. Statisch gebundene DLLs müssen also im compilersverzeichnis oder in System bzw. System32-Ordner sein, da sie so geladen werden wie API-DLLs, die sich auch in diesen Verzeichnissen befinden. Ich hoffe das ist halbwegs verständlich
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Win 7 Home Premium 64 bit | PureBasic 5.20 - x86 und x86-64 | Firefox [aktuelle stable-Version hier einfügen]
"Jeder macht irgendwann mal Fehler, darum gibt's auch Bleistifte mit Radiergummi." --Carl
If InitSound() = 0
MessageRequester("Error", "DirectX 7 not available.") : End
EndIf
If InitModule() = 0
MessageRequester("Error", "MIDAS11.dll not available.") : End
EndIf
FileName$ = OpenFileRequester("","","Modules (*.mod, *.xm, *.it)|*.mod;*.xm", 0)
If FileName$
If LoadModule(0, FileName$)
PlayModule(0)
MessageRequester("PureBasic - Module player", "Playing the module...")
; Now, perform a nice fading...
;
For k=100 To 0 Step -1
Delay(20)
ModuleVolume(0, k)
Next
Else
MessageRequester("Error", "Can't load the module or bad module format.")
EndIf
EndIf
End
Die midas11.dll muß sich im Compilers und bei der Weitergabe im
Programm-Ordner deines Programms befinden (System32 usw. gehen auch)
Deine Abfrage nach der DLL funktioniert so nicht, weil die DLL statisch
gebunden ist, das geht nur bei dynamisch gebundenen DLLs. So wird immer
Windows die Fehlermeldung ausgeben, nicht PureBasic!!!
Der Fehler tritt vor InitModule() auf, beim Start!!!
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Statisch gebunden, Windows Fehlermeldung?
Macht einfach mal einen Tags und schreibt den code so wie ihr meintet weil ich bin blutiger Anfänger, desswegen kappier ich dass nicht.