OVH Cloud OVH Cloud

DWORD??!

2 réponses
Avatar
Douns
Bonjour

Je fais un appel à une api (function NetShareGetInfo dans netapi32.dll) afin
de trouver les permissions d'un partage réseau.

L'api renvoi un réponse du type suivant :

Private Type SHARE_INFO_502
shi502_netname As Long ' LPWSTR shi502_netname;
shi502_type As Long ' DWORD shi502_type;
shi502_remark As Long ' LPWSTR shi502_remark;
shi502_permissions As Long ' DWORD shi502_permissions;
shi502_max_uses As Long ' DWORD shi502_max_uses;
shi502_current_uses As Long ' DWORD shi502_current_uses;
shi502_path As Long ' LPWSTR shi502_path;
shi502_passwd As Long ' LPWSTR shi502_passwd;
shi502_reserved As Long ' DWORD shi502_reserved;
shi502_security_descriptor As Long ' PSECURITY_DESCRIPTOR
shi502_security_descriptor;
End Type

Ici shi502_permissions m'interesse particulièrement.

Seulement voila, c'est normalement un DWORD qui est en long et je n'arrive
pas à le déchiffrer!
J'ai trouvé sur msdn de krosoft que les réponses possibles sont :
ACCESS_READ, ACCESS_WRITE, ACCESS_CREATE, ACCESS_EXEC, ACCESS_DELETE,
ACCESS_ATRIB, ACCESS_PERM, ACCESS_ALL. Mais tout ec que j'ai en réponse,
c'est du long!!!

Je me doute que je dois faire une convertion, mais je en vois pas comment.

J'ai trouvé la méthode pour les LPWSTR ( en utilisant les functions lstrlenW
et lstrcpyW de kernel32) mais pour les DWORD je patoge complet!

Merci d'avance pour votre aide!
Douns

2 réponses

Avatar
Guy DETIENNE
Salut ;O)

Le site de Randy Birch propose un exemple utilisant entre autre l'API
NetShareGetInfo.

Vois si tu y trouves quelques chose.

Enumerating Shared Resources on Remote Machines
http://vbnet.mvps.org/index.html?code/network/netshareenum.htm

Guy

"Douns" a écrit dans le message de
news:
Bonjour

Je fais un appel à une api (function NetShareGetInfo dans netapi32.dll)


afin
de trouver les permissions d'un partage réseau.

L'api renvoi un réponse du type suivant :

Private Type SHARE_INFO_502
shi502_netname As Long ' LPWSTR shi502_netname;
shi502_type As Long ' DWORD shi502_type;
shi502_remark As Long ' LPWSTR shi502_remark;
shi502_permissions As Long ' DWORD shi502_permissions;
shi502_max_uses As Long ' DWORD shi502_max_uses;
shi502_current_uses As Long ' DWORD shi502_current_uses;
shi502_path As Long ' LPWSTR shi502_path;
shi502_passwd As Long ' LPWSTR shi502_passwd;
shi502_reserved As Long ' DWORD shi502_reserved;
shi502_security_descriptor As Long ' PSECURITY_DESCRIPTOR
shi502_security_descriptor;
End Type

Ici shi502_permissions m'interesse particulièrement.

Seulement voila, c'est normalement un DWORD qui est en long et je n'arrive
pas à le déchiffrer!
J'ai trouvé sur msdn de krosoft que les réponses possibles sont :
ACCESS_READ, ACCESS_WRITE, ACCESS_CREATE, ACCESS_EXEC, ACCESS_DELETE,
ACCESS_ATRIB, ACCESS_PERM, ACCESS_ALL. Mais tout ec que j'ai en réponse,
c'est du long!!!

Je me doute que je dois faire une convertion, mais je en vois pas comment.

J'ai trouvé la méthode pour les LPWSTR ( en utilisant les functions


lstrlenW
et lstrcpyW de kernel32) mais pour les DWORD je patoge complet!

Merci d'avance pour votre aide!
Douns


Avatar
Christian Hubert-Hugoud
Je ne sais pas si cela peut t'aider :

Public Function FlagExists(ByVal TheValue&, ByVal TheFlagToTest&) As Boolean

FlagExists = (TheValue And TheFlagToTest) = TheFlagToTest

End Function

Christian


"Douns" a écrit dans le message de news:

Bonjour

Je fais un appel à une api (function NetShareGetInfo dans netapi32.dll)
afin
de trouver les permissions d'un partage réseau.

L'api renvoi un réponse du type suivant :

Private Type SHARE_INFO_502
shi502_netname As Long ' LPWSTR shi502_netname;
shi502_type As Long ' DWORD shi502_type;
shi502_remark As Long ' LPWSTR shi502_remark;
shi502_permissions As Long ' DWORD shi502_permissions;
shi502_max_uses As Long ' DWORD shi502_max_uses;
shi502_current_uses As Long ' DWORD shi502_current_uses;
shi502_path As Long ' LPWSTR shi502_path;
shi502_passwd As Long ' LPWSTR shi502_passwd;
shi502_reserved As Long ' DWORD shi502_reserved;
shi502_security_descriptor As Long ' PSECURITY_DESCRIPTOR
shi502_security_descriptor;
End Type

Ici shi502_permissions m'interesse particulièrement.

Seulement voila, c'est normalement un DWORD qui est en long et je n'arrive
pas à le déchiffrer!
J'ai trouvé sur msdn de krosoft que les réponses possibles sont :
ACCESS_READ, ACCESS_WRITE, ACCESS_CREATE, ACCESS_EXEC, ACCESS_DELETE,
ACCESS_ATRIB, ACCESS_PERM, ACCESS_ALL. Mais tout ec que j'ai en réponse,
c'est du long!!!

Je me doute que je dois faire une convertion, mais je en vois pas comment.

J'ai trouvé la méthode pour les LPWSTR ( en utilisant les functions
lstrlenW
et lstrcpyW de kernel32) mais pour les DWORD je patoge complet!

Merci d'avance pour votre aide!
Douns