Проблемы с обозревателем сети на последней Windows 10

Здесь можно сообщить о найденных багах в Far.
User avatar
cmd.exe
Posts: 378
Joined: Fri 16 Apr, 2010 18:26
Location: Нижний Новгород
Has thanked: 181 times
Been thanked: 10 times
Contact:

Проблемы с обозревателем сети на последней Windows 10

Post by cmd.exe »

Latest post of the previous page:

SMB1 устарел, и его не следует устанавливать или включать. Как жить без SMB1 написано в официальном сапорте Microsoft https://go.microsoft.com/fwlink/?linkid=852747
Если хотите используйте SMB1, но это на ваш страх и риск.
I've been using Vim for about 2 years now, mostly because I can't figure out how to exit it. (c) I Am Devloper
I know nothing except the fact of my ignorance. (с) Socrates
User avatar
cmd.exe
Posts: 378
Joined: Fri 16 Apr, 2010 18:26
Location: Нижний Новгород
Has thanked: 181 times
Been thanked: 10 times
Contact:

Проблемы с обозревателем сети на последней Windows 10

Post by cmd.exe »

2useven10, пример на C# подойдёт? Я долго не искал где в c# CSIDL_NETWORK, просто скормил шелу 0x12. корректнее ssfNETWORK.

Code: Select all

using System;
using System.Reflection;
using Shell32;

namespace ConsoleApp1
{

    class Program
    {
        private static void ShellObjects()
        {
            var shellAppType = Type.GetTypeFromProgID("Shell.Application");
            object shell = Activator.CreateInstance(shellAppType);
            Folder Network = getNetwork(shellAppType, shell);
            foreach (FolderItem child in Network.Items())
                Console.WriteLine($"{child.Name} = {child.Path}");
        }

        private static Folder getNetwork(Type shellAppType, object shell)
        {
            return (Folder)shellAppType.InvokeMember("NameSpace", BindingFlags.InvokeMethod, null, shell, new object[] { Shell32.ShellSpecialFolderConstants.ssfNETWORK });
        }

        static void Main(string[] args)
        {
            Console.WriteLine("Shell32");
            ShellObjects();
            Console.WriteLine();
        }
    }
}
Last edited by cmd.exe on Thu 17 Oct, 2019 02:28, edited 3 times in total.
I've been using Vim for about 2 years now, mostly because I can't figure out how to exit it. (c) I Am Devloper
I know nothing except the fact of my ignorance. (с) Socrates
User avatar
cmd.exe
Posts: 378
Joined: Fri 16 Apr, 2010 18:26
Location: Нижний Новгород
Has thanked: 181 times
Been thanked: 10 times
Contact:

Проблемы с обозревателем сети на последней Windows 10

Post by cmd.exe »

Черновик с рабочего стола :-D
необходимо получить:
из WNetGetProviderName lpProviderName
из WNetGetResourceParent lpNetResource используя в структуре текущий компьютер.
Дальше используется структура от lpNetResource переданная в WNetOpenEnum
I've been using Vim for about 2 years now, mostly because I can't figure out how to exit it. (c) I Am Devloper
I know nothing except the fact of my ignorance. (с) Socrates
User avatar
cmd.exe
Posts: 378
Joined: Fri 16 Apr, 2010 18:26
Location: Нижний Новгород
Has thanked: 181 times
Been thanked: 10 times
Contact:

Проблемы с обозревателем сети на последней Windows 10

Post by cmd.exe »

Блин. Я изобретаю велосипед снова
I've been using Vim for about 2 years now, mostly because I can't figure out how to exit it. (c) I Am Devloper
I know nothing except the fact of my ignorance. (с) Socrates
User avatar
cmd.exe
Posts: 378
Joined: Fri 16 Apr, 2010 18:26
Location: Нижний Новгород
Has thanked: 181 times
Been thanked: 10 times
Contact:

Проблемы с обозревателем сети на последней Windows 10

Post by cmd.exe »

Поспрашивал, говорят что WSD и SSDP пока работают только через ShellObjects ActiveX, а WNetOpenEnum работает на уровне SMB1, и мне сказали что это атавизм наследуемый от Win 4.x. Работает оно только через NETBIOS и NETBIOS overTCPIP.
User avatar
cmd.exe
Posts: 378
Joined: Fri 16 Apr, 2010 18:26
Location: Нижний Новгород
Has thanked: 181 times
Been thanked: 10 times
Contact:

Проблемы с обозревателем сети на последней Windows 10

Post by cmd.exe »

Если есть объект шелла F02C1A0D-BE21-4350-88B0-7367FC96EF3C, тогда выдаём из шелла структуру сети, если нет такого объекта, тогда по старинке. Думаю не плохо-бы пробежаться по недокументированным функциям winAPI.
I've been using Vim for about 2 years now, mostly because I can't figure out how to exit it. (c) I Am Devloper
I know nothing except the fact of my ignorance. (с) Socrates
User avatar
DrKnS
Posts: 6120
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 12 times
Been thanked: 431 times

Проблемы с обозревателем сети на последней Windows 10

Post by DrKnS »

cmd.exe wrote: Thu 17 Oct, 2019 04:57WNetOpenEnum работает на уровне SMB1, и мне сказали что это атавизм наследуемый от Win 4.x. Работает оно только через NETBIOS и NETBIOS overTCPIP
Это, извините, дичь какая-то.
Win32 API - это, типа, высокоуровневый интерфейс, абстрагирующий прикладное ПО от всякой низкоуровневой хрени типа драйверов и протоколов.
Программисту, использующему WNetOpenEnum, до лампочки, через что оно там работает - SMB1, SMB42, голубиная почта или магия вуду, потому что абстракция.
Если кто-то в Microsoft , на этот раз в сетевых протоколах - да на здоровье, пишите своё новое, и пусть WNetOpenEnum под капотом зовёт это ваше новое и красивое, почему нет. Нам какое до этого дело?

Простой пример: CreateFile + ReadFile хорошо работали на пещерных 1.44 дискетах, и почему-то всё так же хорошо работают на терабайтных SSD, без переписывания всего с нуля и объекта шелла F02C1A0D-BE21-4350-88B0-7367FC96EF3C. Какие драйвера они там внутри используют и как - никому не интересно, всё просто работает.

А сеть - внезапно, цирк с конями.
User avatar
cmd.exe
Posts: 378
Joined: Fri 16 Apr, 2010 18:26
Location: Нижний Новгород
Has thanked: 181 times
Been thanked: 10 times
Contact:

Проблемы с обозревателем сети на последней Windows 10

Post by cmd.exe »

Проверил на ТоталКомандере, открывает сеть корректно. Работает он через объекты шелла.
I've been using Vim for about 2 years now, mostly because I can't figure out how to exit it. (c) I Am Devloper
I know nothing except the fact of my ignorance. (с) Socrates
msk7@mail.ru
Posts: 1
Joined: Sun 24 Oct, 2021 11:29

Не отображается сетевое окружение при переходе на SMB3/WS-Discovery

Post by msk7@mail.ru »

После отказа от протокола SMB1 и NetBIOS-over-IP (Win7/Win10) и переключения на протоколы SMB3 и WS-Discovery FAR перестал отображать сетевое окружение.
Эксплорер винды сеть видит, а ФАР при попытке захода в "MIcrosoft Windows Network" выдает ошибку "Не найдено сетевое имя".
Создается впечатление, что фар не пользуется средствами винды, а пытается определить сетевое окружение самостоятельно через нетбиос, поддержка которого выключена, а WS-D не поддерживает.
User avatar
HaRT
Moderator
Posts: 11458
Joined: Tue 30 Aug, 2005 17:21
Has thanked: 270 times
Been thanked: 417 times

Проблемы с обозревателем сети на последней Windows 10

Post by HaRT »

!
Message from: HaRT
msk7@mail.ru, я подклеил вашу тему. Впредь не пренебрегайте поиском, иначе будете наказаны.
Фар есть инструмент, а не нянька. © 2009 DrKnS
anikaz
Posts: 3
Joined: Thu 13 Mar, 2014 08:00

Проблемы с обозревателем сети на последней Windows 10

Post by anikaz »

Последнее обновление KB5065429 для Windows 10 приводит к ошибке 0х00000043 - "Не найдено сетевое имя" при попытке открыть Microsoft Windows Network в плагине "Просмотре сети". При этом все сетевые ресурсы остались доступны, протокол SMB работает, разрешение имен через nbtstat тоже, но отображение компьютеров в сетевом окружении это обновление ломает (осталась видимой только часть компов). Печаль...
YDean
Posts: 2
Joined: Sat 27 Dec, 2025 08:31

Проблемы с обозревателем сети на последней Windows 10

Post by YDean »

Вот, со stackoverflow :
А вот, что посоветовал ИИ qwen для домена:
Last edited by HaRT on Sat 27 Dec, 2025 10:41, edited 1 time in total.
Reason: [spoiler]; [code] → [code=cpp]
User avatar
HaRT
Moderator
Posts: 11458
Joined: Tue 30 Aug, 2005 17:21
Has thanked: 270 times
Been thanked: 417 times

Проблемы с обозревателем сети на последней Windows 10

Post by HaRT »

!
Message from: HaRT
YDean wrote: Sat 27 Dec, 2025 08:46 со stackoverflow
Приведите, пожалуйста, точную ссылку на конкретный ответ там, чтобы нам понять, какая проблема решается, какие ограничения и пр.
А также не пренебрегайте заворачиванием длинных технических подробностей в [spoiler] — ориентируйтесь на то, как я в этот раз сделал это за вас.
Фар есть инструмент, а не нянька. © 2009 DrKnS
YDean
Posts: 2
Joined: Sat 27 Dec, 2025 08:31

Проблемы с обозревателем сети на последней Windows 10

Post by YDean »

Проблема, обсуждаемая в этой теме, - заполнение имён компьютеров в сетевом плагине при отсутствии установленного протокола SMB1, который выключен по умолчанию в последних Win10, как небезопасный. При этом не работают функции, завязанные на NETBIOS. Например, консольная команда net view возвращает ошибку 1231.
Эту проблему для некоторых случаев можно решить приведенными кусками кода.
Например, взять через интерфейсы доступа к оболочке Windows, как пишут на stackoverflow.

При попытке вставить ссылку сайт ругается.
Вот так с пробелами:
https : / / stackoverflow . com / questions / 66053425 / winapi-network-discovery-without-smbv1
User avatar
HaRT
Moderator
Posts: 11458
Joined: Tue 30 Aug, 2005 17:21
Has thanked: 270 times
Been thanked: 417 times

Проблемы с обозревателем сети на последней Windows 10

Post by HaRT »

YDean wrote: Sat 27 Dec, 2025 12:01 Эту проблему для некоторых случаев можно решить приведенными кусками кода.
Спасибо. Шансы на исправление повысятся, если вы сделаете соответствующий Pull Request для плагина Network. Но, подчеркну, это всецело на усмотрение мейнтейнеров (в число которых я не вхожу).
Фар есть инструмент, а не нянька. © 2009 DrKnS
Post Reply

Return to “Глюки и баги”