[Monkey] Win10 - Laden von C:\test.png nicht möglich

Übersicht Andere Programmiersprachen Allgemein

Neue Antwort erstellen

Ratchet

Betreff: Win10 - Laden von C:\test.png nicht möglich

BeitragSa, Okt 22, 2016 18:33
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich möchte über RequestFile eine beliebige Bilddatei laden. Unter WIndows 10 funktioniert dies nicht. Also habe ich folgendes Testprogramm gemacht, welches eine Datei von C:\ laden soll.
Funktioniert nicht. Unter Mac OS X kann ich jede beliebige Datei von überall laden. Das kann das bloß sein?

Code: [AUSKLAPPEN]
Import mojo2

Class MyApp Extends App

   Field canvas: Canvas
   Field img: Image
   
   Method OnCreate()
      SetUpdateRate 60
      canvas = New Canvas
      img = Image.Load("C:\test.png")
   End
   
   Method OnRender()
      canvas.Clear 0,0,1   
      If img Then
         canvas.DrawImage(img, MouseX, MouseY)
      End   
      canvas.Flush
   End
End

Function Main()
   New MyApp
End
[iMac 27"] [3,4GHz Intel Core i5 ] [8GB Ram] [NVIDIA GeForce GTX 775M 2GB] [MacOS X Yosemite] [BlitzMax + MaxGui] [Monkey X Pro]

BladeRunner

Moderator

BeitragSo, Okt 23, 2016 1:32
Antworten mit Zitat
Benutzer-Profile anzeigen
Nur ins Blaue geraten aber:
- Groß-Kleinschreibung richtig?
- Eventuell / statt \ nehmen.
- versteckte Typbezeichner bei den Dateinamen, und die Datei heisst eigentlich test.png.png ?
- Anderen SpeicherOrt versucht?

Was funktionierte unter Win10 bei Requestfile nicht, werde bitte genauer inder Beschreibung des Fehlers.
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3
Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64
B3D BMax MaxGUI

Stolzer Gewinner des BAC#48, #52 & #92

Ratchet

BeitragMo, Okt 24, 2016 2:18
Antworten mit Zitat
Benutzer-Profile anzeigen
Das Problem ist die Funktion KludgePath in mojo2/graphics.monkey
Diese behandelt Pfade nur mit /
RequestFile liefert aber unter Windows einen Pfad mit \
Das originale KludgePath macht in diesem Fall daraus monkey://C:\test.png
Meine angepasste Version von KludgePath sieht so aus:

Code: [AUSKLAPPEN]
Function KludgePath:String( path:String )
   Local i: Int
   If path.StartsWith( "." ) Or path.StartsWith( "/" ) Return path
   
   i=path.Find( ":\" )
   If i<>-1 Then Return path
   
   i = path.Find( ":/" )
   If i<>-1 And path.Find("/")=i+1 Return path
   
   Return "monkey://data/"+path
End
[iMac 27"] [3,4GHz Intel Core i5 ] [8GB Ram] [NVIDIA GeForce GTX 775M 2GB] [MacOS X Yosemite] [BlitzMax + MaxGui] [Monkey X Pro]

Neue Antwort erstellen


Übersicht Andere Programmiersprachen Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group