Page 1 sur 1

Bug quand on Appelle l'API Win32

Publié : ven. 16/sept./2005 15:40
par Droopy
Je fais un programme Multi Os ( 98 / XP )

Ce code bug avec Windows 98 sans appeller d'API spécifique à NT
Erreur NETAPI32.DLL:NetuserEnum

Code : Tout sélectionner

End

;Mauvais paramètre mais c'est pas grave
NetUserEnum_(0,0,0,0,0,0,0,0)
Bizarre car je n'appelle pas la fonction :shock:

Publié : ven. 16/sept./2005 16:38
par julien
c'est pas parce que les fonctions NetUser ne sont disponible que sous NT ?

****
Requirements
Client Requires Windows XP, Windows 2000 Professional, or Windows NT Workstation.
Server Requires Windows Server 2003, Windows 2000 Server, or Windows NT Server.
Header Declared in Lmaccess.h; include Lm.h.

Library Link to Netapi32.lib.

DLL Requires Netapi32.dll.
***

Publié : ven. 16/sept./2005 18:16
par Droopy
Oui cette fonction n'est dispo que sous NT, mais je ne l'appelle pas.
J'en ai besoin pour une partie du code exécutée sur les PC sous XP, mais pas sur les PC sous 98

Aucune partie du code n'appelle cette fonction.
On dirait que pureBasic ouvre la fonction sans que je le demande au lancement du programme.

Publié : ven. 16/sept./2005 18:42
par julien
Je vois ce que tu veux dire, il la Link
J'avais eu ce problème, j'avais fait un exe externe qui me retourné les resultat dans un fichier txt

Publié : ven. 16/sept./2005 19:33
par Dr. Dri
ah bah ca explique un des trucs ke j'avais pas compris

Dri

Publié : ven. 16/sept./2005 21:54
par KarLKoX
Ce que tu peux faire c'est éxécuter la fonction dynamiquement :

- check de la fonction NetUserEnum dans netapi32.dll,
- si elle existe,
- récupérerer son pointeur (OpenLibrary/IsFunction)
- éxécution via callfunctionfast.

Publié : ven. 16/sept./2005 22:36
par djes
Tu n'aurais pas coché l'option NT compliant dans les options du compilateur?

Publié : sam. 17/sept./2005 7:26
par Droopy
Je n'ai pas coché l'option NT Compliant
Je vais tester avec OpenLibrary / IsFunction / CallFunctionFast
et voir si c'est pareil.

Merci pour vos réponses