Allgemeine Fragen zur PROFAN Programmierung

Views (Heute): 249174 (10610)

| Suchen
| Zurück zur Übersicht

Autor | Thema: MLoadBmp & Bildschirmschoner
Jens Berger
| Datum:16.02.02 18:19 (www.@audi-o-book.com) |
Hallo Ihr da draußen, Ich bin am verzweifeln! Ich hab mir mit viel Mühe und Zeit einen Bildschirmschoner gebastelt, der im Interpreter und als Exe-Datei wunderbar funktioniert. Nur wenn ich eine .SCR daraus mache, bekomme ich die Fehlermeldung Bitmap nicht ladbar. Fehler auf Zeile ... "MLoadBmp". Auch wenn ich versuche mit einem "Grundbildschirmschoner" ein Exe-Programm (mit Befehl: MloadBmp) zu starten, gelingt mir das nicht. Starte ich die SCR-Datei (mit dem Befehl:"MLoadBmp") direkt - mit Mausklik, ist alles normal. ... hab keine Ahnung mehr, was ich noch tun soll ??? (Windows 98/Profan 7.0) Vielleicht hat jemand eine Antwot darauf, vielen Dank - an alle ... jens
Dietmar Horn
| Datum: 16.02.02 19:06 (MMJ-Hoyerswerda@gmx.de) |
Hallo Jens, wenn dein Programm ansonsten im Interpretermodus und auch die *.SCR durch Starten mit Doppelklick einwandfrei funktioniert vermute ich mal, das wird wieder eine dieser leidigen Pfad-Geschichten sein. Entweder du hast verwendet: MLoadBMP "BILD.BMP", dann funktionierts nur, wenn dein Programm aus dem aktuellen Verzeichnis heraus gestartet wird. Oder du hast GetDir zur Bestimmung des aktuellen Verzeichnisses hinzugezogen. GetDir gibt zwar das aktuelle Verzeichnis zurück, doch mit der GETDIR-Lösung bin ich schon sehr, sehr oft auf die Nase gefallen, denn bei diesem Ansatz zur Bestimmung des Programmverzeichnisses geht man davon aus, dass das AKTUELLE Verzeichnis IMMER und auf jedem PC das Programmverzeichnis des in Profan² geschriebenen Programmes ist. Und gerade das stimmt leider NICHT IMMER !!! Nämlich dann nicht, wenn du deine *.SCR ins Windows-Verzeichnis kopiert hast. Es wäre ein ganz großer Zufall, wenn das aktuelle Verzeichnis beim Starten des Bildschirmschoners das Windowsverzeichnis wäre. DEMO zur Bestimmung des Programmverzeichnisses:
    declare prgverz$

    PROC INIT
      declare laufwerk$,pfad$
      pfad$=@Par$(0)
      laufwerk$=@Mid$(pfad$,1,2)
      pfad$=@Del$(pfad$,1,2)
       WhileNot @Equ$(@Mid$(pfad$,@Len(pfad$),1),"\")
         pfad$=@Del$(pfad$,@Len(pfad$),1)
       Wend
     prgverz$ = @add$(laufwerk$,pfad$)
    ENDPROC

    INIT

    Messagebox(prgverz$,"I N F O",64)

    end
In deinem Programm müßte dann also stehen: MLoadBMP prgverz$ + "BILD.BMP" Ich hoffe, das hilft Dir weiter. MfG Dietmar

| Zurück zur Übersicht