Слегка мутный вопрос) . Если дело в том, что один сервер имеет доступ в инет, а другой нет, но есть нужда поделиться доступом, то можно встроить функцию перенаправления как в том же радмине, но насколько этим реально люди пользуются? Если сервера должны автоматом синхронизировать свою деятельность, то это уже не удаленное управление, а пиринговая сеть или что-нибудь в этом роде.
Согласен, но суть вопроса в том как наладить взаимодействие серверов без "головного сервера". Сначала - как синхронизировать 2 сервера между собой, потом 3, 4 ...
Это не относится к тому что я делаю - я делаю удаленное управление компом. Если я добавлю сканер, подбор простых паролей, автоматическую установку и согласование работы серверов, то это будет червяк создающий ботнет).
Например, программа имеет определенное место установки и ведет лог своей деятельности, который хранится тоже в определенном месте. Программа сканируя сеть, что-то находит и устанавливается, затем ищет своих сородичей, и логи их деятельности, поскольку они хранятся в известных местах. Что писать в логи и как с этой инфой распоряжаться зависит от основной цели, для которой делается программа.
Как ищет? По каким признакам определит, что машина (найденная путем перебора сегмента сети) содержит "сородича"? Какие функции у "сородича-поисковика" и "сородича-искомого"? Каким будет этот протокол оптимального вида?
нафига тебе это все? можно сделать по разному все зависит от цели. В архиве вариант с файлманагером, в принципе еще будет добавлена запись в файл на стороне севера по таймеру, а так никаких функций добавлять больше не планируется. В философском плане есть идея приделать клиенту еще веб сервер. Вот такая вот прикольная игруха полулась
Нет не для картинки рабочего стола, для этого пришлось бы накатать плагин для браузера. Для того чтобы процесс обратного вызова был самодостаточный - типа на крайний случай скачать файл с адресом и временем обратного вызова с клиента.
из под СОМ!!? Класс, ща попробую со своим "софтом" надеюсь не спалят? а по freedns - не совсем понятно, он сохраниn IP клиента, чтобы потом поскорее конектиться к нему в рамках back-connect? Может статейку напишешь с разъяснениями интересных кусков и преимуществ своего Remote Desktop и коротким сюжетом для сайта? Чисто для истории и для себя. Потом то все одно забросишь проект, а так будет чего вспомнить когда на wam заглянешь? А?
про DNS фишка такая: когда ты устанавливаешь сервер то назначаешь(через сом. строку или прямо в реестр пишещь ) ему идентификатор который есть ДНС имя зареганое на freedns и связанное с ИП клиента. На ДНС сервисе можно указать любой ИП. Если хочешь чтобы сервер связался с клиентом, ставишь там ИП клиента, если не хочешь ставишь какой-нибудь левый ИП. Информация на ДНС сервисе обновляется примерно раз в 3 минуты. Т.е. в общем получается два варианта связи, первый напрямую и второй back-connect - типа Radmin и Teamviewer в одном флаконе Я сделаю что-то типа хелпа и подумаю насчет статейки,
Кому интересно в архиве один из вариантов простого ВЕБ робота(используется IWebBrowse2). Он: логинится (аккаунт нужно сделать предварительно) на сайте noip_com и обновляет ИР для ДНС. Проверял при условии что там одна запись. Чтобы во время работы не было видно окна браузера нужно написать "coinvoke ppIhlp, IHelper, Visible, 0" вместо "coinvoke ppIhlp, IHelper, Visible, 1" также можно устанавливать socks прокси "coinvoke ppIhlp, IHelper, SetProxy, addr sProxy" пример строки прокси "188.235.148.209:35475".
Спасибо! Скорость у тебя как у Бетмена! )) Попробовал собрать из исходников REMOTE_DESKTOP вариант, который ты запостил самым первым в топике Выдало ошибку ... кажется прописать в каком-то из заголовков что-то типа Код (Text): include \masm32\include\msvcrt.inc includelib \masm32\lib\msvcrt.lib memset proto c:DWORD, :DWORD, :DWORD memcpy proto c:DWORD, :DWORD, :DWORD memcmp proto c:DWORD, :DWORD, :DWORD malloc proto c:DWORD free proto c:DWORD ... по Client из той же папки, тоже Код (Text): Microsoft (R) Windows (R) Resource Compiler, Version 5.00.1823.1 - Build 1823 Copyright (C) Microsoft Corp. 1985-1998. All rights reserved. Using codepage 1251 as default Creating .\res\rsrc.RES RC: RCPP -CP 1251 -f C:\_temp\123123\REMOTE_DESKTOP\Client\res\RCa03896 -g C:\_temp\123123\REMOTE_DESKTOP\Client\res\RDa03896 -DRC_INVOKED -D_WIN32 -pc\:/ -E -I. -I .\res\ -I . -I C:\Program Files\Microsoft Visual Studio\VC98\atl\include -I C:\Program Files\Microsoft Visual Studio\VC98\mfc\include -I C:\Program Files\Microsoft Visual Studio\VC98\include .\res\rsrc.rc. Writing ICON:1, lang:0x409, size 296 Writing ICON:2, lang:0x409, size 744 Writing ICON:3, lang:0x409, size 1640 Writing ICON:4, lang:0x409, size 176 Writing ICON:5, lang:0x409, size 304 Writing ICON:6, lang:0x409, size 816 Writing GROUP_ICON:200, lang:0x409, size 90. Writing ICON:7, lang:0x409, size 744 Writing ICON:8, lang:0x409, size 296 Writing GROUP_ICON:205, lang:0x409, size 34. Writing MENU:466, lang:0x409, size 54. Writing MENU:3333, lang:0x409, size 104. Writing MENU:167, lang:0x409, size 142. Writing DIALOG:148, lang:0x409, size 386. Writing VERSION:1, lang:0x409, size 812 Microsoft (R) Windows Resource To Object Converter Version 5.00.1736.1 Copyright (C) Microsoft Corp. 1992-1997. All rights reserved. Assembling: notebook.asm error A4910: cannot open file: C:\masm32\bin\ml.err .\client_desktop\client_regions.asm(30) : error A2006: : malloc .\client_desktop\client_regions.asm(104) : error A2006: : malloc .\client_desktop\client_regions.asm(108) : error A2006: : memset .\client_desktop\client_regions.asm(268) : error A2006: : malloc .\client_desktop\client_regions.asm(272) : error A2006: : memset .\client_desktop\client_regions.asm(288) : error A2006: : memcpy .\client_desktop\client_regions.asm(319) : error A2006: : malloc .\client_desktop\client_regions.asm(323) : error A2006: : memset .\client_desktop\client_regions.asm(335) : error A2006: : memcpy .\client_desktop\Client_GDI.asm(78) : error A2006: : free .\client_desktop\Client_GDI.asm(158) : error A2006: : free .\client_desktop\client_player.asm(73) : error A2006: : memcpy .\client_desktop\client_player.asm(74) : error A2006: : free .\client_desktop\client_player.asm(87) : error A2006: : free .\client_desktop\client_player.asm(146) : error A2006: : malloc .\client_desktop\client_network.asm(157) : error A2006: : malloc .\client_desktop\client_network.asm(161) : error A2006: : memcpy .\client_desktop\client_network.asm(239) : error A2006: : malloc .\client_desktop\client_network.asm(266) : error A2006: : malloc .\client_desktop\client_network.asm(293) : error A2006: : memcpy .\client_desktop\Client_color.asm(67) : error A2006: : malloc .\client_desktop\Client_color.asm(71) : error A2006: : memset .\client_desktop\Client_color.asm(123) : error A2006: : malloc .\client_desktop\Client_color.asm(247) : error A2006: : malloc .\client_desktop\Client_color.asm(251) : error A2006: : memset .\client_desktop\Client_color.asm(310) : error A2006: : malloc .\client_desktop\client_input.asm(43) : error A2006: : memcpy desk_client.asm(186) : error A2006: : free desk_client.asm(194) : error A2006: : free desk_client.asm(205) : error A2006: : memcpy desk_client.asm(206) : error A2006: : free desk_client.asm(207) : error A2006: : free desk_client.asm(265) : error A2006: : free desk_client.asm(275) : error A2006: : free desk_client.asm(283) : error A2006: : free desk_client.asm(311) : error A2006: : free desk_client.asm(338) : error A2006: : malloc desk_client.asm(340) : error A2006: : memset desk_client.asm(355) : error A2006: : malloc desk_client.asm(357) : error A2006: : memset desk_client.asm(375) : error A2006: : free desk_client.asm(379) : error A2006: : free desk_client.asm(383) : error A2006: : free desk_client.asm(386) : error A2006: : free teln_client.asm(75) : error A2006: : malloc teln_client.asm(83) : error A2006: : malloc teln_client.asm(163) : error A2006: : memset teln_client.asm(204) : error A2006: : free teln_client.asm(210) : error A2006: : free teln_client.asm(213) : error A2006: : free teln_client.asm(252) : error A2006: : malloc teln_client.asm(254) : error A2006: : memset teln_client.asm(268) : error A2006: : free notebook.asm(93) : error A2006: : malloc notebook.asm(95) : error A2006: : memset notebook.asm(99) : error A2006: : free notebook.asm(100) : error A2006: : free notebook.asm(112) : error A2006: : memset notebook.asm(377) : error A2006: : memset notebook.asm(418) : error A2006: : malloc notebook.asm(567) : error A2006: : malloc notebook.asm(570) : error A2006: : memset notebook.asm(571) : error A2006: : memcpy notebook.asm(572) : error A2006: : free notebook.asm(575) : error A2006: : malloc notebook.asm(578) : error A2006: : memset notebook.asm(695) : error A2006: : memcpy .\client_desktop\client_interface.asm(280) : error A2006: : _ftol .\client_desktop\client_interface.asm(293) : error A2006: : _ftol .\client_desktop\client_interface.asm(318) : error A2006: : floor .\client_desktop\client_interface.asm(320) : error A2006: : _ftol .\client_desktop\client_interface.asm(335) : error A2006: : floor .\client_desktop\client_interface.asm(337) : error A2006: : _ftol Microsoft (R) Incremental Linker Version 5.12.8078 Copyright (C) Microsoft Corp 1992-1998. All rights reserved. [/c0de] ... если хочешь, могу остальные пере собрать попробовать
у меня инклуды немного другие чем в стандартном пакете. SECURITY_ATTRIBUTES STRUCT niLength DWORD ? lpSecurityDescriptor DWORD ? bInheritHandle DWORD ? SECURITY_ATTRIBUTES ENDS
.. ну тогда уж и msvcrt.lib пришли свою, или я что-то путаю? А no-ip.com получается платный? А тут что происходит. Инталится и остается как сервис? Чего-то в главном меню не увидел "Запуск telnet сервера" не подскажешь?
msvcrt.lib из VC. no-ip.com 30 пишут бесплатно я сильно не искал может есть и совсем бесплатные. У teamviewer свой DNS сервис они используют UDP протокол для организации коммуникации между клиентом и сервером. У меня это так - для прикола.