IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

PureBasic 6.30 beta 1 est disponible sur votre compte

Le , par comtois

0PARTAGES

4  0 
Hello everyone,

I hope the holidays season was good ! The brand new beta of PureBasic is available on your online account. It mostly has features which were hanging on my TODO list since a while, and fix a few long time bugs in the process . Here we go:
  • Added: Brand new HID library !
  • Added: Add #PB_ListIcon_NoHeaders flag ListIconGadget()
  • Added: Add #PB_Explorer_NoHeaders flag ExplorerListGadget()
  • Added: Add Unicode() to create a dynamic unicode string like Ascii() and UTF8()
  • Added: HeaderSection/EndHeaderSection to put C or ASM code outside the main() function
  • Added: #PB_InputRequester_HandleCancel to have a special return for InputRequester() if the user cancelled it
  • Added: Gzip encoding support for HttpRequest(), HttpRequestMemory(), RecieveHTTPFile() and RecieveHTTPMemory()
  • Added: #PB_Menu_NativeImageSize tot CreateImageMenu() and CreatePopupImageMenu() to allow larger icons in menus (Windows)
  • Added: #PB_2DDrawing_FastText for DrawingMode() to use have a faster text rendering (Windows).
  • Added: #PB_Mail_NoSSLCheck and #PB_Mail_WeakSSL flags for SendMail() to ease tests.
  • Added: Automatic BOM handling to CreateFile() and ReadFile()/OpenFile() with #PB_File_BOM flag
  • Added: Changed x,y type for DisplaySprite/DisplayTransparentSprite() from integer to float (Not supported on DX9 or DX11 subsystem)
  • Added: Placeholder support for StringGadget() with #PB_String_PlaceHolder flag
  • Added: PackerCallback() to monitor and abort compression.
  • Updated: Splitted the 2DDrawing lib with function which doesn't needed dependencies (https://www.purebasic.fr/english/vie...ic.php?t=87034)
  • Changed: CreateImage() background color now takes full RGBA() color for 32-bit picture. #PB_Image_Transparent and #PB_Image_TransparentBlack can be used to set a transparent background with white or black antialising.


Have fun !

The Fantaisie Software Team
Here is an HID small example, but I don't have an HID device to test, so may be someone can test it. It's based on hidapi: https://github.com/libusb/hidapi . On Linux, it needs udev and libusb1.0 package to work:
sudo apt install libusb-1.0-0-dev libudev-dev
Code : Sélectionner tout
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#PB_HID_Path             = 1
#PB_HID_VendorId         = 2
#PB_HID_ProductId        = 3
#PB_HID_SerialNumber     = 4
#PB_HID_ReleaseNumber    = 5
#PB_HID_Manufacturer     = 6
#PB_HID_Product          = 7
#PB_HID_UsagePage        = 8
#PB_HID_Usage            = 9
#PB_HID_InterfaceNumber  = 10
#PB_HID_BusType          = 11
OpenConsole()

ExamineHIDs()
While NextHID()
  
  Debug HIDInfo(#PB_HID_Product)
  Debug HIDInfo(#PB_HID_Manufacturer)
  Debug HIDInfo(#PB_HID_VendorId)
  Debug HIDInfo(#PB_HID_ProductId)
  Debug HIDInfo(#PB_HID_Path)
  Debug HIDInfo(#PB_HID_SerialNumber)
Wend
Source de l'information
Vous avez lu gratuitement 811 articles depuis plus d'un an.
Soutenez le club developpez.com en souscrivant un abonnement pour que nous puissions continuer à vous proposer des publications.

Une erreur dans cette actualité ? Signalez-nous-la !

Avatar de comtois
Responsable Purebasic https://www.developpez.com
Le 02/09/2025 à 11:25
Un utilisateur a fait un test de la lib HID

I briefly tested the new HID library with Windows 7 x64 and PB x86. Communication with a Brymen BC-86X adapter for a digital multimeter works.
Code : Sélectionner tout
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
EnableExplicit
 
Define iHidNumber.i
Define fResult.i
Define iResult.i
Define c.i
 
Dim aaData.a(4 - 1)
Dim aaBuffer.a(3 * 9 - 1)
 
aaData(0) =$00	; ReportNumber.
aaData(1) =$00	; Command 1
aaData(2) =$86	; Command 2
aaData(3) =$66	; Command 3
 
iHidNumber = OpenHID(#PB_Any, $0820, $0001)
 
fResult = Bool(iHidNumber)
If Not fResult
	Debug("Error OpenHID: " + HIDError())
EndIf
 
If fResult
	iResult = WriteHIDData(iHidNumber, @aaData(0), 4)
	fResult = Bool(iResult)
	If Not fResult
		Debug("Error WriteHIDData: " + HIDError())
	Else
		Debug("iResult WriteHIDData: " + iResult)
	EndIf
EndIf
 
If fResult
	For c = 0 To 2
		iResult = ReadHIDData(iHidNumber, @aaBuffer(c * 9 + 1), 8, 1000)
		If Not iResult
			Debug("Error ReadHIDData: " + HIDError())
			Break
		Else
			Debug("iResult ReadHIDData: " + iResult)
		EndIf
	Next
	ShowMemoryViewer(@aaBuffer(0), 27)
EndIf
 
If iHidNumber
	CloseHID(iHidNumber)
EndIf
0  0