NetShareCheck, fonction (lmshare.h)
Vérifie si un serveur partage un appareil.
Syntaxe
NET_API_STATUS NET_API_FUNCTION NetShareCheck(
[in] LMSTR servername,
[in] LMSTR device,
[out] LPDWORD type
);
Paramètres
[in] servername
Pointeur vers une chaîne qui spécifie le nom DNS ou NetBIOS du serveur distant sur lequel la fonction doit s’exécuter. Si ce paramètre a la valeur NULL, l’ordinateur local est utilisé.
[in] device
Pointeur vers une chaîne qui spécifie le nom de l’appareil à case activée pour l’accès partagé.
[out] type
Pointeur vers une variable qui reçoit un masque de bits d’indicateurs qui spécifient le type de l’appareil partagé. Ce paramètre est défini uniquement si la fonction retourne correctement.
L’un des indicateurs suivants peut être spécifié.
Valeur | Signification |
---|---|
|
Lecteur de disque. |
|
File d’attente d’impression. |
|
Appareil de communication. |
|
Communication interprocessus (IPC). |
En outre, l’un des indicateurs suivants ou les deux peuvent être spécifiés.
Valeur | Signification |
---|---|
|
Partage spécial réservé à la communication interprocessus (IPC$) ou à l’administration à distance du serveur (ADMIN$). Peut également faire référence à des partages administratifs tels que C$, D$, E$, etc. Pour plus d’informations, consultez Fonctions de partage réseau. |
|
Partage temporaire. |
Valeur retournée
Si la fonction réussit, la valeur de retour est NERR_Success.
Si la fonction échoue, la valeur de retour peut être l’un des codes d’erreur suivants.
Code de retour | Description |
---|---|
|
La mémoire disponible est insuffisante. |
|
L’appareil n’est pas partagé. |
Notes
Cette fonction s’applique uniquement aux partages SMB (Server Message Block). Pour d’autres types de partages, tels que le système de fichiers distribué (DFS) ou les partages WebDAV, utilisez les fonctions de mise en réseau Windows (WNet), qui prennent en charge tous les types de partages.
Aucune appartenance à un groupe spécial n’est requise pour exécuter correctement la fonction NetShareCheck .
Si vous programmez pour Active Directory, vous pouvez peut-être appeler certaines méthodes ADSI (Active Directory Service Interface) pour obtenir les mêmes fonctionnalités que celles que vous pouvez obtenir en appelant les fonctions de partage de gestion réseau. Pour plus d’informations, consultez IADsFileShare.
Exemples
L’exemple de code suivant montre comment case activée si un serveur partage un appareil, à l’aide d’un appel à la fonction NetShareCheck. La fonction retourne le type d’appareil partagé, comme décrit dans la documentation précédente pour le paramètre type .
#ifndef UNICODE
#define UNICODE
#endif
#include <windows.h>
#include <stdio.h>
#include <lm.h>
#pragma comment(lib, "Netapi32.lib")
void wmain( int argc, TCHAR *argv[ ])
{
NET_API_STATUS res;
DWORD devType = 0;
if(argc<3)
printf("Usage: NetShareCheck server device\n");
else
{
//
// Call the NetShareCheck function.
//
res=NetShareCheck(argv[1], argv[2], &devType);
//
// If the function succeeds, inform the user.
//
if(res==0)
printf("Device is shared as type %u.\n",devType);
//
// Otherwise, print the error.
//
else
printf("Error: %u\n", res);
}
return;
}
Configuration requise
Client minimal pris en charge | Windows XP [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows Server 2003 [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | lmshare.h (include Lm.h) |
Bibliothèque | Netapi32.lib |
DLL | Netapi32.dll |