| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > VB6 > Как сделать приложение для чтения HTML-файлов |
| Автор: MIF 24.2.2005, 11:04 |
| Как сделать приложение для чтения HTML-файлов...? Мне необходимо осуществить такой замысел... У меня есть демонстрационный диск с авторан-меню.. Через это меню я должен выйти на HTML файл... и вобщем выхожу запускается Internet Explorer.... Мне бы хотелось сделать средствами VB некое приложение, которое запускалось автоматически и выводило на экран этот файл... В пакете VB6 есть средство, которое собственно работает как простой броузер.... Но для того, чтобы запустить HTML файл через это приложение мне надо явно указать в строке URL путь к этому файлу или в самой программе указать путь к файлу HTML (E:///ИМЯ ПАПКИ/***.HTML) тогда при запуске приложения HTML грузится автоматически. Однако следует заметить, что если указать жесткую привязку (E:///ИМЯ ПАПКИ/***.HTML),то на другой машине это может и не работать ( у одних CDROM - E, а у других - F )... !!! Может кто решал похожие проблемы....? Может есть другие компоненты для реализации этой задачи? |
| Автор: Naghual 24.2.2005, 11:11 |
| Проще тебе узнать путь приложения. App.Path - каталог, из которого запущено твое приложение. Тоесть E:\, G:\ или сколько их там. |
| Автор: MIF 24.2.2005, 11:16 |
| Naghua Можно немного подробнее... Мне нужно указать App.Path вместо бкувенного значения...? |
| Автор: Vidocq 24.2.2005, 11:41 | ||
| MIF Да. К примеру, пишешь:
Где Path - ясное дело, путь к загружаемому хтмл файлу ;) |
| Автор: MIF 24.2.2005, 11:45 |
| Попробую сейчас сделать.... |
| Автор: Guest 24.2.2005, 13:49 |
| У меня что-то не получилось... вот програмный код, который отвесает за загрузку HTML по абсолютному пути Private Sub LoadNewDoc() Static lDocumentCount As Long Dim frmD As frmBrowser1 lDocumentCount = lDocumentCount + 1 Set frmD = New frmBrowser1 frmD.StartingAddress = "C:\html\index.html" frmD.Show End Sub |
| Автор: MIF 24.2.2005, 13:51 | ||
От MIF |
| Автор: Naghual 24.2.2005, 14:19 |
| frmD.StartingAddress = App.Path & "\html\index.html" - Это если прога в корне диска лежит. И еще: frmD.Browser1.StartingAddress У формы нет свойства StartingAddress. Это свойство у комноненты обозревателя. Вместо Browser1 впиши свое название этого компонента. |
| Автор: MIF 24.2.2005, 14:31 |
| Вот спасибо Naghual... !!! заработало... Я с Вашей помощью решил эту проблему... Спасибо.... Только один еще вопросик.... Можно ли реализовать такую фичу... Скажем запускаем этот браузер c некоторыми параметрами: " webbrouser.exe --index.html " И он загружает необходимую страницу, которую мы указали после -- .. Просто я к тому, что у меня в меню несколько различных HTML файлов.... получается нужно будет создавать для них свой броузер... |
| Автор: Naghual 24.2.2005, 15:45 |
| Зачем? Для каждого ХТМЛ свой браузер? Я так понимаю, что следующая страница откроется в том же окне браузера что и предыдущая. Или в href указан другой адресат? |
| Автор: MIF 24.2.2005, 15:53 |
| Да конечно она откроется в том же окне... Но у меня AUTORUN на диске - это EXE файл.... На нем размещено меню из трех пунктов... через которые можно попасть на index1.htm, index2.htm, index3.htm В меню AUTORUN у меня указана ссылка на мой броузер.. который запускается... и по умолчанию запускает начальную страницу index.htm.... Но помимо этой страницы у меня есть возможность запустить через авторан- меню еще index1.htm, index2.htm Вот как это сделать через AUTORUN меню одним браузером...? |
| Автор: Naghual 24.2.2005, 16:02 | ||
| А... Есть такая функция Command. Она возвращает переданный приложению параметр при запуске. Тоесть если запустить программу "webbrouser.exe index.html", то Command вернет "index.html". Вот она то тебе и поможет. Пишеш:
А почему ты хочеш использовать именно самописный браузер вместо стандартного? Добавлено @ 16:05 Лучше использовать Command$. Ну чтобы работать конкретно с String. |
| Автор: MIF 24.2.2005, 16:12 |
| Хороший вопрос.... На него я не могу дать отвта... т.к. это хочет мой хаказчик..... Видно его мутит от Explorera..... Попробую сейча сделать...... С Вами уменя точно все получится.... О свих результатах напишу... Спасибо за помощь... |
| Автор: Naghual 24.2.2005, 16:20 | ||
Тогда зачем делать отдельное приложение для браузера? Почему не использовать то же авторановское? |
| Автор: MIF 24.2.2005, 16:30 |
| Спасибо....Naghual !!! Получилось... |
| Автор: MIF 24.2.2005, 17:06 |
| И последняя доводка в прграмме... Пробовал написать условие на то, что если Command не задан строка-(1), то нужно грузить index.htm по умолчанию.. строка (2) Только какое значение в условии для COMMAND нужно написать, чтобы сказать существует оно или нет..... (TRUE или FALSE) - у меня не получилось Private Sub LoadNewDoc() Static lDocumentCount As Long Dim frmD As frmBrowser lDocumentCount = lDocumentCount + 1 Set frmD = New frmBrowser frmD.StartingAddress = App.Path & "\html\" & Command /// запускается с параметром (1) frmD.StartingAddress = App.Path & "\html\index.htm" /// запуск по умолчанию index.htm (2) frmD.Show End Sub |
| Автор: Naghual 24.2.2005, 17:19 | ||
И тебе нужна защита от ламера: Сделай проверку на левый параметр при запуске (Ну если Комманд муть вернет) |
| Автор: MIF 24.2.2005, 17:32 |
| Спасибо огромное Naghual ..... !! |