Neue Antwort erstellen

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

Unsere Datenschutzerklärung wurde aktualisiert. Mit der Nutzung unseres Forums akzeptierst Du unsere Datenschutzerklärung. Du bestätigst zudem, dass Du mindestens 16 Jahre alt bist.

Neu erstellte Beiträge unterliegen der Moderation und werden erst sichtbar, wenn sie durch einen Moderator geprüft und freigeschaltet wurden.

Die letzte Antwort auf dieses Thema liegt mehr als 365 Tage zurück. Das Thema ist womöglich bereits veraltet. Bitte erstellen Sie ggf. ein neues Thema.

Informationen
Frage Bitte beantworten Sie die untenstehende Frage bzw. lösen Sie die untenstehende Aufgabe.
Nachricht
Internet-Adressen werden automatisch erkannt und umgewandelt.
Smiley-Code wird in Ihrer Nachricht automatisch als Smiley-Grafik dargestellt.
Sie können BBCodes zur Formatierung Ihrer Nachricht nutzen.

Vorherige Beiträge 49

  • Ich progge jetzt seit über 5 Jahren mit der Sprache - und ich muss sagen, die Sprache ist jeden Cent wert, den ich damals dafür bezahlt habe.
    Der Einstieg ging sehr schnell und hat damals nur einige Tage gedauert. Auch native API-Programmierung unterstützt die Sprache wie keine andere, was gerade für mich sehr interessant ist. Auch das Umschreiben von zigtausend Zeilen Codes war kein Problem. Die Sprache ist wirklich gut.
  • Erste DLL mit der Sprache erstellt - geht wunderbar einfach durch die hervorragende API Unterstützung..
    Alles, was vorher mit Profan nicht funktionierte, läuft jetzt bestens. :-)
  • Ja, richtig. Kann mich erinnern, diesbezüglich was bei Vista gelesen zu haben. Ist dann auch klar, warum die nicht standardmäßig importiert wird.

    Danke für das Prototype Beispiel - die Hilfe ist da mit der Messagebox etwas dürftig.

    Es kommt mir vor, als wäre es Weihnachten. Die Leute, die die Sprache geschrieben haben, wissen was man zum Programmieren braucht. :-)
  • AHT;834007 schrieb:

    Danke für den Tipp.
    In der Regel braucht man die Prototypes dafür aber ja gar nicht. Bis auf einige Sachen aus der PSAPI.DLL lässt sich eigentlich das wichtigste direkt ansprechen.

    PSAPI solltest Du nicht Importieren, da je nach Windows-Version unterschiedliche Libs zu importieren sind, entweder kernel32.lib oder psapi.lib.
    Besser dynamisch laden in diesem Fall.
    Hier ein Beispiel, es wird die Unicode-Version geladen. Durch den Pseudotype
    im Prototype funktioniert es aber unter ASCII oder Unicode!

    Quellcode

    1. ; DWORD WINAPI GetModuleBaseName(
    2. ; __in HANDLE hProcess,
    3. ; __in_opt HMODULE hModule,
    4. ; __out LPTSTR lpBaseName,
    5. ; __in DWORD nSize
    6. ; );
    7. Prototype GetModuleBaseName(hProcess, hModule, lpBaseName.p-Unicode, nSize.l)
    8. Global GetModuleBaseName.GetModuleBaseName
    9. Define hPsapi = OpenLibrary(#PB_Any, "Psapi.dll")
    10. If hPsapi
    11. GetModuleBaseName = GetFunction(hPsapi, "GetModuleBaseNameW")
    12. EndIf
    Alles anzeigen
  • Danke für den Tipp.
    In der Regel braucht man die Prototypes dafür aber ja gar nicht. Bis auf einige Sachen aus der PSAPI.DLL lässt sich eigentlich das wichtigste direkt ansprechen.
  • Wenn Du calls in PB ausführen möchtest, nutze bitte keine der
    CallFunction, CallFunctionFast usw. funktionen, sondern Prototypes!
    CallFunction können nur Integer und der Compiler kann, wie in XProfan auch,
    die Anzahl der übergebenen Parameter nicht checken.
    Mit Prototypes kannste auch double, float und z.B. pseutotypes übergeben.

    Ist zwar für manchen Einsteiger erstmal schwerer zu verstehen, aber unbedingt zu empfehlen. Genauso wichtig wie EnableExplicit ;-)

    Gruß
    Thomas
  • Am Anfang müsste man in XProfan fast 20 Sekunden warten, bevor man überhaupt sieht, das irgendwas passiert.
    Bringen tut das da auch nicht viel. In PureBasic konnte ich das noch mal versuchen - das hängt die Sache nicht so lange beim Auslesen der riesigen Struktur. Die PureBasic Version ist aber sowieso noch nicht optimiert - in Profan führe ich zum Beispiel direkte Calls aus, in PureBasic nicht.
    Ich möchte auch ganz gerne mal zeigen, um wie viel schneller die Sprache bei gleichem (hier sogar schlechterem) Quelltext ist. :-)