Deutsch
Forum

Purebasic und prospeed.dll

 
Ich habe da eine Frage. Ich habe Prospeed.dll mal schon einwenig mit Profan aufprobiert und es ist eine tolle Sache. Nun bin ich auf Purebasic aufmerksam geworden. Es hat eine, so finde ich, bessere Syntax. Die Thread und andere Ansätze finde ich sehr spannend. Doch möchte ich die Prospeed.dll nicht verlieren. Zum Beispiel wegen den Tiles und solchen Geschichten. Bei einigen Funktionen hat es gut geklappt. Doch ich frage mich sehr wieso es im folgendem Beispiel nicht funktioniert. Ich habe mir schon die Zähne ausgebissen aber ich finde den Fehler nicht. Und wenn jemand mir einen Tipp geben könnte der vielleicht auch ein wenig Purebasic kennt wäre ich sehr dankbar.

OpenWindow(0,0,0,800,400,#PB_Window_SystemMenu,Fenster 1) ;Fenster erstel
len

string.s = Hintergrund.jpg ;String definieren
WID.l = WindowID(0) ;Windows Handle definieren

If OpenLibrary(0, ProSpeed.dll) ;Dll Öffnen
EndIf

FLoadExtImage.l = IsFunction(0, LoadExtImage) ;Adresse der Funktion

FCopyExtBmp.l = IsFunction(0, CopyExtBmp) ;Adresse der Funktion

background.l = CallFunctionFast(FLoadExtImage, @string) ; Bild Laden mitt
els Prospeed
Fehler.l = CallFunctionFast(FCopyExtBmp,WID,0,0,800,400,background,0,0,0)
;Bild Darstellen

Repeat ;Loop anfang
EventID = WaitWindowEvent() ; Warten auf Ereigniss

If EventID = #PB_Event_CloseWindow ; Ereigniss auswärten
Quit = 1 ; Quit Variable setzen
EndIf

Until Quit=1 ; Loop ende

CloseLibrary(0) ;Dll Schliessen

End ;Ende

Dann denke ich ist es auch an der Zeit dem Frank mal danke zu sagen. Für seine mühe und die super gelungene Prospeed.dll. Sobald ich mein erstes grössere Projekt beendet habe werde ich natürlich auch registrieren.

Vielen dank

NY
 
24.04.2004  
 



Tjaaaaahhhh, ist natürlich nicht so leicht da wohl die meisten hier nicht mit PB arbeiten. Ich persönlich kenne es überhaupt nicht. Gibbed das zum freien Download? Also ich versuche es trotzdem mal, obwohl ich mit meinen Ausführungen warscheinlich scheitern werde.

Also Dein Beispiel im Grunde ist ja dieses: (gekürzt)

OpenWindow(0,0,0,800,400,#PB_Window_SystemMenu,Fenster 1)
string.s = Hintergrund.jpg
WID.l = WindowID(0)
OpenLibrary(0, ProSpeed.dll)
FLoadExtImage.l = IsFunction(0, LoadExtImage)
FCopyExtBmp.l = IsFunction(0, CopyExtBmp)
background.l = CallFunctionFast(FLoadExtImage, @string)
Fehler.l = CallFunctionFast(FCopyExtBmp,WID,0,0,800,400,background,0,0,0)
CloseLibrary(0)

2. Kürzung:

string.s = Hintergrund.jpg
WID.l = WindowID(0)
OpenLibrary(0, ProSpeed.dll)
FLoadExtImage.l = IsFunction(0, LoadExtImage)
FCopyExtBmp.l = IsFunction(0, CopyExtBmp)
background.l = CallFunctionFast(FLoadExtImage, @string)
Fehler.l = CallFunctionFast(FCopyExtBmp,WID,0,0,800,400,background,0,0,0)
CloseLibrary(0)

1. Annahme:

blabla.s <-- das .s bedeutet string, .l = long?

3. Kürzung:

string$ = Hintergrund.jpg
WID& = WindowID(0)
OpenLibrary(0, ProSpeed.dll)
FLoadExtImage& = IsFunction(0, LoadExtImage)
FCopyExtBmp& = IsFunction(0, CopyExtBmp)
background& = CallFunctionFast(FLoadExtImage&, @string)
Fehler& = CallFunctionFast(FCopyExtBmp&,WID&,0,0,800,400,background&,0,0,0)

Wäres es jetzt (nicht syntaktisch) logisch immer noch richtig?

Dann entstehen aber ein paar Fragen:

1.Frage:
Wenn du openlib sagst, bekommst du dann kein Handle? Lässt sich also in PB immer nur eine
DLL zeitgleich ansprechen um den funktionen daraus ein handle zu verpassen?
Oder warum braucht isfunction kein handle?

2.Frage:
Ist das so normal in PB?
string$ = Hintergrund.jpg
CallFunctionFast(FLoadExtImage&, @string)
Ich meine, {string.s und @string } ist das so korrekt in PB oder liegt hier der Fehler?

3.Frage:
Ist es in Prospeed richtig das man wie du im grunde
Copyextbmp (%hwnd,0,0,800,400,LoadExtImage (Hintergrund.jpg),0,0,0) sagen kann?

Also wenn alle drei Fragen mit Ja zu beantworten sind, dann hab ich auch keinen blassen.

Naja, vielleicht hilft es ja trotzdem.

iF
 
24.04.2004  
 



Hallo,

direkt helfen kann ich leider auch nicht.
Allerdings hat Heinz Brill für meine Listview.dll (die ja auch mit MASM32 programmiert ist) einige Quellcodes geschrieben und eine PureBasic Inc-Datei.
Lad dir das doch mal runter und versuche anhand dieser Codes deinen Fehler zu finden. Ist sicher nur eine Kleinigkeit !

Gruß, Frank
 
24.04.2004  
 



Danke ich habe den Feheler gefunden WindowsID() gibt noch nicht das endgültige Handle zurück denn richtig geht das so:

windowDC = GetDC_(windowID)

So funktioniert es dann.

PEACE

NY
 
24.04.2004  
 



Hi,

wenn du mir ein paar PureBasic-ProSpeed Demos (z.B. Bitmaps, Sprite und FX) plus Inc zur Verfügung stellst, erhälst du eine Gratisregistrierung !

Gruß, Frank
 
24.04.2004  
 




pe-bier
hallo, welche pure-basic-version ist das, mit der du arbeitest.
ist ja eine interessante sache.
mfg pebisoft
 
25.11.2004  
 



Antworten


Thementitel, max. 100 Zeichen.
 

Systemprofile:

Kein Systemprofil angelegt. [anlegen]

XProfan:

 Beitrag  Schrift  Smilies  ▼ 

Bitte anmelden um einen Beitrag zu verfassen.
 

Themenoptionen

5.075 Betrachtungen

Unbenanntvor 0 min.
funkheld15.01.2022
Chregu Mueller21.03.2014
RICOSCH03.12.2013
Detlef Jagolski05.05.2012
Mehr...

Themeninformationen

Dieses Thema hat 2 Teilnehmer:

unbekannt (5x)
pe-bier (1x)


Admins  |  AGB  |  Anwendungen  |  Autoren  |  Chat  |  Datenschutz  |  Download  |  Eingangshalle  |  Hilfe  |  Händlerportal  |  Impressum  |  Mart  |  Schnittstellen  |  SDK  |  Services  |  Spiele  |  Suche  |  Support

Ein Projekt aller XProfaner, die es gibt!


Mein XProfan
Private Nachrichten
Eigenes Ablageforum
Themen-Merkliste
Eigene Beiträge
Eigene Themen
Zwischenablage
Abmelden
 Deutsch English Français Español Italia
Übersetzungen

Datenschutz


Wir verwenden Cookies nur als Session-Cookies wegen der technischen Notwendigkeit und bei uns gibt es keine Cookies von Drittanbietern.

Wenn du hier auf unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung von Informationen in unseren Cookies auf XProfan.Net zu.

Weitere Informationen zu unseren Cookies und dazu, wie du die Kontrolle darüber behältst, findest du in unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Ich möchte keinen Cookie