Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > Интернет и сети
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 07.03.2020, 20:19
UFO 007 UFO 007 вне форума
Новичок
 
Регистрация: 28.11.2010
Сообщения: 54
Репутация: 10
Сообщение Как увидеть WiFi-принтер из Project1.exe?

Доброго всем времени суток!
C порога просьба - чайника (по сетям) сильно не пинать. С неделю курю форумы - и мелкомягковский нативный ВЛанапи шерстил (благо - Яндекс-браузер на лету переводит), и хотел попробовать по пдфу Коробецкой А. А., но тут засада - в ХЕ2 на панели инструментов на закладке Интернет TUdpSocket есть, а ТСР - нету (Дэлфя криво стала что ли?), и дошёл ход до Йона Снейдера... В общем - в котелке: каша полная. Не мог бы кто-нибудь из знающих помочь "причесать" эту кашу чтобы котелок заработал в нужном направлении? Ну что-то в роде "алгоритм на пальцах":
1. Создаём сокет (имя функции №1);
2. Поднимаем клиента (имя функции №2);
3. Делаем коннект (имя функции №3);
...
99. Видим сетевое имя принтера (В Мемо на форме).
И если у какой-нибудь функции параметры покажутся непонятно-немыслимыми, то доспрошу. А то намедни нашёл такое: https://theroadtodelphi.com/2009/10/...-using-delphi/ так возвращает ошибку 1062 (не знаю может у автора ВаВай-карта внутри компа/ноута, а я пытаюсь через роутер) и у мелкомягких узнал, что это - "Служба не активна" (какая именно?). В общем нижайше прошу помощи.

Заранее благодарен.
__________________
...И был сначала ZX-Spectrum, а потом его T(urbo)ASS(e)M(bler)... И только на 7-й день (когда Интел купила Пентковского [из КБ Бабаяна]) - появился Pentium-I... А в Союзе P-II был ещё в 1978 году (точнее: Эльбрус [мультискалярный проц] только не рапространялся спекулянтами, а управлял ракетами и спутниками)... А лет с пяток назад Эльбрус-II ПЁР (но никак не ГНАЛСЯ как Селероны) на F(recuency):= 400 GHz... А самое парадоксальное - презентация состоялась в Минске...
Ответить с цитированием
  #2  
Старый 07.03.2020, 23:41
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,003
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

А вопрос - зачем?
Что бы печатать из Delphi? Так поставь драйвер и система увидит этот принтер, как и Delphi.
Если хочется попробовать пообщаться с принтером, то для начала посмотри его IP и попробуй подключиться через Indy... Только доку прочитай, на каком порту у принтера какие сервисы висят.
Ответить с цитированием
Этот пользователь сказал Спасибо lmikle за это полезное сообщение:
UFO 007 (11.03.2020)
  #3  
Старый 09.03.2020, 21:02
UFO 007 UFO 007 вне форума
Новичок
 
Регистрация: 28.11.2010
Сообщения: 54
Репутация: 10
Сообщение

Цитата:
Сообщение от lmikle
А вопрос - зачем?
Принтер - это подопытный кролик, а в конечном итоге на том конце "ВайВая" будет Ардуиноподобная железяка (пока в пути с Алиэкспресса). А пока суть, да дело - надо принтер увидеть.
Цитата:
Сообщение от lmikle
печатать из Delphi?
- даремно не надь
Цитата:
Сообщение от lmikle
на каком порту у принтера какие сервисы висят
а вот отсюда поподробнее: какую именно доку (где её выкопать?)?
Спс
__________________
...И был сначала ZX-Spectrum, а потом его T(urbo)ASS(e)M(bler)... И только на 7-й день (когда Интел купила Пентковского [из КБ Бабаяна]) - появился Pentium-I... А в Союзе P-II был ещё в 1978 году (точнее: Эльбрус [мультискалярный проц] только не рапространялся спекулянтами, а управлял ракетами и спутниками)... А лет с пяток назад Эльбрус-II ПЁР (но никак не ГНАЛСЯ как Селероны) на F(recuency):= 400 GHz... А самое парадоксальное - презентация состоялась в Минске...
Ответить с цитированием
  #4  
Старый 11.03.2020, 00:54
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,003
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

Цитата:
Сообщение от UFO 007
а вот отсюда поподробнее: какую именно доку (где её выкопать?)?
Спс

Ну, копать девелоперскую доку по принтеру. Обычно, если это нормальный сетевой девайс, то там должен быть SNMP или что-то подобное на стандартном 161 порту.
Вообще, для тестов проще сваять маленький эхо сервер и запустить его где-нить (на втором компе, или на том же, и ходить через честный IP, а не через localhost).
Ответить с цитированием
Этот пользователь сказал Спасибо lmikle за это полезное сообщение:
UFO 007 (11.03.2020)
  #5  
