Seite 3 von 4

Verfasst: 05.11.2006 01:43
von Metaller
Vielen Dank für den Link und den Tipp winduff, aber den und noch viele andere kenne ich und ich habe in der letzten Zeit sehr viel über PB gelesen ;) Ist nicht ironisch gemeint.

Beispiel: Der Befehl "WindowCallback()" ist in der Befehlsreferenz NICHT vorhanden und geht auch nicht aus anderen Sprachen hervor. Das Callback der WinAPI sieht schon ganz anders aus. Wie soll man eine Programmiersprache lernen, wenn man die Befehle nicht kennt? Das ist ja so, als wenn sich ein Blinder mit einem Taubstummen unterhält :?

Verfasst: 05.11.2006 01:45
von Falko
Hier war bzw. ist das eigendliche Problem von Metaller :
http://www.purebasic.fr/german/viewtopic.php?t=10609 :twisted:

Will Metaller doch nicht verkaufen? Dann kann ich diesen Thread ja wieder löschen. :roll:


Grüße ...Falko

Verfasst: 05.11.2006 01:46
von ts-soft
Das WindowsCallback sieht eigentlich in allen Sprachen, wo es genutzt wird gleich aus :D . VB und Delphi gehören nunmal nich dazu, weil die das ganze hinter Classen verstecken. Ein Callback in C sieht fast identlisch aus wie in PB. Nur das PB keine geschwungen Klammern nutzt :mrgreen:

Verfasst: 05.11.2006 01:57
von Metaller
Falko hat geschrieben:Hier war bzw. ist das eigendliche Problem von Metaller :
http://www.purebasic.fr/german/viewtopic.php?t=10609 :twisted:
Ist doch kein Geheimnis :mrgreen:
Falko hat geschrieben:Will Metaller doch nicht verkaufen? Dann kann ich diesen Thread ja wieder löschen. :roll:
Von wollen ist nicht die Rede, aber warum soll es einfach ungenutz bei mir rumliegen.

Ich bringe es mal auf den Punkt. Ich bin zu blöde mir alle möglichen Beispiel Codes durchzusehen um evtl. einen für mich passenden Schnipsel, den ich evtl. nutzen kann/soll/möchte zusammen zu suchen. Weiterhin schaffe ich es nicht einen "einfachen" Quelltext aus VB oder C in PB umzusetzen.

Zur Info, in keinen der Quelltexten wird ein Callback gemacht. Es wurde ein "SendMessageTimeout" geschrieben, der mir nicht das zurückliefert, was ich eigentlich benötige. Dat Ding schmeißt mir immer eine '0' raus *heul*

Verfasst: 05.11.2006 02:01
von ts-soft
In allen wird ein Callback gemacht, ansonsten ist ein Fenster unter Windows
nicht möglich. Sehen tust du es nicht überall, aber zumindest in C sollte es zu
sehen sein :wink:

http://msdn.microsoft.com/library/defau ... owproc.asp

Verfasst: 05.11.2006 02:02
von edel
Das liegt aber nicht an PB, sondern an dem Programm das die
Nachricht empfaengt.

Verfasst: 05.11.2006 02:34
von PMV
Der Befehl "WindowCallback()" existiert so auch garnicht.
SetWindowCallback() gibts in PB ... und dort findet man in der
Befehlsreferenz als Beispiel:

Code: Alles auswählen

  Procedure MyWindowCallback(WindowID, Message, wParam, lParam)
    Result = #PB_ProcessPureBasicEvents
    ;
    ; Ihr Programmcode hier
    ;
    ProcedureReturn Result
  EndProcedure
Damit ist alles wichtige von PB aus erklärt. Den Rest musst du dir über die
WinAPI selber zusammen suchen. ... das gillt so weit ich weis auch für
alle andere Sprachen, aber ich weis nicht wies da genau gelöst ist, so
viele Sprachen kennn ich ja net :lol: ... in C++ dürfteste aber genau das
selbe Problem haben ...

Was die WindowID zurück gibt sollte hier klar sein, für die anderen 3
Parameter gibs z.b. die WinAPI 32 Hilfe, zufinden wenn die noch nicht
hast, hier:
http://www.purearea.net/pb/german/index.htm (unterster Eintrag)
Dort kannste nun nach "Windows Messages" suchen und wirst eine Liste
finden. Und schon sind alle Fragen beantwortet :D ... beispiele dazu gibs
wie schon ein paar mal erwähnt auf purearea.net, hier im Forum z.b. in
dem FAQ-Bereich: http://www.purebasic.fr/german/viewtopi ... 23&start=0
Dort ist ein komplettes Beispiel gepostet.

Ich kann kein ASM, aber wenn du dein Problem im entsprechenden
Forenteil in einem neuen Thread erläuterst kann dir sicher geholfen
werden.

