powered by simpleCommunicator - 2.0.52     © 2025 Programmizd 02
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Полные пути и относительные пути (которые видно по локальной сети)
11 сообщений из 11, страница 1 из 1
Полные пути и относительные пути (которые видно по локальной сети)
    #38708644
Фотография Андрей159
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть сервер (программа вещает видеофайлы, рекламу, обьявления и т.д. для телевидения) и клиент, откуда управляется сервером (станцией).

Сначало сетки не было. Режим №1 - это освящение файла (переименование с хеш кодом в имени файла, в котором зашифровано дату показаи другие параметры графика). Файлы на станцию носили флешками, винчестерами.

Режим №2 - интернет. Разработал массу функций, всевозможные манипуляции с файлами через интернет, подобно тому как работает Anyplace Control + таким же образом был косвенный коннект с базой данных. Есть крошечные недочеты, так как многое предвидеть сложно, но схема работает по TCP протоколу через socket без отказа.


Режим №3 - рассчитан на локальную сеть (недавно сделали прямую связь оптикой) и я по быстрому доделал режим, но есть одно но...

Из клиента я вижу к примеру путь \\192.168.1.25\ или \\Studio\ или как подключенный диск Z:\ а на самом деле на сервере эта папка называется D:\std\

Я так понял получить из относительно пути "\\192.168.1.25\" полный "D:\std\" не получится программно никак ?
Пока что заменил обучением через обычный одноразовый ввод inputbox()
...
Рейтинг: 0 / 0
Полные пути и относительные пути (которые видно по локальной сети)
    #38708645
Фотография Андрей159
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
придется просто снова по tcp переспрашивать в сервера папки и файлы. неудобность в том, что в бравзере OpenDialog удобней чем через самопал, но если не будет выхода, придется делать что умею
...
Рейтинг: 0 / 0
Полные пути и относительные пути (которые видно по локальной сети)
    #38708703
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Андрей159Из клиента я вижу к примеру путь \\192.168.1.25\ или \\Studio\ или как подключенный диск Z:\ а на самом деле на сервере эта папка называется D:\std\

Я так понял получить из относительно пути "\\192.168.1.25\" полный "D:\std\" не получится программно никак ?
Да легко...

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
strComputer = "." 
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\CIMV2") 
Set colItems = objWMIService.ExecQuery("SELECT * FROM Win32_LogicalDisk WHERE DriveType = 4",,48) 
For Each objItem in colItems 
    Wscript.Echo "-----------------------------------"
    Wscript.Echo "Win32_LogicalDisk instance"
    Wscript.Echo "-----------------------------------"
    Wscript.Echo "Name: " & objItem.Name
    Wscript.Echo "ProviderName: " & objItem.ProviderName
Next
...
Рейтинг: 0 / 0
Полные пути и относительные пути (которые видно по локальной сети)
    #38708704
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Для преобразования же шары в локальный на сервере путь нужен аналогичный запрос к серверу.
...
Рейтинг: 0 / 0
Полные пути и относительные пути (которые видно по локальной сети)
    #38709599
Фотография Андрей159
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ошибка 70. В разрешении отказано.

Если не получается узнать клиенту как перевести разшаренную папку на сервере, то мне бы хоть узнать из стороны сервера. Тоесть я бы мог сделать, чтоб сервер сам посмотрел у себя и шару преобразовал в название полного пути.

Кроме strComputer = "STU-0e8f9862d0e" пробовал из вашего примера strComputer присвоить "127.0.0.1" или "." но папок с открытым доступом не увидел (пусто, ничего не выдает), хотя папки такие присутствуют. Потом попробовал на диск D: открыть доступ (комп. не перегружал), запустил программу - пусто. Убрал "WHERE DriveType = 4" - дает логические диски моего комп'ютера. А шару пока не удалось програмно увидеть ни на локалке ни на серваке. Без условия "WHERE" должно было быть хоть что-то. Или вместо "Win32_LogicalDisk " должно быть что-то другое или что-то в винде отключено

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
Private Sub Command1_Click()
    strComputer = "STU-0e8f9862d0e"
    Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\CIMV2")
    Set colItems = objWMIService.ExecQuery("SELECT * FROM Win32_LogicalDisk WHERE DriveType = 4", , 48)
    For Each objItem In colItems
        Debug.Print "-----------------------------------"
        Debug.Print "Win32_LogicalDisk instance"
        Debug.Print "-----------------------------------"
        Debug.Print "Name: " & objItem.Name
        Debug.Print "ProviderName: " & objItem.ProviderName
    Next
End Sub

...
Рейтинг: 0 / 0
Полные пути и относительные пути (которые видно по локальной сети)
    #38709611
Фотография Андрей159
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Поискал в направлении winmgmts и методом тыка добился рабочего кода, которого достаточно чтобы реализовать задуманное.
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
Private Sub Command1_Click()
    Set objWMIService = GetObject("winmgmts:\\.\root\CIMV2")
    Set colItems = objWMIService.ExecQuery("SELECT * FROM Win32_Share WHERE TYPE=0")
    For Each objItem In colItems
        Debug.Print objItem.Name & " = " & objItem.Path
    Next
End Sub



Таблица Win32_Share отвечает за шару. Попробовал TYPE - на шару показывает 0, на диск какие-то отрицательные числа. Попробовал - все показывает. Path догадался.

Спасибо за подсказку
...
Рейтинг: 0 / 0
Полные пути и относительные пути (которые видно по локальной сети)
    #38709612
Фотография Андрей159
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а... хотя не проверял еще вариант подключенных дисков. Может ваш пример показывает именно когда подключить удаленный путь как букву диска (упоминалось). Благодарен.
...
Рейтинг: 0 / 0
Полные пути и относительные пути (которые видно по локальной сети)
    #38709614
Фотография Андрей159
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Работает. Спасибо.
№1. Узнаем все папки с открытым доступом
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
Private Sub Command1_Click()
    Set objWMIService = GetObject("winmgmts:\\.\root\CIMV2")
    Set colItems = objWMIService.ExecQuery("SELECT * FROM Win32_Share WHERE TYPE=0")
    For Each objItem In colItems
        Debug.Print objItem.Name & " = " & objItem.Path
    Next
End Sub



№2. Узнаем все подключенные сетевые диски
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
Private Sub Command2_Click()
    Set objWMIService = GetObject("winmgmts:\\.\root\CIMV2")
    Set colItems = objWMIService.ExecQuery("SELECT * FROM Win32_LogicalDisk WHERE DriveType = 4")
    For Each objItem In colItems
        Debug.Print objItem.Name & " = " & objItem.ProviderName
    Next
End Sub
...
Рейтинг: 0 / 0
Полные пути и относительные пути (которые видно по локальной сети)
    #38709623
Дмитрий77
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Андрей159,

честно не вникал в то что ты делаешь.
Но вставлю свои 5 копеек.
Не люблю WMI. Использовал его для получения списка модемов в системе.
Но недавно полностью отказался в пользу SetupDi...-API-ф-ций.
Получил существенное увеличение скорости процедуры и отсутствие одного старого глюка, кот. с WMI приходилось маскировать перепроверкой-доделкой реестра.

М.б. и для твоей задачи что-то есть получше.
...
Рейтинг: 0 / 0
Полные пути и относительные пути (которые видно по локальной сети)
    #38709775
Фотография Андрей159
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Судя по тому что у меня есть, что знаю и расспрашиваю, то у меня такой конь, всем коням конь... но я этой херней не страдаю. Меня бесит, когда до мелочи пол шага и никто ничего не знает и как-бы никому не надо. А мне надо. Вот с UPnP (P2P) вроде почти все ясно, а не работает. Может посоветуешь какой-то рабочий "TracePlus Ethernet" крякнутый. "Wireshark" не справляется з задачей. Задача в том чтобы, мой сервер включился на станции и вещал через порт Plug And Play что он есть, я бы избавился от перешивки роутера, а то время от времени этот TP-Link игнорирует переадресацию и приходится его полностью с розетки отключать на 10 сек. Это я о незаконченных делах...

WMI меня конкретно подвела на системе Linux. Как будет кроме XP на других виндах пока не знаю. Windows 8.1 очень капризный, ощущение, что его почти заново переписали и в многом не успели доделать. Лучше не трогать этот вопрос, а то меня понесет.
...
Рейтинг: 0 / 0
Полные пути и относительные пути (которые видно по локальной сети)
    #38710197
Дмитрий77
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Андрей159WMI меня конкретно подвела на системе Linux. Как будет кроме XP на других виндах пока не знаю.,.
Ну, что касается модемов, WMI на 8.1 работает точно также.
Некоторые вещи на 8.1 работают, но тормозят, но конкретно про WMI вроде не заметил, оно и так слегка тормознутое.
Например сильно тормозит GetDefaultCommConfig function , пришлось менять на QueryDosDevice function , слово DOS звучит нелепо, но вот летать стало. Но тормозило начиная с Висты, просто руки не дошли.
Как нормальным кодом получить список всех модемов и COM-портов в системе?

А вообще все надо проверять на всех OS. На XP-тесты рассчитывать нельзя.
Но опыт показывает, что то что работает на Висте (самое паршивое, капризное и тормознутое из "новых"), то это как правило будет работать на 7, 8 и 8.1 практически без доделок.

Андрей159Windows 8.1 очень капризный ощущение, что его почти заново переписали и в многом не успели доделать.
Ты будешь ругаться, но 8.1 мне нравится больше чем семерка.
Недоработки, да, есть. Например большие проблемы возникают с ассоциациями файлов, связано с неувязками с новыми App из Store - крайне непродумано.
Но в целом 8.1 сильно лучше, те же драйвера устанавливаются на порядок быстрее. Общая тормознутость отсутствует, в 7-ке ее таки хватает, про висту вообще молчу. У меня ноут с 7-кой 4-летней давности тормозит так, что хочется по нему стукнуть, причины так и не нашел, переустанавливать неохота.
То что убрали Аэро и споры вокруг START меню -по большому счету фигня.
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Полные пути и относительные пути (которые видно по локальной сети)
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]