WinAPI Library (Snippets) (1163 Beispielcodes)
Re: WinAPI Library (Snippets) (1.052)
Danke für deinen nützlichen Code.
Sowas ähnliches gibt es bereits: http://www.rsbasic.de/aktualisierung/wi ... mitteln.pb
Nur nicht als Modul. Deinen Code kann ich aber trotzdem hinzufügen.
Sowas ähnliches gibt es bereits: http://www.rsbasic.de/aktualisierung/wi ... mitteln.pb
Nur nicht als Modul. Deinen Code kann ich aber trotzdem hinzufügen.
Re: WinAPI Library (Snippets) (1.077)
WinAPI Library 1.4.2 wurde veröffentlicht (25 neue Beispielcodes)
Hinzugefügt:
CalendarGadget: DateGadget: Dateien: ExplorerListGadget: ExplorerTreeGadget: Gadgets: Laufwerke:
Online: http://www.rsbasic.de/winapi-library
Offline: Updaten
Hinzugefügt:
CalendarGadget: DateGadget: Dateien: ExplorerListGadget: ExplorerTreeGadget: Gadgets: Laufwerke:
- Erkennen, ob externer Datenträger angeschlossen wurde
- Ermitteln, ob Laufwerk eine USB-Festplatte ist
- Festplattenspeicherplatz ermitteln
- Ausrichtung nachträglich ändern
- Letztes Wort automatisch kürzen
- Mehrfach formatieren
- Pfad automatisch kürzen
Online: http://www.rsbasic.de/winapi-library
Offline: Updaten
Re: WinAPI Library (Snippets) (1.077)
Kurze Frage : Geht nur mir das so, oder ist der Server unter www.rsbasic.de nicht mehr verfügbar ?
Webseite lässt sich nicht öffnen (Verbindung zum Server fehlgeschlagen)
WinAPILibrary lässt sich nicht aktualisieren (Verbindungsproblem zum Server)
Webseite lässt sich nicht öffnen (Verbindung zum Server fehlgeschlagen)
WinAPILibrary lässt sich nicht aktualisieren (Verbindungsproblem zum Server)
PureBasic 6.10 LTS (Windows x86/x64) | Windows10 Pro x64 | Asus TUF X570 Gaming Plus | R9 5900X | 64GB RAM | GeForce RTX 3080 TI iChill X4 | HAF XF Evo | build by vannicom
Re: WinAPI Library (Snippets) (1.077)
ja, scheint momentan offline zu sein (evtl. Wartungsarbeiten?).
http://www.downforeveryoneorjustme.com/
Grüße ... Peter
http://www.downforeveryoneorjustme.com/
Grüße ... Peter
Hygge
Re: WinAPI Library (Snippets) (1.077)
Ja, die Seite ist leider aus unbekanntem Grund nicht erreichbar. Eine E-Mail habe ich bereits geschrieben. Telefonisch sind sie leider nur Mo-Fr erreichbar.
Re: WinAPI Library (Snippets) (1.077)
Die Seite geht jetzt wieder.
Re: WinAPI Library (Snippets) (1.077)
Weil ich das grade noch hier rumliegen habe: Registry auf Veränderung überwachen (RegNotifyChangeKeyValue_):MS-Link: https://msdn.microsoft.com/en-us/librar ... 85%29.aspx
Code: Alles auswählen
EnableExplicit
#REG_NOTIFY_ALL = #REG_NOTIFY_CHANGE_LAST_SET|#REG_NOTIFY_CHANGE_ATTRIBUTES|#REG_NOTIFY_CHANGE_NAME|#REG_NOTIFY_CHANGE_SECURITY
Define Key, hEvent, Error
Procedure.s LastError(Error)
Protected *MemoryID = AllocateMemory(#MAX_PATH), Message$
If *MemoryID
If FormatMessage_(#FORMAT_MESSAGE_FROM_SYSTEM, #Null, Error, #Null, *MemoryID, #MAX_PATH, #Null)
Message$ = PeekS(*MemoryID)
EndIf
FreeMemory(*MemoryID)
EndIf
ProcedureReturn Message$
EndProcedure
MessageRequester("", "Eine Änderung unter HKEY_CURRENT_USER / AppEvents vornehmen!")
Repeat
If RegOpenKeyEx_(#HKEY_CURRENT_USER, "AppEvents", #Null, #KEY_NOTIFY, @Key) = #ERROR_SUCCESS
hEvent = CreateEvent_(#Null, #True, #False, #Null)
If hEvent
Error = RegNotifyChangeKeyValue_(Key, #True, #REG_NOTIFY_ALL, hEvent, #True)
If Error = #ERROR_SUCCESS
If WaitForSingleObject_(hEvent, #INFINITE) <> #WAIT_FAILED
Debug "Registry wurde unter HKEY_CURRENT_USER / AppEvents verändert!"
EndIf
Else
LastError(Error)
EndIf
CloseHandle_(hEvent)
Else
LastError(GetLastError_())
EndIf
RegCloseKey_(Key)
Else
LastError(GetLastError_())
EndIf
Delay(1000)
ForEver
- tft
- Beiträge: 605
- Registriert: 08.09.2004 20:18
- Computerausstattung: GTX Titan , i9 9900K , 32 GB Ram , 500 GB SSD , 3 ASUS FullHD Monitore and more
- Wohnort: Dachsen
- Kontaktdaten:
Re: WinAPI Library (Snippets) (1.077)
Hallo,
an dieser Stelle eine herzliches danke. Deinen Mühen haben mir einiges an Arbeit gespart.
Aber hier habe ich ein Problem. Das sollte eigentlich Funktionieren aber bei mir gibts eine
Fehlermeldung.
bis auf die Debug Ausgabe entspricht es der Vorlage aus der Lib.
Der Schlüssel und die daten sind in der Registrie vorhanden. Habe ich mit RegEd
geprüft.
Gruss TFT
an dieser Stelle eine herzliches danke. Deinen Mühen haben mir einiges an Arbeit gespart.
Aber hier habe ich ein Problem. Das sollte eigentlich Funktionieren aber bei mir gibts eine
Fehlermeldung.
Code: Alles auswählen
;Autor: nco2k, WeePe
EnableExplicit
Procedure.s sGetXPCDKey()
Protected *bDigitalProductID
Protected *bProductKey.byte
Protected ilByte.l
Protected lDataLen.l
Protected hKey.l
Protected Byte.l
Protected nCur.l
Protected sCDKey.s
Protected ilKeyByte.l
*bDigitalProductID = AllocateMemory(164)
*bProductKey.byte = AllocateMemory(15)
ilByte.l
lDataLen.l
hKey.l
If RegOpenKey_(#HKEY_LOCAL_MACHINE, "SOFTWARE\MICROSOFT\Windows NT\CurrentVersion", @hKey) = #ERROR_SUCCESS
lDataLen = 164
If RegQueryValueEx_(hKey, "DigitalProductId", 0, "REG_BINARY", *bDigitalProductID, @lDataLen) = #ERROR_SUCCESS
For ilByte = 52 To 66
Byte = PeekB(*bDigitalProductID + ilByte) & 255
PokeB(*bProductKey + ilByte - 52, Byte)
Next ilByte
RegCloseKey_(hKey)
Else
Debug("Data nicht gefunden")
RegCloseKey_(hKey)
ProcedureReturn ""
EndIf
Else
Debug("Schlüssel nicht gefunden")
ProcedureReturn ""
EndIf
Debug("Erzeuge String")
Dim bKeyChars.l(23)
bKeyChars(0) = Asc("B")
bKeyChars(1) = Asc("C")
bKeyChars(2) = Asc("D")
bKeyChars(3) = Asc("F")
bKeyChars(4) = Asc("G")
bKeyChars(5) = Asc("H")
bKeyChars(6) = Asc("J")
bKeyChars(7) = Asc("K")
bKeyChars(8) = Asc("M")
bKeyChars(9) = Asc("P")
bKeyChars(10) = Asc("Q")
bKeyChars(11) = Asc("R")
bKeyChars(12) = Asc("T")
bKeyChars(13) = Asc("V")
bKeyChars(14) = Asc("W")
bKeyChars(15) = Asc("X")
bKeyChars(16) = Asc("Y")
bKeyChars(17) = Asc("2")
bKeyChars(18) = Asc("3")
bKeyChars(19) = Asc("4")
bKeyChars(20) = Asc("6")
bKeyChars(21) = Asc("7")
bKeyChars(22) = Asc("8")
bKeyChars(23) = Asc("9")
nCur.l
sCDKey.s
ilKeyByte.l
ilByte.l
Byte.b
For ilByte = 24 To 0 Step -1
nCur = 0
For ilKeyByte = 14 To 0 Step -1
Byte = PeekB(*bProductKey + ilKeyByte) & 255
nCur = ((nCur & 255) * 256) ! Byte
PokeB(*bProductKey + ilKeyByte, (Int(nCur / 24)))
nCur = nCur % 24
Next ilKeyByte
sCDKey = Chr(bKeyChars(nCur)) + sCDKey
If ilByte % 5 = 0 And ilByte <> 0
sCDKey = "-" + sCDKey
EndIf
Next ilByte
ProcedureReturn sCDKey
EndProcedure
MessageRequester("","Windows-Seriennummer: "+sGetXPCDKey(),0)
Der Schlüssel und die daten sind in der Registrie vorhanden. Habe ich mit RegEd
geprüft.
Gruss TFT
TFT seid 1989 , Turgut Frank Temucin , Dachsen/Berlin/Antalya
Aktuelles Projekte : Driving School Evergarden
YouTube : Pure Basic to go
FaceBook : Temuçin SourceMAgic Games
DISCORD : SourceMagic
W10 , i9 9900K ,32 GB Ram , GTX Titan , 3 Monitore FHD
ARDUINO Freak
Aktuelles Projekte : Driving School Evergarden
YouTube : Pure Basic to go
FaceBook : Temuçin SourceMAgic Games
DISCORD : SourceMagic
W10 , i9 9900K ,32 GB Ram , GTX Titan , 3 Monitore FHD
ARDUINO Freak
Re: WinAPI Library (Snippets) (1.077)
Hallo tft,
meinst du diese Fehlermeldng:
PB meckert, weil die Variable oben als Datentyp "Long" definiert wurde und in der Zeile 76 "Byte".
Im Originalcode lautet die Zeile aber:
Und damit funktioniert es. Hast du die Zeile in deinem Editor nachträglich geändert? Wenn nicht, dann war es vielleicht mal vor langer Zeit falsch drin und bei dir wird noch eine ältere PB-Version im Browser angezeigt.
Oder meinst du eine andere Fehlermeldung?
meinst du diese Fehlermeldng:
Bezüglich dieser Zeile:Zeile 76: Variable bereits mit einem anderen Typ deklariert: Byte.
Code: Alles auswählen
Byte.b
Im Originalcode lautet die Zeile aber:
Code: Alles auswählen
Byte.l
Oder meinst du eine andere Fehlermeldung?
- tft
- Beiträge: 605
- Registriert: 08.09.2004 20:18
- Computerausstattung: GTX Titan , i9 9900K , 32 GB Ram , 500 GB SSD , 3 ASUS FullHD Monitore and more
- Wohnort: Dachsen
- Kontaktdaten:
Re: WinAPI Library (Snippets) (1.077)
Hallo,
da habe ich wohl irgendwas probiert ???? aber das ist nicht das Problem
diese Zeile gebt einen Fehler aus. Die Funktion RegQueryValueEx_ gibt <> #ERROR_SUCCESS zurück. Was zu einem Abruch der
Funktion führt.
Fehler Code 2
Gruss TFT
da habe ich wohl irgendwas probiert ???? aber das ist nicht das Problem
Code: Alles auswählen
If RegQueryValueEx_(hKey, "DigitalProductId", 0, "REG_BINARY", *bDigitalProductID, @lDataLen) = #ERROR_SUCCESS
Funktion führt.
Fehler Code 2
Gruss TFT
TFT seid 1989 , Turgut Frank Temucin , Dachsen/Berlin/Antalya
Aktuelles Projekte : Driving School Evergarden
YouTube : Pure Basic to go
FaceBook : Temuçin SourceMAgic Games
DISCORD : SourceMagic
W10 , i9 9900K ,32 GB Ram , GTX Titan , 3 Monitore FHD
ARDUINO Freak
Aktuelles Projekte : Driving School Evergarden
YouTube : Pure Basic to go
FaceBook : Temuçin SourceMAgic Games
DISCORD : SourceMagic
W10 , i9 9900K ,32 GB Ram , GTX Titan , 3 Monitore FHD
ARDUINO Freak