Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Сети";
Текущий архив: 2003.12.04;
Скачать: [xml.tar.bz2];

Вниз

Проблема с подключением сетевого диска   Найти похожие ветки 

 
xGhost   (2003-10-07 13:25) [0]

Использую функцию WNetAddConnection , если удалёный компьютер 98
то диск подключаеться как нив-чём не бывало , если win2000 pro то подключение не производиться хотя и пишет что ошибок нет ! в чём дело ? Если использовать стандартные средства windows то всё работает ...


 
Unknown   (2003-10-07 13:35) [1]

кто пишет что нету ошибок ? случайно не ты ? :)


 
xGhost   (2003-10-07 13:56) [2]

> Unknown

Если ты не умеешь пользоваться отладкой то это твои проблемы !
И если ты не умеешь отвечать на вопросы это тоже твои проблемы !


 
Unknown   (2003-10-07 14:09) [3]

>>xGhost © (07.10.03 13:56) [2]
ну ты даещь...
хотя бы код привел... тут на форуме много говорят про телепатии но никто толком еще не нучился этому делу :)


 
Warlock   (2003-10-07 14:11) [4]

var NetRes: NETRESOURCE;

NetRes.dwType:=RESOURCETYPE_DISK;
NetRes.lpRemoteName:="\\Server\Folder";
NetRes.lpLocalName:="T:";

if WNetAddConnection2(NetRes,nil,nil,CONNECT_UPDATE_PROFILE) in [NO_ERROR,ERROR_ALREADY_ASSIGNED] then
Writeln("Net Drive "W" Assigned")
else
Writeln("ERROR! Can`t assign network drive "W"");


 
xGhost   (2003-10-07 14:14) [5]

> так не канает :(

не идёт и всё !

подключал вот так
WNetAddConnection(pchar("\\"+form5.ip_2.Caption+"\"+formconfig.name_dik_res.Text),pchar(pas_s),pchar(formconfig.Name_sd. Caption))

так работает на win9x на NT не хочет !

Нащёл код для NT

function GetMap(pDrv, pS: string): boolean;
var
nw : TNetResource;
Err : DWORD;
sMsg : string;
begin
Result := False;
nw.dwType:=RESOURCETYPE_DISK;
nw.lpLocalName:=PCHAR(pDrv+":");
nw.lpRemoteName:=PChar(pS);
nw.lpProvider:=nil;
sMsg := "";
Err:=WNetAddConnection2(nw,nil,nil,0); // попытка подключить сетевой диск
If (Err=NO_ERROR) or (Err=ERROR_DEVICE_ALREADY_REMEMBERED) then
begin
Result := True;
//WNetCancelConnection2(nw.lpLocalName,0,True); // отключить сетевой диск
end
else
begin
case Err of
ERROR_ACCESS_DENIED :
sMsg:="Недоступен сетевой ресурс "+nw.lpRemoteName;
//sMsg:="Access to the network resource was denied";
ERROR_ALREADY_ASSIGNED :
begin
//sMsg:="Локальное устройство, указанное как ""+nw.lpLocalName+"" уже соединено с ресурсом сети";
//sMsg:="The local device specified by lpLocalName is already connected to a network resource";
Result := True;
end;
ERROR_BAD_DEV_TYPE :
sMsg:="Тип локального устройства и тип ресурса сети не согласуются";
//sMsg:="The type of local device and the type of network resource do not match";
ERROR_BAD_DEVICE :
//sMsg:="The value specified by lpLocalName is invalid";
sMsg:="Значение, указанное как ""+nw.lpLocalName+"" недопустимо";
ERROR_BAD_NET_NAME :
//sMsg:="The value specified by lpRemoteName is not acceptable to any network resource provider. The resource name is invalid, or the named resource cannot be located";
sMsg:="Значение, указанное как ""+nw.lpRemoteName+"" недопустимо для любого поставщика ресурса сети. Имя ресурса недопустимо, или именованный ресурс не может размещен";
ERROR_BAD_PROFILE :
//sMsg:="The user profile is in an incorrect format";
sMsg:="Профиль пользователя имеет некорректный формат";
ERROR_BAD_PROVIDER :
//sMsg:="The value specified by lpProvider does not match any provider";
sMsg:="Значение, указанное lpProvider не соответствует никакому поставщику";
ERROR_BUSY :
//sMsg:="The router or provider is busy, possibly initializing. The caller should retry";
sMsg:="Программа маршрутизации или поставщик заняты, возможно инициализация. Повторите вызов позже";
ERROR_CANCELLED :
//sMsg:="The attempt to make the connection was cancelled by the user through a dialog box from one of the network resource providers, or by a called resource";
sMsg:="Попытка делать связь была отменена пользователем через блок диалога от одного из поставщиков ресурса сети, или называемым ресурсом";
ERROR_CANNOT_OPEN_PROFILE :
//sMsg:="The system is unable to open the user profile to process persistent connections";
sMsg:="Система неспособна открыть профиль пользователя, чтобы обработать постоянные связи";
ERROR_DEVICE_ALREADY_REMEMBERED :
//sMsg:="An entry for the device specified in lpLocalName is already in the user profile";
sMsg:="Вход для устройства, указанного в ""+nw.lpLocalName+"" - уже в профиле пользователя";
ERROR_EXTENDED_ERROR :
//sMsg:="A network-specific error occured. Call the WNetGetLastError function to get a description of the error";
sMsg:="Сетевая ошибка уже встречалась. Назовите функцию WNETGETLASTERROR, чтобы получить описание ошибки";
ERROR_INVALID_PASSWORD :
//sMsg:="The specified password is invalid";
sMsg:="Указанный сетевой пароль неверен";
ERROR_NO_NET_OR_BAD_PATH :
//sMsg:="A network component has not started, or the specified name could not be handled";
sMsg:="Сеть не запущена, или указанное имя не могло быть обработано";
ERROR_NO_NETWORK :
//sMsg:="There is no network present";
sMsg:="Сеть недоступна";
else
sMsg:=IntToStr(Err)+" - код ошибки при подключении диска "+pDrv;
end;
if sMsg<>"" then
ShowMessage(sMsg);
end;
end;

но так отказываеться работать на win9x говорит что пароль не верный :(


 
Reindeer Moss Eater   (2003-10-07 14:15) [6]

Если ERROR_ALREADY_ASSIGNED то про ошибки твой код не напишет, а диск не замапится.


 
xGhost   (2003-10-07 14:25) [7]

> Reindeer Moss Eater
уже нашёл и исправил


 
xGhost   (2003-10-07 14:28) [8]

Всё всем спасибо ! данный код который я нашёл позволяет работать с любуй OS семейства windows ( не считая win3.1 ) так что всем спасибо ещё раз ! проблемы больше нет



Страницы: 1 вся ветка

Форум: "Сети";
Текущий архив: 2003.12.04;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.004 c
6-11674
Иг
2003-10-03 17:23
2003.12.04
Ошибка


6-11685
Volcano
2003-10-04 17:12
2003.12.04
checksum


6-11677
TButton
2003-10-05 01:18
2003.12.04
Socket. Восстановление связи.


1-11608
Jackson
2003-11-23 23:59
2003.12.04
печатать на французском


6-11681
Recruit
2003-10-06 07:48
2003.12.04
NMPOP3.GetSummary в NMPOP3.Summary.Subject абракадабра?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский