Seite 1 von 43

WinAPI Library (Snippets) (1163 Beispielcodes)

Verfasst: 14.05.2008 18:42
von RSBasic
Hallo,

ich wollte schon immer eine Snippets-Seite erstellen, nur ich hatte für so was kein Bock.
Vor ein paar Tagen bekam ich doch Lust und habe mir eine extra Homepage über API-Beispiele angefertigt.
Es ist bis jetzt nicht so viel, aber ich bin fleißig und füge immer ein paar API-Beispiele hinzu.
Da ich mich ja nicht so gut auskenne, kann ich natürlich keine komplexere Beispiele coden, aber das find ich nicht so schlimm.
Ich werd später noch einen Shoutbox hinzufügen, so dass User ihre Meinung abgeben können. (Hier natürlich auch)
Bitte nicht hauen über mein Programmierstil oder über das Klauen eines API-Befehls.
Aber ansonsten ist meine Seite schon etwas fortgeschritten. (93 API-Beispiele)

Feedback ist natürlich erwünscht.
Ich hoffe, es gefällt euch.
Viel Spaß!

http://www.rsbasic.de/winapi-library/

Changelog: http://www.rsbasic.de/winapi_library/Changelog.html

Verfasst: 14.05.2008 18:53
von ts-soft
> Feedback ist natürlich erwünscht.
Eine grundlegende Einweisung in die API habe ich vermißt. Bzw. es wird
noch nicht mal drauf hingewiesen das es sich um die win32 API handelt :mrgreen:
Teilweise wurden Werte statt der API-Konstanten genutzt, solltest versuchen
die richtigen Konstanten zu finden und das auszutauschen.
Du solltest versuchen aus Deinen Snippets wiederverwendbare Proceduren
zu machen, die man einfach in seinen Code einfügen und aufrufen kann.

Ansonsten erstmal danke für die Seite, schöne Sache

Gruß
Thomas

Verfasst: 14.05.2008 19:07
von bobobo
ich find's auch ohne prozeduren brauchbar

liegen die infos eigentlich in den html-Dateien oder irgendwie
extern strukturiert rum?

Verfasst: 14.05.2008 19:33
von PMTheQuick
bobobo hat geschrieben:ich find's auch ohne prozeduren brauchbar

liegen die infos eigentlich in den html-Dateien oder irgendwie
extern strukturiert rum?
In HTML-Dateien, is pures HTML ^^

Gruss
PMTheQuick ;)

Verfasst: 14.05.2008 19:40
von RSBasic
@ts-soft
Danke fürs Anschauen.

Die Hex-Nummer werde ich wahrscheinlich morgen in Konstanten umwandeln.

@bobobo
HTML.

Verfasst: 14.05.2008 21:04
von legion
Gefällt mir sehr gut deine Seite ! :allright:

Hab bei dir jetzt wieder einige nützliche Funktionen gefunden.
Tolle Idee so etwas zu machen !
Mein Vorschlag für eine Erweiterung:
VistaApi

Lg. Legion

Verfasst: 14.05.2008 21:35
von a14xerus
Coole Idee und wie ich finde auch sehr nützlich.
Vielleicht als zusatz noch bei den snippets eine Erklärung daneben, welche api-aufrufe und welche structuren verwendet wurden.
zb benutzen ja alle arbeitsspeicher und Auslagerungsdatei-snippets die selbe funktion / struktur...
wenn dann jeweils die benutzen Funktionen und Strukturen daneben stehen hat man auch direkt einen überblick über die zusammenhänge etc

Re: API Library (Snippets)

Verfasst: 14.05.2008 23:05
von Kiffi
auch von mir ein :allright: für Deine tolle Idee!
Danke für die Mühe, die Du Dir gemacht hast!

Ein wenig konstruktive Kritik hätte ich aber auch ;-)

* Jeweils ein kurzer erklärender Text pro API wäre nützlich. Ich habe mir
beispielsweise gerade die Seite EditorGadget / Zeilenumbruch angeschaut
und muss nun grübeln, was die API macht. Schaltet sie den Zeilenumbruch
ein? Oder aus? Oder sorgt sie dafür, dass ab einer bestimmten
Zeichenanzahl ein Zeilenumbruch stattfindet?

* Wäre auch gut, wenn die News auf der Eingangsseite mit Links zur
jeweiligen API verzweigen würden. Als regelmäßiger Besucher sehe ich
beispielsweise, dass eine neue API für das OptionGadget eingepflegt wurde
und kann dann mit Klick auf diesen Link direkt dorthin springen (und nicht
umständlich über Library / Gadgets / OptionGadget / [NeueAPI]). Bei so
umständlichen' Navigationsmanövern kann es bei älteren Leuten (so wie
ich es bin) mal schnell vorkommen, dass sie vergessen, wo sie eigentlich
hin wollten. ;-)

* und noch 'ne Kleinigkeit zu den Codes selber:

lieber so:

Code: Alles auswählen

If OpenWindow(0,0,0,500,250,"Window",#PB_Window_SystemMenu|#PB_Window_ScreenCentered)
  If CreateGadgetList(WindowID(0))
    OptionGadget(1,10,10,100,40,"Teststring 1"+#CRLF$+"Teststring 2")
    SetWindowLong_(GadgetID(1),#GWL_STYLE,GetWindowLong_(GadgetID(1),#GWL_STYLE) | #BS_MULTILINE)
    Repeat : Until WaitWindowEvent() = #PB_Event_CloseWindow
  EndIf
EndIf
als so:

Code: Alles auswählen

If OpenWindow(0,0,0,500,250,"Window",#PB_Window_SystemMenu|#PB_Window_ScreenCentered)
  If CreateGadgetList(WindowID(0))
    OptionGadget(1,10,10,100,40,"Teststring 1"+#CRLF$+"Teststring 2")
  EndIf
  SetWindowLong_(GadgetID(1),#GWL_STYLE,GetWindowLong_(GadgetID(1),#GWL_STYLE) | #BS_MULTILINE)
  Repeat : Until WaitWindowEvent() = #PB_Event_CloseWindow
EndIf
Sprich: Das If CreateGadgetList() sollte auch den API-Aufruf und die
nachfolgende Event-Schleife klammern (ansonsten macht das If wenig
Sinn)

Nochmals danke für die Seite & Grüße ... Kiffi

Verfasst: 14.05.2008 23:46
von RSBasic
@legion
Mit den neuen API's von Vista muss ich erstmal schauen, da ich grad kein Vista habe (muss erstmal wieder Vista installieren)

@a14xerus
Mit der Struktur muss ich auch schauen, vielleicht setze ich je API-Befehl einen Link zu MSDN, darf man doch oder?

@Kiffi
>Wäre auch gut, wenn die News auf der Eingangsseite mit Links zur
>jeweiligen API verzweigen würden.
Gute Idee, werd ich morgen machen.

>Das If CreateGadgetList() sollte auch den API-Aufruf und die
>nachfolgende Event-Schleife klammern (ansonsten macht das If wenig Sinn)
Stimmt, werd ich morgen ändern.

@All
Vielen Dank,
freut mich, dass es euch gefällt :)

Verfasst: 14.05.2008 23:53
von a14xerus
RSBasic hat geschrieben:@a14xerus
Mit der Struktur muss ich auch schauen, vielleicht setze ich je API-Befehl einen Link zu MSDN, darf man doch oder?
joar sowas in der art würde mir auch schon reichen ;)

ansonsten: einfach klasse :allright: und ich wüsste sons nichts mehr zu verbessern ;)