Du siehst, nicht verzagen, erst einmal fragen bevor du dein PB schweren
herzens weg wirfst :D ... deine Problemstellen sind wirklich nicht so
einfach zu durchschauen ... aber dafür ist das Forum doch da :wink:

MFG PMV

Verfasst: 05.11.2006 11:46
von Hellhound66
Da gebe ich Dir recht und PB hört sich für mich super an. Aber es löst nicht mein Problem.
Keine Sprache löst dein Problem. Du löst das Problem. Die Sprache ist nur Werkzeug.

Und was nützt mir ein Beispielcode, der zwar wunderbar funktioniert, ich ihn aber nicht verstehe? Baue ich den dann in mein Programm ein? Kann man machen. Bringt einen aber nicht weiter.

Bleib erstmal bei PB und lerne anhand dieser einfachen Sprache die Geheimnisse des Programmierens und der WinAPI/NET-Architektur. Wenn dir das in Fleisch und Blut übergegeangen ist, kannste PB immer noch verkaufen. Doch dann verspreche ich dir, willst du es nicht mehr missen.

Verfasst: 05.11.2006 14:26
von Metaller
erne anhand dieser einfachen Sprache die Geheimnisse des Programmierens und der WinAPI/NET-Architektur
Hmm, einfache Beispiele habe ich schon einige durch incl. das mehrseitige Einsteigertutorial. Habe alles sofort vertanden. Auch die Übungen zu den DLL's, Pointer, usw. waren kein Problem für mich. Ich habe noch nie etwas anhand von virtuellen Problemstellungen etwas gelernt. Es ist mir einfach zu trocken und mir fehlt der Bezug zu einer "richtigen" Anwendung, die ich benötige. Zum Nachschlagen um eine Problemstellung zulösen sind die Beispielprogramme gut und dann lerne ich auch daraus, aber nur abtippen und etwas verändern um zu sehen was passiert ohne ein Ziel, bringt mir ehrlich gesagt nicht viel.

Ich brauche eine praktische Anwendung/Problemstellung, an der ich mich dann auslassen kann. Ein Beispiel dafür ist die Programmierung eines kleinen Tolls, welches mir ermöglicht über den COM-Port mit meinen µC's zu kommunizieren. Nachdem ich die Einsteigertutorials durchgearbeitet hatte, habe ich mich MVCOM auseinandergesetz. Dadurch habe ich mehr über Fenster und deren Abfragen gelernt, als durch die Übungen der Tutorials. Ich brauche etwas reales zum üben, was man auch später noch gebrauchen kann. Mein Bereich liegt nicht in der Datendankanwendungs- oder Spieleprogrammierung, sondern in der Hardwareschnittstellen- und direkter Speicherprogrammierung. Leider gibt es dazu nur sehr dürftige Erklärungen und Beispiele und muß mich daher an Anwendungen aus anderen Programmiersprachen richten. Ich habe versucht eine solche Anwendung in PB zu übersetze, aber das ging voll in die Hose. Nach jetzt ungefair 60 Stunden intensivster Arbeit, stehe ich noch genau da wo ich am Anfang stand und das kann es nicht sein.

Seit gestern habe ich wieder MSDN (3 CD's) auf meinem Rechner, die ist zwar drei Jahre alt, aber ich denke, dass ich dort noch genug Infos rausziehen kann. Aus Spaß habe ich mal "Error" eingegeben um zusehen was er mir alles über Fehlererkennung und Handhabung ausgibt. Ich wurde erschlagen von der Fülle der Informationen die es über das Thema gibt. Wie soll man sich da durcharbeiten ohne ein praktisches Ziel? Einfach durchlesen? Ich denke, wenn ich alles gelesen habe, dann habe ich das vom Anfang schon wieder vergessen. Wieviele Befehle umfaßt die WinAPI? Ich würde es als hoffnungsloses Unterfangen bezeichen sich die ganzen Befehle anzusehen und kleine Übungen dazu zu machen, dann bin ich ja noch in zwei Jahren, wenn ich damit hinkomme, amprobieren.

Lange Rede, kurzer Sinn, da es keine, oder nur sehr wenige Beispielprogramme für meinen Anwendungsbereich in PB gibt, werde ich mehr oder weniger dazu gezwungen C++ zulernen. Traurig aber wahr und ich muß mich damit abfinden.

Womit ich mich im Moment rumschlage könnt Ihr im Thread nachlesen, den Falco etwas weiter oben gepostet hat nachlesen.

Verfasst: 05.11.2006 14:29
von edel
Handelt es sich dabei Flugsimulation ?

zumindest bekomm ich nichts anderes wenn ich nach 'FSASMLIB' google :D


MSDN auswendig lernen braucht wohl keiner. Du schlaegst das nach
was du brauchst. Mit ein bisschen Uebung wirste auch schnell wichtige
Sachen von dem belanglosen bla bla unterscheiden koennen.