![]() |
|
Модераторы: Partizan, gambit |
![]()
|
|
| ApSerg |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 9 Регистрация: 26.4.2007 Репутация: нет Всего: нет |
Сразу оговорюсь C# и .NET Framework не знаю (пока). Поэтому собственно и вопрос такой:
Есть мастер настройки ADSL модема, выполненный в виде HTML страниц, расположенных локально у пользователя на компьютере, который призван облегчить жизнь пользователя, оградив его от "слишком сложного" web интерфейса самого модема. Настройка модема выполняется через запросы к CGI приложениям, расположенным на web сервере модема. Применяется техника скрытых фреймов. И есть у этого мастера ряд недостатков: 1. Отсутствие обратной связи. Т.е. невозможно достучаться до фрейма в котором находится страница, возвращенная сервером из-за политики одного источника. 2. Надо настраивать hardware, ставить драйвера и т.п , а это возможно только вызовом exe приложений (или я ошибаюсь), что не всегда прозрачно для пользователя. Для преодоления вышеописанной функциональной скудности в голову мне пришла следующая мысль - сделать приложение c пользовательским интерфейсом на основе DHTML, JavaScript. Я знаю, что это можно сделать на MFC (CHTMLView), а можно ли это сделать на C# и проще ли это сделать на C#. Таким образом к приложению предъявляются следующие требования: 1. Возможность настройки сетевой карты. 2. Возможность установки компонентов системы (для Windows 98 драйвер PPPoE). 3. Возможность создания RAS подключений. 4. Интерфейс приложения должен быть основан на HTML, JavaScript. Должен обеспечиваться простой способ обмена данными и событиями между web составляющей пользовательского интерфейса и приложением. По возможности ссылайтесь на конкретные классы и т.п., чтобы мне хоть как то сориентироваться. Заранее спасибо. |
|||
|
||||
| Exception |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 4525 Регистрация: 26.12.2004 Репутация: 29 Всего: 186 |
Лучше не заморачивайся и пиши на C++/MFC.
Это не тот случай, когда нужен C#. |
|||
|
||||
| ApSerg |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 9 Регистрация: 26.4.2007 Репутация: нет Всего: нет |
Я немного провентилировал этот вопрос и нашёл такие полезные вещи как доступ WMI (пространство имён System.Management) и класс WebBrowser. С помощью WMI можно настроить хард и удалённые подключения, а WebBrowser предоставляет доступ к классам HtmlDocument и HtmlElement, которые по сути и есть DOM, доступ к которой мне был нужен. Что на это скажет уважаемый Exception? |
|||
|
||||
| Exception |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 4525 Регистрация: 26.12.2004 Репутация: 29 Всего: 186 |
Что для работы программы на C# нужен .NET Framework, и, по сути, если для тебя не проблема поставить его на комп конечного пользователя (он весит 20 мегабайт, не все такое могут скачать из интернета), конечно, используй C#.
|
|||
|
||||
| mr.DUDA |
|
||||
|
3D-маньяк ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 8244 Регистрация: 27.7.2003 Где: город-герой Минск Репутация: 110 Всего: 232 |
Если охота возиться с этим убогим компонентом - ради бога. Со своей стороны, я бы посоветовал юзать что-то посолиднее чем
, раз уж у клиента и у сервера предполагается держать .NET Framework. Например веб-сервисы. Или ремоутинг. -------------------- ![]() |
||||
|
|||||
| Любитель |
|
|||
|
Программист-романтик ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3645 Регистрация: 21.5.2005 Где: Воронеж Репутация: 11 Всего: 92 |
||||
|
||||
| ApSerg |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 9 Регистрация: 26.4.2007 Репутация: нет Всего: нет |
.NET можно поставлять вместе приложением (или есть какие то ограничения по лицензии). Добавлено через 3 минуты и 20 секунд А насчет web-сервера Любитель совершенно прав. Добавлено через 7 минут и 23 секунды но это не только называется web-сервером - это и есть web-сервер (micro-httpd) |
|||
|
||||
| ivashkanet |
|
|||
![]() Кодю потиху ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3684 Регистрация: 23.2.2006 Где: Гомель, Беларусь Репутация: 47 Всего: 149 |
ApSerg,
1) Вы уже неделю спрашиваете. За это время можно было написать тестовое приложение. 2) Вместо WebBrowser лучше использовать System.Net.WebClient, парсить ответы регулярными выражениями и отправлять ответы тем же WebClient 3) Неужели кроме web-интерфейса у модема нет другого способа настройки? Если все это можно настроить с помощью командной строки, то вполне подойдет System.Diagnostics.Process.Start() |
|||
|
||||
| Exception |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 4525 Регистрация: 26.12.2004 Репутация: 29 Всего: 186 |
||||
|
||||
| ivashkanet |
|
|||
![]() Кодю потиху ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3684 Регистрация: 23.2.2006 Где: Гомель, Беларусь Репутация: 47 Всего: 149 |
||||
|
||||
| Exception |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 4525 Регистрация: 26.12.2004 Репутация: 29 Всего: 186 |
||||
|
||||
| ivashkanet |
|
|||
![]() Кодю потиху ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3684 Регистрация: 23.2.2006 Где: Гомель, Беларусь Репутация: 47 Всего: 149 |
Exception, да, мой косяк
P.S. Тогда вопрос такой: что мешает собрать инсталяционный файл, который поставит все компоненты, а в конце запустит браузер с страницей настройки. (вот только я не понимаю смысл п1 Короче, нужно пробовать ;-) |
|||
|
||||
| ApSerg |
|
||||||||||
|
Новичок Профиль Группа: Участник Сообщений: 9 Регистрация: 26.4.2007 Репутация: нет Всего: нет |
Уже пишу и не тестовое, а реальное, но начал не с интеграции web GUI, а с настройки сетевых адаптеров через WMI.
Есть 2 причины, по котором я так привязался к WebBrowser: 1. Мне больше подходит GUI написанное на HTML, потому что приложение будет содержать также различного рода инструкции и рекламу. 2. Настройка модема через web-интерфейс, что в свою очередь имеет под собой такое основание: а) Не все модемы имеют telnet command line interface (например модемы на чипсетах TNETD7200/7300/7100 c 2 Мб flash имеют только стандартный linux shell), а хотелось бы получить универсальный способ настройки чтобы не париться, в последствии, выдумывая что новое. б) Да и парсить HTML страницу вроде как не сложнее, чем ответы командной строки.
См. выше
Ставить компоненты надо после выбора региона в котором проживает абонент и поиска оборудования, а пункт 1,
если вы об этом, нужен, например, если смениться прошивка чтобы определить ошибочную ситуацию, или, другой случай, надо определить загрузился модем или нет. Полюбому я уже определился - .NET использовать, но если будут какие то ещё соображения пишите. Всем спасибо! |
||||||||||
|
|||||||||||
| ivashkanet |
|
|||
![]() Кодю потиху ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3684 Регистрация: 23.2.2006 Где: Гомель, Беларусь Репутация: 47 Всего: 149 |
||||
|
||||
| mr.DUDA |
|
|||
|
3D-маньяк ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 8244 Регистрация: 27.7.2003 Где: город-герой Минск Репутация: 110 Всего: 232 |
К сожалению, вынужден констатировать факт: универсальных решений общей задачи не существует. В каждом конкретном случае придётся вносить изменения в общий код, приспосабливая его к новым условиям. Это ломает напрочь попытки придумать общее решение.
Это целиком и полностью зависит от того, кем была создана страница - вами или кем-то другим. Написать парсер под совершенно чужие веб-страницы практически равносильно самоубийству. -------------------- ![]() |
|||
|
||||
| ApSerg |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 9 Регистрация: 26.4.2007 Репутация: нет Всего: нет |
Если кому то ещё интересно снова упёрся в cross-frame security и решил web-лицо приложению оставить, а функционал всё таки свалить на telnet. А была уверенность, что при работе с компонентом web-броузера (в отличии от работы на JavaScript внутри документа) этой политики уже не будет. Ну да ладно может оно и к лучшему.
|
|||
|
||||
![]()
|
| Прежде чем создать тему, посмотрите сюда: | |
|
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :) Так же не забывайте отмечать свой вопрос решенным, если он таковым является :) Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |