View Issue Details

IDProjectCategoryView StatusLast Update
0003124Far ManagerDrive Menupublic2015-12-01 00:26
ReporterrainyAssigned ToDrKnS 
PriorityhighSeveritymajorReproducibilityalways
Status closedResolutionfixed 
Platformx64OSWindowsOS Version7
Product Version3.0 
Target VersionFixed in Version3.0 
Summary0003124: Не восстанавливает постоянные сетевые соединения при запуске от имени другого пользователя.
DescriptionПри запуске от имени другого пользователя, если у того есть постоянные сетевые подключения, то при попытке смены диска на эти сетевые происходит запрос имени пользователя/пароля. Ввод либо отказ приводят к сообщению об ошибке "Системе не удается найти указанный путь..."
Steps To Reproduce1. Работаем под обычным пользователем.
2. Запускаем FAR "..от имени Администратора" (к примеру)
3. Отображаем сетевой ресурс (через F6) на букву диска (например W) как постоянное соединение.
4. Через меню выбора диска все замечательно работает.
5. Выходим из FARа.
6. Запускаем FAR "..от имени Администратора".
7. В меню выбора диска видим "W: disconnected".
8. Выбираем W.
9. Получаем запрос "Имя пользователя/пароль".
10. Вводим корректные данные или отказывается от ввода - результат один - "Системе не удается найти указанный путь...".
Additional InformationПроявляется начиная с билда 4425 после рефакторинга WNetGetConnection в farwinapi.cpp.

Есть:
if (Result == NO_ERROR)
{
  RemoteName.assign(Buffer, Size);
}

Как вариант решения:
if (Result == NO_ERROR || Result == ERROR_CONNECTION_UNAVAIL)
{
  RemoteName.assign(Buffer); // Убрать Size, т.к. иначе, при размонтировании в диалог подтверждения передается wchar_t Buffer[MAX_PATH], а там "\\\\dc1\\\c$\0???????????????????????????????..???" длиной MAX_PATH (::WNetGetConnection(LocalName.data(), Buffer, &Size); меняет &Size только при ERROR_MORE_DATA)
}

TagsNo tags attached.
Build4461

Activities

rainy

2015-11-27 08:33

reporter  

DrKnS

2015-11-27 14:43

administrator   bugnote:0014081

> Проявляется начиная с билда 4425...


И заканчивая 4429, который был два месяца назад. Ссылайтесь, пожалуйста, на актуальные версии / код.

Обработка ERROR_CONNECTION_UNAVAIL / ERROR_NOT_CONNECTED добавлена в 4461.

rainy

2015-11-27 16:02

reporter   bugnote:0014082

> Ссылайтесь, пожалуйста, на актуальные версии / код.

Вы правы. Прошу прощения.

Issue History

Date Modified Username Field Change
2015-11-27 08:31 rainy New Issue
2015-11-27 08:33 rainy File Added: err_disconnect_message.png
2015-11-27 14:43 DrKnS Note Added: 0014081
2015-11-27 14:43 DrKnS Assigned To => DrKnS
2015-11-27 14:43 DrKnS Status new => feedback
2015-11-27 16:02 rainy Note Added: 0014082
2015-11-27 16:02 rainy Status feedback => assigned
2015-12-01 00:26 DrKnS Build => 4461
2015-12-01 00:26 DrKnS Status assigned => closed
2015-12-01 00:26 DrKnS Resolution open => fixed
2015-12-01 00:26 DrKnS Fixed in Version => 3.0