Открытие веб-страницы из программы
От: .max Россия http://www.SWFmax.com/
Дата: 30.05.04 15:47
Оценка:
В качестве документации к моей программе используется html. Запускается через ShellExecute с командой Open. Проблема в том, что так не открываются якоря (page.htm#anchor) и страницы с аргументами (page.htm?arg=value). Очевидно, что все что после точки считается расширением, которого, естественно нет в реестре.
Как можно запустить такие страницы (браузером по умолчанию)?

30.05.04 20:29: Перенесено из 'Shareware и бизнес' — der Igel
SWF.max Flash Player
Re: Открытие веб-страницы из программы
От: rus blood Россия  
Дата: 30.05.04 16:51
Оценка:
Здравствуйте, .max, Вы писали:

M>В качестве документации к моей программе используется html. Запускается через ShellExecute с командой Open. Проблема в том, что так не открываются якоря (page.htm#anchor) и страницы с аргументами (page.htm?arg=value). Очевидно, что все что после точки считается расширением, которого, естественно нет в реестре.

M>Как можно запустить такие страницы (браузером по умолчанию)?

Префикс "file:///" есть?
Имею скафандр — готов путешествовать!
Re[2]: Открытие веб-страницы из программы
От: .max Россия http://www.SWFmax.com/
Дата: 30.05.04 20:24
Оценка:
RB>Префикс "file:///" есть?

После добавления file:/// стали происходить дикие вещи:

— без якоря все в порядке;
— при запуске с якорем: появляется окно "Выбереите папку, куда переместить page.htm", затем то же, только "копировать", потом в браузере открывается page.htm (не на якоре) и, наконец, в блокноте открывается HTML страницы (?!).

Пробовал все backslash переделать в slash — не помогает. При запуске через "Пуск > Выполнить" запускается без глюков, но, опять-таки, не на якоре...
SWF.max Flash Player
Re: Открытие веб-страницы из программы
От: aGrey Литва  
Дата: 31.05.04 03:29
Оценка:
Здравствуйте, .max, Вы писали:

M>В качестве документации к моей программе используется html. Запускается через ShellExecute с командой Open. Проблема в том, что так не открываются якоря (page.htm#anchor) и страницы с аргументами (page.htm?arg=value). Очевидно, что все что после точки считается расширением, которого, естественно нет в реестре.

M>Как можно запустить такие страницы (браузером по умолчанию)?

Вот так — точно будет работать:

iexplore.exe file://c:/folder/file.htm#anchor


Как вариант — можно создать временный файл, с таким содержимым:

<HTML><HEAD><META HTTP-EQUIV=Refresh CONTENT="0; URL=file://c:/folder/file.htm#anchor"></HEAD></HTML>


sprintf(szSEBuf, "<HTML><HEAD><META HTTP-EQUIV=Refresh CONTENT=\"0; URL=file://%s#%s\"></HEAD></HTML>", szPath, szActor);
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.