OVH Cloud OVH Cloud

Appel de procédure

8 réponses
Avatar
JJF
Bonjour,
J'essaie désespérement de faire appel aux api Windows pour rechercher le nom
de la machine ou le nom du poste mais sans succès. Pouvez-vous me dire ce
qui ne fonctionne pas. Voici mon code :
***************
resL, long1, hInst est une entier
nomUtilisateur est une chaîne ASCIIZ sur 255

long1 = 254
resL=AppelDLL32( "kernel32","GetComputerNameA" , nomUtilisateur, long1 )
resL = AppelDLL32( "advapi32","GetUserNameA" , nomUtilisateur, long1 )

**************
Les deux procédures se terminent en erreur (ErreurInfo) mais resL = 0. Voici
le texte de ErreurInfo de l'appel de la deuxième procédure :
GetLastError() a renvoyé 1245
Détail de l'erreur système :L'opération demandée n'a pas été effectuée car
l'utilisateur
n'est pas connecté au réseau.
Le service spécifié n'existe pas.

Ces routines fonctionnent parfaitement sur VBA mais là impossible d'obtenir
un résultat.
D'avance merci pour votre aide et une bonne année 2005 à tous.

JJF

8 réponses

Avatar
PYT
JJF wrote:
Bonjour,
J'essaie désespérement de faire appel aux api Windows pour rechercher le nom
de la machine ou le nom du poste mais sans succès. Pouvez-vous me dire ce
qui ne fonctionne pas. Voici mon code :
***************
resL, long1, hInst est une entier
nomUtilisateur est une chaîne ASCIIZ sur 255

long1 = 254
resL=AppelDLL32( "kernel32","GetComputerNameA" , nomUtilisateur, long1 )
resL = AppelDLL32( "advapi32","GetUserNameA" , nomUtilisateur, long1 )

**************
Les deux procédures se terminent en erreur (ErreurInfo) mais resL = 0. Voici
le texte de ErreurInfo de l'appel de la deuxième procédure :
GetLastError() a renvoyé 1245
Détail de l'erreur système :L'opération demandée n'a pas été effectuée car
l'utilisateur
n'est pas connecté au réseau.
Le service spécifié n'existe pas.

Ces routines fonctionnent parfaitement sur VBA mais là impossible d'obtenir
un résultat.
D'avance merci pour votre aide et une bonne année 2005 à tous.

JJF




Il faut peut être passer certaine de ces variables par pointeur
&nomUtilisateur par exemple.

Je croyais qu'il existait un outil fabuleux pour utiliser les api avec
Windev (WDAPI ?)

PYT
Avatar
JJF
Hello,
J'avais également essayé mais toujours sans résultat.
Encore une idée ?

Qu'est-ce que WDAPI, je ne connais pas cet outil ?

Merci
JJF
PYT a écrit dans le message :
41d8341e$0$20281$
JJF wrote:
> Bonjour,
> J'essaie désespérement de faire appel aux api Windows pour rechercher le


nom
> de la machine ou le nom du poste mais sans succès. Pouvez-vous me dire


ce
> qui ne fonctionne pas. Voici mon code :
> ***************
> resL, long1, hInst est une entier
> nomUtilisateur est une chaîne ASCIIZ sur 255
>
> long1 = 254
> resL=AppelDLL32( "kernel32","GetComputerNameA" , nomUtilisateur, long1 )
> resL = AppelDLL32( "advapi32","GetUserNameA" , nomUtilisateur, long1 )
>
> **************
> Les deux procédures se terminent en erreur (ErreurInfo) mais resL = 0.


Voici
> le texte de ErreurInfo de l'appel de la deuxième procédure :
> GetLastError() a renvoyé 1245
> Détail de l'erreur système :L'opération demandée n'a pas été effectuée


car
> l'utilisateur
> n'est pas connecté au réseau.
> Le service spécifié n'existe pas.
>
> Ces routines fonctionnent parfaitement sur VBA mais là impossible


d'obtenir
> un résultat.
> D'avance merci pour votre aide et une bonne année 2005 à tous.
>
> JJF
>
>
Il faut peut être passer certaine de ces variables par pointeur
&nomUtilisateur par exemple.

Je croyais qu'il existait un outil fabuleux pour utiliser les api avec
Windev (WDAPI ?)

PYT