Старый 14.03.2020, 15:30
UFO 007 UFO 007 вне форума
Новичок
 
Регистрация: 28.11.2010
Сообщения: 54
Репутация: 10
Сообщение

Цитата:
Сообщение от lmikle
... проще сваять маленький эхо сервер ...
На ниве "сетевого программирования" появились первые всходы: сваял не только сервер, но и клиента и вот такое:
Код:
procedure TServerForm.IdTCPServer1Execute(AContext: TIdContext);
var
 msg:string;
begin
  memo1.Clear;
  while msg<>'exit' do
  begin
 //Принимаем от клиента строку
    Try
      msg := AContext.Connection.Socket.ReadLn(IndyTextEncoding_UTF8);
  //Отвечаем
//      AContext.Connection.Socket.WriteLn('Took the line: ' + msg);
      Memo1.Lines.Add(AContext.Connection.Socket.Binding.PeerIP+'>'+msg+'<');
    Except
      on E: EIdException do
      begin
        Memo1.Lines.Add(AContext.Connection.Socket.Binding.PeerIP+': Connection error - ' + E.Message);
        break;
      end;
    End;
  end;
  //Закрываем соединение с пользователем
//  AContext.Connection.Disconnect;
end;
выдаёт следующий результат:
Код:
192.168.1.110>Edit1<
192.168.1.110>123<
192.168.1.110>any string or line<
но это - чат и это - не то, что сейчас нужно. И вообще: я правильно понимаю конструкцию: принтер - это сервер (слушает - чего печатать), а роутер - клиент (отправляет команды) и роутер - это сервер (слушает мои команды), а комп - клиент (отправляет запрос уровня чернил в картриджах)?
__________________
...И был сначала ZX-Spectrum, а потом его T(urbo)ASS(e)M(bler)... И только на 7-й день (когда Интел купила Пентковского [из КБ Бабаяна]) - появился Pentium-I... А в Союзе P-II был ещё в 1978 году (точнее: Эльбрус [мультискалярный проц] только не рапространялся спекулянтами, а управлял ракетами и спутниками)... А лет с пяток назад Эльбрус-II ПЁР (но никак не ГНАЛСЯ как Селероны) на F(recuency):= 400 GHz... А самое парадоксальное - презентация состоялась в Минске...
Ответить с цитированием
  #6  
Старый 14.03.2020, 19:58
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,003
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

роутер ничего не делает, кроме как передачи трафика от клиента к серверу и обратно. С этой точки зрения - роутер прозрачен. Так что то, что ты наваял и есть клиент-сервер, роутера в этой схеме как бы нет, он является частью media. Просто на роутере обычно еще пара-тройка серверов запущена (DHCP например), но это так сказать в дополнение к основному функционалу.

ЗЫ. Роутер - это просто умный хаб, хаб просто копирует входящие пакеты на все остальные свои порты и пусть клиенты сами отфильтровывают те, что им предназначены, а вот роутер умнее, он знает какой клиент сидит на каком порту и копирует входящие пакеты только на нужный порт. Вот и вся разница. Это если мы смотрим внутри сети. С общением наружу там немножко сложнее, но все-равно, даже с этой точки зрения роутер прозрачен.
Ответить с цитированием
Этот пользователь сказал Спасибо lmikle за это полезное сообщение:
UFO 007 (15.03.2020)
  #7  
Старый 15.03.2020, 02:34
UFO 007 UFO 007 вне форума
Новичок
 
Регистрация: 28.11.2010
Сообщения: 54
Репутация: 10
По умолчанию

Цитата:
Сообщение от lmikle
... С общением наружу там немножко сложнее, ...
даремно не надь - неча мне там (снаружи) делать, а пока суть, да дело - я не сидел, сложа руки (Яndex мне в них), и "родил"-таки то, что хотел:

netname.jpg

правда - с GetIPAdress пришлось повозиться... И теперь вот какая штука вырисовывается: раз у Artisana837 есть IP - стало быть я его вижу не через USB, а через ВиФи (самое парадоксальное - без WLanapi.dll) и в то же время в списке отсутствуют Redmi4 (телефон) и LG32TV:

router.jpg

