Сетевые шары...
От: -Cheese-  
Дата: 26.05.04 12:21
Оценка:
Добрый день...
Уважаемые,
Как можно найти список всех доступных шар (папок) в сети??
Re: Сетевые шары...
От: Pavel Dvorkin Россия  
Дата: 26.05.04 12:24
Оценка:
Привет!

-Cheese- wrote:
>
> Добрый день...
> Уважаемые,
> Как можно найти список всех доступных шар (папок) в сети??

NetServerEnum + NetShareEnum

--
With best regards,
Pavel Dvorkin
Posted via RSDN NNTP Server 1.7 "Bedlam"
With best regards
Pavel Dvorkin
Re[2]: Сетевые шары...
От: -Cheese-  
Дата: 26.05.04 14:22
Оценка:
Здравствуйте, Pavel Dvorkin, Вы писали:

PD>NetServerEnum + NetShareEnum


а какого вида название сервера ему нужно???
NetShareEnum("\\\\server\\",.....
NetShareEnum("server",....
ни так ни так не понимает...
ошибка 123 непонятный путь...

Re[3]: Сетевые шары...
От: rus blood Россия  
Дата: 26.05.04 15:59
Оценка:
Здравствуйте, -Cheese-, Вы писали:

C>Здравствуйте, Pavel Dvorkin, Вы писали:


PD>>NetServerEnum + NetShareEnum


C>а какого вида название сервера ему нужно???

C>NetShareEnum("\\\\server\\",.....
C>NetShareEnum("server",....
C>ни так ни так не понимает...
C>ошибка 123 непонятный путь...

C>


Имя должно быть в формате "\\<имя сервера>". Это по нормальному.
Или по С++-ному: "\\\\<имя сервера>".
Имею скафандр — готов путешествовать!
Re[4]: Сетевые шары...
От: -Cheese-  
Дата: 26.05.04 17:57
Оценка:
Здравствуйте, rus blood, Вы писали:

RB>Имя должно быть в формате "\\<имя сервера>". Это по нормальному.

RB>Или по С++-ному: "\\\\<имя сервера>".

я извиняюсь за столь интимные подробности, но ......
как бы он и так не понимает
123 и ВСЁ!!!!!!!!!!!!
Re[5]: Сетевые шары...
От: alexstudiio  
Дата: 26.05.04 18:48
Оценка:
Здравствуйте, -Cheese-, Вы писали:

C>Здравствуйте, rus blood, Вы писали:


RB>>Имя должно быть в формате "\\<имя сервера>". Это по нормальному.

RB>>Или по С++-ному: "\\\\<имя сервера>".

C>я извиняюсь за столь интимные подробности, но ......

C>как бы он и так не понимает
C>123 и ВСЁ!!!!!!!!!!!!

NetShareEnum не перечисляет все шары в сети, а лишь берет шары на указанном компьютере:
NET_API_STATUS NetShareEnum(
LPWSTR servername, // сетевой адрес машины на которой смотрим шары (если пустое значение то смотрим на локальной машине)
// Дословно: [in] Pointer to a Unicode (Windows NT/2000/XP) or ANSI (Windows 95/98/Me) string specifying the name of the remote server on which the function is to execute. The string must begin with \\. If this parameter is NULL, the local computer is used.

DWORD level,
LPBYTE *bufptr,
DWORD prefmaxlen,
LPDWORD entriesread,
LPDWORD totalentries,
LPDWORD resume_handle
);
Re[6]: Сетевые шары...
От: -Cheese-  
Дата: 27.05.04 05:32
Оценка:
Здравствуйте, alexstudiio, Вы писали:
A>NetShareEnum не перечисляет все шары в сети, а лишь берет шары на указанном компьютере:
A>NET_API_STATUS NetShareEnum(
A> LPWSTR servername, // сетевой адрес машины на которой смотрим шары (если пустое значение то смотрим на локальной машине)
A> // Дословно: [in] Pointer to a Unicode (Windows NT/2000/XP) or ANSI (Windows 95/98/Me) string specifying the name of the remote server on which the function is to execute. The string must begin with \\. If this parameter is NULL, the local computer is used.

A> DWORD level,

A> LPBYTE *bufptr,
A> DWORD prefmaxlen,
A> LPDWORD entriesread,
A> LPDWORD totalentries,
A> LPDWORD resume_handle
A>);

Это понятно. MSDN у меня есть тоже...
вопрос в другом:
какого вида имя сервера должно быть????

Не подходят
1. NetShareEnum("\\\\server",....
2. NetShareEnum("server",...
3. NetShareEnum("\\\\server\\",...
это у меня фантазия слабая, или я что то не так делаю????
Re[7]: Сетевые шары...
От: alexstudiio  
Дата: 27.05.04 06:41
Оценка:
Здравствуйте, -Cheese-, Вы писали:

C>Это понятно. MSDN у меня есть тоже...

C>вопрос в другом:
C> какого вида имя сервера должно быть????

C>Не подходят

C> 1. NetShareEnum("\\\\server",....
C> 2. NetShareEnum("server",...
C> 3. NetShareEnum("\\\\server\\",...
C>это у меня фантазия слабая, или я что то не так делаю????

опять таки же цитирую: The string must begin with \\.
тобишь надо писать так: "\\\\server" или "\\\\192.1.1.1"
и что за ошибку он выдает дословно?
Re[8]: Сетевые шары...
От: -Cheese-  
Дата: 27.05.04 06:57
Оценка:
Здравствуйте, alexstudiio, Вы писали:

A>опять таки же цитирую: The string must begin with \\.

A>тобишь надо писать так: "\\\\server" или "\\\\192.1.1.1"
A>и что за ошибку он выдает дословно?

а я опять таки повторяю
123 The filename, directory name, or volume label syntax is incorrect. ERROR_INVALID_NAME
Re[9]: Сетевые шары...
От: rus blood Россия  
Дата: 27.05.04 09:01
Оценка:
C>а я опять таки повторяю
C>123 The filename, directory name, or volume label syntax is incorrect. ERROR_INVALID_NAME

Послушай. Я как-то в свое время для себя писал "шарилку" по локальной. Нужна была тулза для сканирования доступных audio- и video- файлов. Может я тебе просто пришлю ее, и ты посмотришь, какое там имя сервера в NetShareEnum ?
Имею скафандр — готов путешествовать!
Re[10]: Сетевые шары...
От: -Cheese-  
Дата: 27.05.04 09:03
Оценка:
Здравствуйте, rus blood, Вы писали:


C>>а я опять таки повторяю

C>>123 The filename, directory name, or volume label syntax is incorrect. ERROR_INVALID_NAME

RB>Послушай. Я как-то в свое время для себя писал "шарилку" по локальной. Нужна была тулза для сканирования доступных audio- и video- файлов. Может я тебе просто пришлю ее, и ты посмотришь, какое там имя сервера в NetShareEnum ?


Буду премного благодарен!!!!
Cheese__@rambler.ru
Re[11]: Сетевые шары...
От: rus blood Россия  
Дата: 27.05.04 09:14
Оценка:
Здравствуйте, -Cheese-, Вы писали:

C>Здравствуйте, rus blood, Вы писали:



C>>>а я опять таки повторяю

C>>>123 The filename, directory name, or volume label syntax is incorrect. ERROR_INVALID_NAME

RB>>Послушай. Я как-то в свое время для себя писал "шарилку" по локальной. Нужна была тулза для сканирования доступных audio- и video- файлов. Может я тебе просто пришлю ее, и ты посмотришь, какое там имя сервера в NetShareEnum ?


C>Буду премного благодарен!!!!

C>Cheese__@rambler.ru

Вроде отправил... Глючная почта какая-то...
Имею скафандр — готов путешествовать!
Re[12]: Сетевые шары... LPTSTR || LPWSTR
От: -Cheese-  
Дата: 27.05.04 10:17
Оценка:
Здравствуйте, rus blood, Вы писали:

RB>Здравствуйте, -Cheese-, Вы писали:


C>>Здравствуйте, rus blood, Вы писали:



C>>>>а я опять таки повторяю

C>>>>123 The filename, directory name, or volume label syntax is incorrect. ERROR_INVALID_NAME

RB>>>Послушай. Я как-то в свое время для себя писал "шарилку" по локальной. Нужна была тулза для сканирования доступных audio- и video- файлов. Может я тебе просто пришлю ее, и ты посмотришь, какое там имя сервера в NetShareEnum ?


C>>Буду премного благодарен!!!!

C>>Cheese__@rambler.ru

спасибо получил...
... но это не работает и наверное вот почему
скорее всего в различии версий — у меня стоит XP

MSDN: пишет для 2000/NT


[сcode]
NET_API_STATUS NetShareEnum(
LPWSTR servername,
DWORD level,
LPBYTE *bufptr,
DWORD prefmaxlen,
LPDWORD entriesread,
LPDWORD totalentries,
LPDWORD resume_handle
);
[/сcode]

в VC пишет что первый параметр типа const char* или LPTSTR
я передаю как LPTSTR....
но ему наверно не понятно?????
Что посоветуете??
я делаю так


void FindFiles::AddShara(char* server)
{
    PSHARE_INFO_502 BufPtr,p;
    NET_API_STATUS res;
    LPWSTR lpszServer = server;
    DWORD er=0,tr=0,resume=0, i;
    
        do
    {
        res = NetShareEnum(lpszServer, 502, (LPBYTE *) &BufPtr, -1, &er, &tr, &resume);
                // res==123 почему???
        if(res == ERROR_SUCCESS || res == ERROR_MORE_DATA)
                {
       ..............
Re[13]: Сетевые шары... LPTSTR || LPWSTR
От: rus blood Россия  
Дата: 27.05.04 10:30
Оценка:
C>спасибо получил...
C>... но это не работает и наверное вот почему
C>скорее всего в различии версий — у меня стоит XP

Что не работает? Тулза, или не строится? Просто интересно... У меня win2k
На всякий случай, у тебя PSDK стоит? Без него не строится...


C>
C>void FindFiles::AddShara(char* server)
C>{
C>    PSHARE_INFO_502 BufPtr,p;
C>    NET_API_STATUS res;
C>    LPWSTR lpszServer = server;
C>    DWORD er=0,tr=0,resume=0, i;
    
C>        do
C>    {
C>        res = NetShareEnum(lpszServer, 502, (LPBYTE *) &BufPtr, -1, &er, &tr, &resume);
C>                // res==123 почему???
C>        if(res == ERROR_SUCCESS || res == ERROR_MORE_DATA)
C>                {
C>       ..............

C>


Строка должна быть unicode-ная... А ты что написал???
Имею скафандр — готов путешествовать!
Re[14]: Сетевые шары... LPTSTR || LPWSTR
От: -Cheese-  
Дата: 27.05.04 10:34
Оценка:
Здравствуйте, rus blood, Вы писали:

RB>Что не работает? Тулза, или не строится? Просто интересно... У меня win2k

RB>На всякий случай, у тебя PSDK стоит? Без него не строится...


C>>
C>>void FindFiles::AddShara(char* server)
C>>{
C>>    PSHARE_INFO_502 BufPtr,p;
C>>    NET_API_STATUS res;
C>>    LPWSTR lpszServer = server;
C>>    DWORD er=0,tr=0,resume=0, i;
    
C>>        do
C>>    {
C>>        res = NetShareEnum(lpszServer, 502, (LPBYTE *) &BufPtr, -1, &er, &tr, &resume);
C>>                // res==123 почему???
C>>        if(res == ERROR_SUCCESS || res == ERROR_MORE_DATA)
C>>                {
C>>       ..............

C>>



RB>Строка должна быть unicode-ная... А ты что написал???


если так написать то..

Compiling...
FindFilesNetDlg.cpp
d:\sergey_s\vc++\findfilesnet\cfilesearch.cpp(256) : error C2440: 'initializing' : cannot convert from 'char *' to 'unsigned short *'
        Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
d:\sergey_s\vc++\findfilesnet\cfilesearch.cpp(275) : error C2440: '=' : cannot convert from 'char *' to 'unsigned short *'
        Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
d:\sergey_s\vc++\findfilesnet\cfilesearch.cpp(276) : error C2664: 'NetShareEnum' : cannot convert parameter 1 from 'unsigned short *' to 'char *'
        Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
Error executing cl.exe.
Re[15]: Сетевые шары... LPTSTR || LPWSTR
От: rus blood Россия  
Дата: 27.05.04 10:52
Оценка:
Тебе нужно строчку из ANSI формата сконвертировать в UNICODE-формат.
Функция NetShareEnum понимает только unicode-ные строки.
При попытке понять твою ANSI-строку как unicode-ную, она валится.
Имею скафандр — готов путешествовать!
Re[16]: Сетевые шары... LPTSTR || LPWSTR
От: -Cheese-  
Дата: 27.05.04 13:50
Оценка:
Огромное человеческое спасибо rus blood!!!!
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.