WinAPI Library (Snippets) (1.163)

Windowsspezifisches Forum , API ,..
Beiträge, die plattformübergreifend sind, gehören ins 'Allgemein'-Forum.
RSBasic
Admin
Beiträge: 7882
Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:

WinAPI Library (Snippets) (1.163)

Beitrag 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
Zuletzt geändert von RSBasic am 14.08.2009 20:47, insgesamt 29-mal geändert.
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Beitrag 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
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Benutzeravatar
bobobo
jaAdmin
Beiträge: 3851
Registriert: 13.09.2004 17:48
Kontaktdaten:

Beitrag von bobobo »

ich find's auch ohne prozeduren brauchbar

liegen die infos eigentlich in den html-Dateien oder irgendwie
extern strukturiert rum?
‮pb aktuell5.7 - windoof aktuell und sowas von 10
Ich hab Tinnitus im Auge. Ich seh nur Pfeifen.
PMTheQuick
Beiträge: 630
Registriert: 05.05.2005 19:06

Beitrag 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 ;)
RSBasic
Admin
Beiträge: 7882
Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:

Beitrag von RSBasic »

@ts-soft
Danke fürs Anschauen.

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

@bobobo
HTML.
Benutzeravatar
legion
Beiträge: 467
Registriert: 08.10.2006 18:04
Computerausstattung: Intel Core i5-6500 @ 4x 3.6GHz mit Windows 10 Pro, Intel Core-i7 mit Ubuntu 18.04 bionic, x86_64 Linux 4.18.0-16-generic, Microsoft Surface Pro - Windows 10 Pro
Wohnort: Wien
Kontaktdaten:

Beitrag 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
PB 5.71 LTS Windows 10 Pro & Ubuntu 18.04.2 LTS & Linux Mint 19.3
-----------------------------------------------------
Alles ist, wie man glaubt, dass es ist!
a14xerus
Beiträge: 1440
Registriert: 14.12.2005 15:51
Wohnort: Aachen

Beitrag 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
Benutzeravatar
Kiffi
Beiträge: 10448
Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9

Re: API Library (Snippets)

Beitrag 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
Hygge
RSBasic
Admin
Beiträge: 7882
Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:

Beitrag 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 :)
a14xerus
Beiträge: 1440
Registriert: 14.12.2005 15:51
Wohnort: Aachen

Beitrag 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 ;)
Antworten