Avatar
Romain PETIT
JJF a pensé très fort :
J'essaie désespérement de faire appel aux api Windows pour rechercher le
nom de la machine ou le nom du poste mais sans succès. Pouvez-vous me dire
ce qui ne fonctionne pas.







Il faut peut être passer certaine de ces variables par pointeur
&nomUtilisateur par exemple.





J'avais également essayé mais toujours sans résultat.
Encore une idée ?



Pourquoi ne pas utiliser les fonctions de WD intégrées ?
NetNomMachine
ReseauUtilisateur

Qu'est-ce que WDAPI, je ne connais pas cet outil ?



Un outil de traduction en W-langage des principales API, qui a vu son
apparition dans une LST.
Je crois qu'il est en standard maintenant avec WD8 (vous confirmez ?).
Parfois utile mais parfois trompeur (des déclarations traduites en
automatique du C++).
La meilleur source d'info pour les API est le mdsn.
http://msdn.microsoft.com/

A+

--
Romain PETIT
http://cerbermail.com/?IJmancZl88
(cliquez sur le lien ci-dessus pour me contacter en privé)
Avatar
JJF
Bonjour,
Merci pour les 2 fonctions intégrées, ça fonctionne bien.
Mais j'aimerais tout de même comprendre pourquoi l'appel des API ne
fonctionne pas.
Je vais recherche WDApi car je travaille avec la version 7.5

merci et bonsoir
JJF
Romain PETIT a écrit dans le message :

JJF a pensé très fort :
>>> J'essaie désespérement de faire appel aux api Windows pour rechercher


le
>>> nom de la machine ou le nom du poste mais sans succès. Pouvez-vous me


dire
>>> ce qui ne fonctionne pas.

>> Il faut peut être passer certaine de ces variables par pointeur
>> &nomUtilisateur par exemple.

> J'avais également essayé mais toujours sans résultat.
> Encore une idée ?

Pourquoi ne pas utiliser les fonctions de WD intégrées ?
NetNomMachine
ReseauUtilisateur

> Qu'est-ce que WDAPI, je ne connais pas cet outil ?

Un outil de traduction en W-langage des principales API, qui a vu son
apparition dans une LST.
Je crois qu'il est en standard maintenant avec WD8 (vous confirmez ?).
Parfois utile mais parfois trompeur (des déclarations traduites en
automatique du C++).
La meilleur source d'info pour les API est le mdsn.
http://msdn.microsoft.com/

A+

--
Romain PETIT
http://cerbermail.com/?IJmancZl88
(cliquez sur le lien ci-dessus pour me contacter en privé)



Avatar
JJF
Bonsoir
ne cherchez plus, il fallait passer le compteur aussi sous forme de pointer

resL, long1, hInst est une entier
nomUtilisateur est une chaîne ASCIIZ sur 256

long1 = 256
resL = AppelDLL32( "advapi32","GetUserNameA" , &nomUtilisateur, &long1 )

Mais je crois que je vais utiliser les fonctions intégrées.

Ciao
JJF

JJF a écrit dans le message :
41d87318$
Bonjour,
Merci pour les 2 fonctions intégrées, ça fonctionne bien.
Mais j'aimerais tout de même comprendre pourquoi l'appel des API ne
fonctionne pas.
Je vais recherche WDApi car je travaille avec la version 7.5

merci et bonsoir
JJF
Romain PETIT a écrit dans le message :

> JJF a pensé très fort :
> >>> J'essaie désespérement de faire appel aux api Windows pour


rechercher
le
> >>> nom de la machine ou le nom du poste mais sans succès. Pouvez-vous


me
dire
> >>> ce qui ne fonctionne pas.
>
> >> Il faut peut être passer certaine de ces variables par pointeur
> >> &nomUtilisateur par exemple.
>
> > J'avais également essayé mais toujours sans résultat.
> > Encore une idée ?
>
> Pourquoi ne pas utiliser les fonctions de WD intégrées ?
> NetNomMachine
> ReseauUtilisateur
>
> > Qu'est-ce que WDAPI, je ne connais pas cet outil ?
>
> Un outil de traduction en W-langage des principales API, qui a vu son
> apparition dans une LST.
> Je crois qu'il est en standard maintenant avec WD8 (vous confirmez ?).
> Parfois utile mais parfois trompeur (des déclarations traduites en
> automatique du C++).
> La meilleur source d'info pour les API est le mdsn.
> http://msdn.microsoft.com/
>
> A+
>
> --
> Romain PETIT
> http://cerbermail.com/?IJmancZl88
> (cliquez sur le lien ci-dessus pour me contacter en privé)
>




Avatar
JJF
JJF a écrit dans le message :
41d87318$
Bonjour,
Merci pour les 2 fonctions intégrées, ça fonctionne bien.
Mais j'aimerais tout de même comprendre pourquoi l'appel des API ne
fonctionne pas.
Je vais recherche WDApi car je travaille avec la version 7.5

merci et bonsoir
JJF
Romain PETIT a écrit dans le message :

> JJF a pensé très fort :
> >>> J'essaie désespérement de faire appel aux api Windows pour


rechercher
le
> >>> nom de la machine ou le nom du poste mais sans succès. Pouvez-vous


me
dire
> >>> ce qui ne fonctionne pas.
>
> >> Il faut peut être passer certaine de ces variables par pointeur
> >> &nomUtilisateur par exemple.
>
> > J'avais également essayé mais toujours sans résultat.
> > Encore une idée ?
>
> Pourquoi ne pas utiliser les fonctions de WD intégrées ?
> NetNomMachine
> ReseauUtilisateur
>
> > Qu'est-ce que WDAPI, je ne connais pas cet outil ?
>
> Un outil de traduction en W-langage des principales API, qui a vu son
> apparition dans une LST.
> Je crois qu'il est en standard maintenant avec WD8 (vous confirmez ?).
> Parfois utile mais parfois trompeur (des déclarations traduites en
> automatique du C++).
> La meilleur source d'info pour les API est le mdsn.
> http://msdn.microsoft.com/
>
> A+
>
> --
> Romain PETIT
> http://cerbermail.com/?IJmancZl88
> (cliquez sur le lien ci-dessus pour me contacter en privé)
>




Avatar
JC FLAJOULOT
> > Qu'est-ce que WDAPI, je ne connais pas cet outil ?

Un outil de traduction en W-langage des principales API, qui a vu son
apparition dans une LST.
Je crois qu'il est en standard maintenant avec WD8 (vous confirmez ?).
Parfois utile mais parfois trompeur (des déclarations traduites en
automatique du C++).



Bonsoir,

Je confirme, WDApi fourni avec la LST 52 est en standard depuis WD8.

Sincères salutations et meilleurs voeux à toutes et à tous.
--
Jean-Claude FLAJOULOT

(otez _no_Spam pour me contacter en privé)
Sécurité Pointage & Biométrie
http://www.sp-et-b.com
Avatar
Pierre BOUSQUET
il y a un autre programme pas mal sur les API
http://www.mentalis.org/agnet/apiguide.shtml

"JJF" a écrit dans le message de
news:41d87318$
Bonjour,
Merci pour les 2 fonctions intégrées, ça fonctionne bien.
Mais j'aimerais tout de même comprendre pourquoi l'appel des API ne
fonctionne pas.
Je vais recherche WDApi car je travaille avec la version 7.5

merci et bonsoir
JJF
Romain PETIT a écrit dans le message :

> JJF a pensé très fort :
> >>> J'essaie désespérement de faire appel aux api Windows pour


rechercher
le
> >>> nom de la machine ou le nom du poste mais sans succès. Pouvez-vous


me
dire
> >>> ce qui ne fonctionne pas.
>
> >> Il faut peut être passer certaine de ces variables par pointeur
> >> &nomUtilisateur par exemple.
>
> > J'avais également essayé mais toujours sans résultat.
> > Encore une idée ?
>
> Pourquoi ne pas utiliser les fonctions de WD intégrées ?
> NetNomMachine
> ReseauUtilisateur
>
> > Qu'est-ce que WDAPI, je ne connais pas cet outil ?
>
> Un outil de traduction en W-langage des principales API, qui a vu son
> apparition dans une LST.
> Je crois qu'il est en standard maintenant avec WD8 (vous confirmez ?).
> Parfois utile mais parfois trompeur (des déclarations traduites en
> automatique du C++).
> La meilleur source d'info pour les API est le mdsn.
> http://msdn.microsoft.com/
>
> A+
>
> --
> Romain PETIT
> http://cerbermail.com/?IJmancZl88
> (cliquez sur le lien ci-dessus pour me contacter en privé)
>