Perl/TkでGUIプログラミングをしております。
プログラム中のButtonを押した時に自分のパソコンに設定している
既定のブラウザでWEBサイトを開くにはどうすればいいでしょうか?
イメージは下記のような感じです。
use Tk;
use Encode;
$url = "http://okwave.jp/";
$main->Button(-text=>decode("cp932","URLを開く"),-font => ["MS ゴシック", 12],
-command => \&open_url)
->grid(-row=>0,-column=>0);
sub open_url{
# 既定のブラウザでURL($url)を開く処理
}
よろしくお願いします。
No.3ベストアンサー
- 回答日時:
Win32::FileOpが標準モジュールか忘れましたが、それを使えばプロンプトも開きません。
use Win32::FileOp qw(ShellExecute);
$url = "http://okwave.jp/";
ShellExecute($url);
標準モジュールでは無かったので
ppm install Win32-FileOp
にてインストール後、上記ソースで目的を達成できました。
ありがとうございます。
No.4
- 回答日時:
コマンドプトンプト、一瞬開きますね・・・。
すみません。書き忘れていて申し訳ないのですが、私の環境では
コマンドプロンプトが表示される事なくWEBページを開けました。
OS:Windows XP Pro SP3
Perl:Active Perl v5.8.6 build 811
No.2
- 回答日時:
#!/usr/bin/perl
use warnings;
use strict;
# 方法 2 jscript か vbscriptを使う。
# ただし、jscript か vbscript のスクリプトファイルを
# 別途用意する必要がある。
my $uri = shift || 'http://google.co.jp';
my $jscript = shift || 'foo.js';
my $cmd = 'cscript.exe';
my $option = '//nologo';
open( my $ph, '-|', $cmd, $option, $jscript, $uri ) or die "$cmd:$!";
close $ph or die "$cmd:$!";
foo.js の 中身
WScript.CreateObject("WScript.Shell").Run(WScript.Arguments.Item(0));
jscriptかvbscriptで出来るようなのを見つけていました。
perlでの使い方を教示頂きありがとうございます。
別途ファイルが必要という事だったので、
今回は見送らせて頂きます。
機会があれば使わせて頂きますね。
No.1
- 回答日時:
#!/usr/bin/perl
use strict;
use warnings;
# Windows 限定
my $uri = shift || 'http://google.co.jp';
my $cmd = 'cmd.exe /c start ' . $uri;
system $cmd;
ありがとうございます。
上記方法で目的を達成できました。
一瞬コマンドプロンプトが表示されますが…
これを表示しないようにするのは少し手間かかるみたいですね。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(ブラウザ) pythonの既定のブラウザを変更したいです 1 2022/07/06 22:09
- Chrome(クローム) インターネットショートカットをダブルクリックしてもWebページが開けなくなりました 2 2022/04/01 15:28
- Excel(エクセル) セルの値をグーグルで検索するエクセルVBAについて! 2 2022/08/01 21:41
- YouTube iPhoneでURLからYouTube動画をみるとき、ブラウザで開かずアプリで直接開く方法を教えてく 1 2022/10/07 12:56
- その他(プログラミング・Web制作) laravel 本番環境でメールが送れません。 1 2023/02/17 17:57
- その他(メールソフト・メールサービス) メールアプリ spark にauメールが入れられない!!! 1 2022/08/19 23:51
- その他(インターネット接続・インフラ) ブラウザにIPアドレス入力した時 1 2022/06/16 19:08
- Chrome(クローム) Chromeが強制終了 1 2023/01/29 09:54
- その他(ブラウザ) Androidについて 1 2022/04/13 13:46
- Perl Perlのエラーについてご教授ください。初心者です。 CGIを別サーバに移したところ、Perlのバー 5 2023/05/31 10:48
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
perlをバージョンアップしたら...
-
Perlでファイルの末尾から指定...
-
英数文字列のうちの数値を4桁に...
-
#!/usr/bin/perlで書きだしたCG...
-
bashスクリプト
-
ファイルアイコンの左下に緑の□...
-
perlでリテラル値はメモリにど...
-
perlについて
-
Perlで特定文字列から特定文字...
-
CGIでimgタグでalignを使うとエ...
-
Perlの例文でif($a==1&&$b==5&&...
-
テキストファイルで提出とは?
-
Perl の外部モジュールの利用方法
-
アルファベットに付いて質問し...
-
Perlのエラーについてご教授く...
-
AI sisterとは、偽物の人ですか?
-
perlプログラミング 空白行削除
-
perlで2次元配列をサブルーチ...
-
Perlで時間の計算
-
perlのrequireの動き方について...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VHDLについてですが何がお...
-
Perl/TkのWWW::MechanizeのGET...
-
LWP::Simpleでのgetについて
-
Perl/TkでURLを既定のブラウザ...
-
LWPでHTMLが取得できないことが...
-
XML::XPathを使う
-
URI.pmの使い方を教えてくださ...
-
Perlでgoogle newsのRSSを取得...
-
mechanizeのタイムアウト処理に...
-
例外処理のフローチャートの記...
-
Excel VBAでリンク切れをチェッ...
-
ユーザー定義関数に#NAME?が返...
-
VBAで別モジュールへの変数の受...
-
"JScript"が見つかりません!
-
VBSがコンパイルエラーになりま...
-
VBでグローバル変数を宣言するには
-
エクセルVBAでシートモジュール...
-
「デバイスは PRN を初期化でき...
-
VBA This Workbookモジュール...
-
モジュールの最大数はいくつな...
おすすめ情報