studio2021回答ポイント 200ptウォッチ 3

strawberry perlについて教えてください。

perl hoge.plだとopen(OUTしている部分で指定の場所にファイルができるのですが、
windowsのタスクに設定し定期実行させた場合起動はされているのですが、0byteのファイルが出力されます。どうもWin32のライブラリがタスクで起動した場合うまく動かないようなのですが
どうすれば動くかお知恵をかして頂けますでしょうか。

OS:windows 7 enterprise 64bit
strawberry perl

script
#!/usr/bin/perl

use strict;
use warnings;
use Encode;

use Win32::OLE;
use Win32::OLE::Const 'Microsoft Excel';
use Win32::OLE::Variant;

my $excel;
eval {
Win32::OLE->GetActiveObject('Excel.Application');
};
if ($@) {
die "Excelが入っていません。 $@";
}
unless (defined $excel) {
$excel = Win32::OLE->new('Excel.Application', sub {$_[0]->Quit;}) or die $!;
}
$excel->{Visible} = 'False';
$excel->{DisplayAlerts} = 'True';

my $filename = "/tmp/aaaa.xlsx";
my $book = $excel->Workbooks->Open({'FileName' => $filename,'Password' => '1','ReadOnly' => 'True'});

open(OUT, "/tmp/abc.txt");
my $i = 0;
while (my $sheet = $book->Worksheets(++$i)) {
print OUT $sheet->{Name}."\n";
}

※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。
ログインして回答する

ベストアンサー

その他の回答

この質問へのコメント

この質問への反応(ブックマークコメント)

質問の情報

登録日時
2012-10-06 16:44:09
終了日時
2012-10-10 22:38:13
回答条件
1人50回まで

この質問のカテゴリ

この質問に含まれるキーワード

Windows 7344Perl1679Windows5693Excel3146hoge915Microsoft1070Win32142ABC440SCRIPT437ライブラリ985OS4923const51タスク855

人気の質問

メニュー

PC版