1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
|
#include <windows.h>
#include <lmcons.h>
#include <lmerr.h>
#include <lmshare.h>
#include <lmserver.h>
int
main (
int argc,
char *argv[]
)
{
LPBYTE buffer;
DWORD entries;
DWORD totalEntries;
NET_API_STATUS status;
#if 0
status = I_NetServerSetServiceBits( NULL, 0x5555AAAA );
if ( status != NERR_Success ) {
printf( "I_NetServerSetServiceBits failed: %ld\n", status );
}
#endif
#if 0
status = NetServerDiskEnum(
NULL,
0,
&buffer,
-1,
&entries,
&totalEntries,
NULL
);
if ( status != NERR_Success ) {
printf( "NetServerDiskEnum failed: %ld\n", status );
} else {
PSZ p = buffer;
DWORD i = 0;
while ( *p != 0 ) {
printf( "Disk %ld is %s\n", i, p );
while ( *(++p) != 0 ) ;
p++;
i++;
}
if ( i != entries ) {
printf( "Incorrect entry count returned: %ld\n", entries );
}
}
return status;
#endif
#if 1
status = NetShareEnum(
"",
0,
&buffer,
8192,
&entries,
&totalEntries,
NULL
);
if ( status != NERR_Success ) {
printf( "NetShareEnum failed: %ld\n", status );
} else {
printf( "NetShareEnum worked.\n" );
printf( " entries = %ld, totalEntries = %ld\n",
entries, totalEntries );
}
return status;
#endif
} // main
|