тут FX-4300 - это комп, а unknown - LG32... И в чём прикол? Как остальных-то увидеть в своём списке? Может чтобы WLanapi не ругалась (1062) ей надо как службу увидеть клиент-серверный поток?
__________________
...И был сначала ZX-Spectrum, а потом его T(urbo)ASS(e)M(bler)... И только на 7-й день (когда Интел купила Пентковского [из КБ Бабаяна]) - появился Pentium-I... А в Союзе P-II был ещё в 1978 году (точнее: Эльбрус [мультискалярный проц] только не рапространялся спекулянтами, а управлял ракетами и спутниками)... А лет с пяток назад Эльбрус-II ПЁР (но никак не ГНАЛСЯ как Селероны) на F(recuency):= 400 GHz... А самое парадоксальное - презентация состоялась в Минске...
Ответить с цитированием
  #8  
Старый 15.03.2020, 14:05
UFO 007 UFO 007 вне форума
Новичок
 
Регистрация: 28.11.2010
Сообщения: 54
Репутация: 10
По умолчанию

Цитата:
Сообщение от lmikle
девелоперскую доку по принтеру.
без особой надобности
Цитата:
Сообщение от lmikle
Обычно, если это нормальный сетевой девайс, то там должен быть SNMP или что-то подобное на стандартном 161 порту.
задержал мышу над какой-то кнопкой (печать/настройки/... щас уже не помню) и выскочил хинт: 192.168.1.105:80/WSD/DEVICE и, как я понимаю, если на этот IP в порт 80 послать пару-тройку команд "на обум", то аппарат если не сдохнет совсем, то с ума уж точно - сойдёт (хотя если повезёт - проигнорирует мой мусор). Так или иначе, но крутить эту рулетку я не собираюсь - лучше копнуть в другую сторону: Socket Error # 10061 наяндексил, что избавиться от неё можно только вырубив брэндмауэр/защитник/антивирь и это работает, но во-первых: небезопасно, во-вторых: геморойно и в-третьих: как-то некрасиво (непрофессионально что ли - недружелюбно к пользователю), а на каком-то ресурсе видел ещё одну панацею: *.manifest - ужоль не по этому ли пути: Project\Options\Application\Runtime Themes\Use custom manifest? Если "да", какой текст надо забить в блокнот (после заменив расширение) и подсунуть Дэлфе этот файл?
__________________
...И был сначала ZX-Spectrum, а потом его T(urbo)ASS(e)M(bler)... И только на 7-й день (когда Интел купила Пентковского [из КБ Бабаяна]) - появился Pentium-I... А в Союзе P-II был ещё в 1978 году (точнее: Эльбрус [мультискалярный проц] только не рапространялся спекулянтами, а управлял ракетами и спутниками)... А лет с пяток назад Эльбрус-II ПЁР (но никак не ГНАЛСЯ как Селероны) на F(recuency):= 400 GHz... А самое парадоксальное - презентация состоялась в Минске...
Ответить с цитированием
  #9  
Старый 21.03.2020, 00:32
UFO 007 UFO 007 вне форума
Новичок
 
Регистрация: 28.11.2010
Сообщения: 54
Репутация: 10
По умолчанию

Алё, Народ!!!
В Тяпницу знамо дело - тяпнутый, поэтому рассусоливать чего и как добился - не буду... Но есть вопрос:
Код:
...WlanOpenHandle...
...WlanEnumInterfaces...
...
for i := 0 to pInterface^.dwNumberOfItems - 1 do...
в цикле i обнаруживается мой TP-Link... т. е. я знаю его GUID и SSID, и вот отсюда вопрос: в какой последовательности необходимо (чтобы получить список мозгофонов/планшетов/принтеров, общающихся через ВайВай*) использовать WlanGetAvailableNetworkList, WlanConnect, WlanScan и т.д и т. п.?

З.Ы. Нижайше прошу помощи даже у тех (вродь как чайников) что "шарят" хоть "чуть", но больше моего...
Спс

* (см. выше) - есть северокавказская "песня" на армянский мотив: " Ара, Вай-Вай - доступ давай!!! "

НаЯндексил: принтер - это немой терминал: как понимать?
__________________
...И был сначала ZX-Spectrum, а потом его T(urbo)ASS(e)M(bler)... И только на 7-й день (когда Интел купила Пентковского [из КБ Бабаяна]) - появился Pentium-I... А в Союзе P-II был ещё в 1978 году (точнее: Эльбрус [мультискалярный проц] только не рапространялся спекулянтами, а управлял ракетами и спутниками)... А лет с пяток назад Эльбрус-II ПЁР (но никак не ГНАЛСЯ как Селероны) на F(recuency):= 400 GHz... А самое парадоксальное - презентация состоялась в Минске...

Последний раз редактировалось UFO 007, 21.03.2020 в 01:25.
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 11:14.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter