|
DLL Complexes |
|
Stagiaire WDF
Inscrit: 22/12/2004 17:36
Post(s): 1
|
Salut !
Je me met dpeuis quelques temps à Windev que je trouve plus sympa que VB dont j'ai fait le tour et qui n'assure pas au niveau graphique...
Mais voila, j'utilise de longue date la DLL de winrar, a savoir Unrar.dll, fournie gratuitement par le site de winrar.
Comme on peut s'y attendre, cette DLL permet de décompresser des fichiers RAR via le code de l'appli (plus propre que de lancer winrar ou l'autoextraction, et permet d'avoir un affichage de la progression dans l'interface de l'appli)
Bref...après beaucoup de galères, j'ai depuis longtemps réussi à utiliser cette DLL sous VB...
On m'a dit que WinDev était ouvert alors je pensais qu'il pourrait s'en servir...mais voila ce que je lit dans la doc : [...] Paramètres à passer à la fonction de la DLL
Ces paramètres doivent être du même type que les paramètres attendus par la fonction.
Les types utilisables sont les suivants :
Les types "simples" (entier, réel, booléen et pointeur). L'utilisation d'un autre type provoque une erreur du W-Langage. Si la fonction à exécuter attend une adresse, utilisez l'opérateur &. [...]
Bon..le fait est que ma DLL demande des format certes pas simples mais pas non plus exotiques, comme l'entier long non signé...et elle nécessite même de passer une structure en paramêtre...
La doc de Windev me dit qu'il ne peut pas le faire...on me dit pourtant qu'il est ouvert...
Ma question est donc : windev ne peut-il vraiment utiliser les DLL qu'avec des chaines et des entiers ?
Si oui, c'est une limitation impardonnable !
Merci pour vos réponses !
Contribution le : 22/12/2004 17:46
|
|
|
Re: DLL Complexes |
|
Animateur WDF
Inscrit: 22/11/2004 11:23
Post(s): 255
|
Non, il est tout a fait possible de passer des strucures à la DLL. Fait des essai mais il devrait y avoir aucun soucis. Il suffit juste que la strucure soit la copie conforme de ce que attend la fonction de ta DLL et c'est bon.
Au pire, essai de passer un pointeur vers ta structure.
Voilà ;)
Contribution le : 23/12/2004 08:50
|
|
|
Re: DLL Complexes |
|
Animateur WDF
Inscrit: 26/06/2002 16:24
De wdforge.org
Post(s): 2822
|
Voila une ressource qui va vous aider. Notez, s'il vous plait, que les types WinDev sont ceux de WinDev 5.5, lesquels ont évolués depuis. Par exemple en WinDev 7 et ultérieures, les entiers long remplacent les entiers...
Contribution le : 23/12/2004 09:12
|
|
|
Re: DLL Complexes |
|
Animateur WDF
Inscrit: 02/03/2003 04:07
De Noisy le grand(93)
Post(s): 2745
|
Bonjour,
Les structures sont les bases des API windows. De ce fait WinDev manipule très bien ce type de variable. Vous pouvez même utiliser l'extension fourni par PCSoft WDApi.exe qui permet de connaître et de récupérer la structure nécessaire à un grand nombre d'api Windows.
Il suffit de mettre un & devant le nom de la structure lors de son passage à la dll.
Contribution le : 23/12/2004 10:18
|
|
|
Re: DLL Complexes |
|
Animateur WDF
Inscrit: 26/06/2002 16:24
De wdforge.org
Post(s): 2822
|
Précision, WDAPI est livrée en natif sous WinDev 9 alors que dans une LST52 pour WinDev 8
Contribution le : 23/12/2004 13:38
|
|
|
Re: DLL Complexes |
|
Animateur WDF
Inscrit: 02/03/2003 04:07
De Noisy le grand(93)
Post(s): 2745
|
Correction,
WDAPI est livré en standart avec WinDev8 et WinDev9 il fait d'ailleurs partie du module WDOutil.
La Lst52 c'était pour WinDev 7.x, PCSoft ne fournissait pas encore d'exemples créer avec WinDev 8 En tous cas tous les exemples commence par WD7 ...
Contribution le : 23/12/2004 14:31
|
|
Vous ne pouvez pas débuter de nouveaux sujets.
Vous pouvez voir les sujets.
Vous ne pouvez pas répondre aux contributions.
Vous ne pouvez pas éditer vos contributions.
Vous ne pouvez pas effacez vos contributions.
Vous ne pouvez pas ajouter de nouveaux sondages.
Vous ne pouvez pas voter en sondage.
Vous ne pouvez pas attacher des fichiers à vos contributions.
Vous ne pouvez pas poster sans approbation.