Откройте локальную веб-страницу из Perl - PullRequest
1 голос
/ 25 июля 2011

Я пишу Perl-скрипт, который создает HTML-вывод, и я хотел бы, чтобы он был открыт в предпочитаемом браузером пользователя. Есть ли хороший способ сделать это? Я не вижу способа использования ShellExecute, поскольку у меня нет адреса http:.

Ответы [ 3 ]

4 голосов
/ 26 июля 2011

Если вы сохранили вывод в "../data/index.html",

$ret = system( 'start ..\data\index.html' );

должен открыть файл в браузере по умолчанию.

Добавлено:

Советы здесь :

my $filename = "/xyzzy.html";  #whatever
system("start file://$filename");
1 голос
/ 25 июля 2011

Поскольку это Windows, простой способ - сбросить данные во временный файл, используя File::Temp (убедитесь, что он имеет расширение .htm или .html, и что он не очищается сразу при выходе из скрипта, так что файл остается, т. е. вы, вероятно, хотите что-то вроде File::Temp->new(UNLINK => 0, SUFFIX => '.htm')). Тогда вы сможете использовать Win32::FileOp ShellExecute, чтобы регулярно открывать файл. Это делает всевозможные предположения о типах файлов, связанных с расширениями файлов, но тогда, как правило, работает Windows.

1 голос
/ 25 июля 2011

Если я понимаю, что вы пытаетесь сделать, это не сработает. Вам нужно настроить веб-сервер, например apache , и настроить его для выполнения вашего скрипта. Это не было бы тривиальной задачей, если вы никогда не делали этого раньше.

...