Я пытаюсь открыть файл справки из моего приложения Java. Я могу сделать это, используя строку:
Runtime.getRuntime().exec(new String[] {strPath, strUrl} );
где strPath - это путь к IEXPLORE.EXE, а strURL - мой путь к файлу справки. Однако, когда я передаю файл справки с внутренней ссылкой, содержащей пробел (например, «c: ... \ helpfile.htm # some section»), страница открывается в IE, но не переходит в соответствующий раздел , Если я заменю пробел на «% 20», произойдет то же самое.
Используя командную строку в XP, происходит нечто более странное. Когда я бегу:
c:\> path\to\iexplore.exe "path\to\helpfile.htm#some section"
Я получаю то же поведение, что и выше, но если я наберу:
c:\> path\to\iexplore.exe "path\to\helpfile.htm#some%20section"
IE загрузится, но не откроет файл вообще, и меня перенаправят на мою домашнюю страницу.
Помещение пути к файлу справки с пробелом в адресную строку IE успешно направляет меня в правильный раздел. Похоже, что Firefox не страдает от этих недостатков.
Не думаю, что смогу многое сделать, чтобы изменить макет htm-файлов или имена внутренних ссылок. Кто-нибудь сталкивался с этой проблемой и есть какие-нибудь предложения по ее преодолению? Спасибо!