[部分編集]
perl
install
exeファイルを作りたいので「perl exe」で検索
こことここをみてinstall
ここはうまくいかない。PAR実行時にperl510.dllがなんたら
追記:なんだかWin32::GUIモジュールを使ったスクリプトがexe化した後実行エラーになる。(他のモジュールもいくつかアウト)
そこでActivePerl5.10に乗り換え。なんか色々ごちゃごちゃして何やったか憶えてないけど、とりあえずWin32::GUIは動いた(しかしmixi_exportはperl510.dllがないと言われる)
こことここをみてinstall
ここはうまくいかない。PAR実行時にperl510.dllがなんたら
追記:なんだかWin32::GUIモジュールを使ったスクリプトがexe化した後実行エラーになる。(他のモジュールもいくつかアウト)
そこでActivePerl5.10に乗り換え。なんか色々ごちゃごちゃして何やったか憶えてないけど、とりあえずWin32::GUIは動いた(しかしmixi_exportはperl510.dllがないと言われる)
- やったこと
- MinGWをインストール。PATHにC:\MinGW\bin;追加。再起動。
- PPM(GUI)でCompress::Raw::Zlibをupdate(pp実行時にCant loadと言われたので)
- やったこと
ppmでno missing error(参考)
ppm search xxxx
で出てきた数字を
ppm install 数字
exe化コマンド(pp)
>pp -o hoge.exe hoge.pl
- cui非表示
>pp --gui -o hoge.exe hoge.pl
GUI
メモ
とりあえず
日本語表示(参考)
文頭で
use utf8; binmode STDIN, ":encoding(cp932)"; binmode STDOUT, ":encoding(cp932)";
※binmodeはPARで作ったEXEがうまく動かない
追記:use Encodeを行うとPARで出来たexeが動かない。
追記:use Encodeを行うとPARで出来たexeが動かない。
split-第二引数に@は使えない。使うと要素数を返す。
@var=split(/nanika/,$list[i])
wait key
$wait=<STDIN>;#STDINは省略可能
配列の要素数(参考
# 最後の添字を取得(この場合は2。配列が空の場合は-1) $num = $#hoge; # 要素数を取得(この場合は3。配列が空の場合は0) $num = @hoge;
- 変数の中身を出力するときは””(ダブルクォーテーション)で囲む
print "@hoge" ----@hoge=(1,2)なら12と出力
- 変数の要素数を出力するときは’’(シングルクォーテーション)で囲む
print '@hoge' ----@hoge=(1,2)なら2と出力
- 文字列を連結する時は「.」を使う
print "$a"."$b"
36進数<=>10進数 (参考)
| + | ... |
コメントアウト(複数行)参考
print "ここは実行されます。\n"; =pod ここはコメント行になります。 ここもコメント行になります。 =cut print "ここも実行されます。\n";
論理演算子
ストリングの比較に==は使えない。eqを使う。
ENDサブルーチン(スクリプト終了時に実行)参考
END {
print "END!";
}
ファイル操作
- ファイルの日本語読み込み(参考)
- 読み込むファイルがUTF-8で書かれているなら、次のようにopenで指定する。
open(FH, "<:utf8", $filename);
- 読み込むファイルがshift-jisなど、UTF-8以外のコードで書かれているなら、次のようにencodingをopenで用いて指定する。
pen(FH, "<:encoding(shiftjis)", $filename);
- 行数を数える ファイル読み込み後$.に格納されている(参考の中から最後のを参照。)
open(FILE, 'hoge') or die; print $. . '行\n'; close(FILE)
GUI
入門
以下実行
>win32-gui-demos
ファイルを開くダイアログ(参考)
| + | ... |
デバッグモード
- コマンドプロンプトで以下実行(参考)
>perl -d hoge.pl
添付ファイル