2011-09-15 12 views
0

私はvbscriptとQTPを使用しているオートメーションの男です。私は、Windowsアプリケーションを自動化するためのより良いスクリプト言語を探しています。(単語、Excel、PowerPointの最新バージョンを含む)vbscriptが好きではありません。何かを手に入れるためには多くのタイプが必要です。常にそれを使用しています。私はperlが精巧な構文を使用していない点で素晴らしいと思っています。アプリケーションを自動化するのはどうですか?専門家の助言が大切です。Perlを使用してWindows 7でタスクを処理する

答えて

3

ActivePerlは、N32バージョンのPerlとの一貫性に焦点を当てたStrawberry Perlよりも、Windowsに統合されています。

  • ActivePerlのは、彼らはWindowsでやってみたかったしているというもののために、独自のライブラリのいくつかは、「PPM」(Perlのパッケージマネージャ)と呼ばれるまともなインストーラのGUIを持って提供し、ブラウズなど、すべてのモジュールのドキュメントをインストールしますフレーム付きのWebページ。

  • イチゴのPerl、私は、Windowsで実行可能forkexecを提供し、Windowsカーネルがもう少し* NIX上で実行されているように見えるようにしようと考えています。両方で

Win32::OLEあなたはVBAで行うものを扱うことができます。私はそれをかなりうまく使用しました。 OLEオブジェクトの周りにラッパーオブジェクトを記述することで、アプリケーションドメインに適したオブジェクトを作成することができます。

  • それはアイデンティティが壊れているオブジェクトOLEおよびActiveXオブジェクトのための実験の書き込みアダプタクラスのロットから表示されます - あるいは少なくとも再設計する必要があります。 1つのラッパーオブジェクトが単純なPerl手段を介して別のラッパーオブジェクトと同じ正確なラッパーオブジェクトを指していることを伝えることに頼らないでください。つまり、組み込みのトラバーサルロジック、たとえばData::Dumperを信頼しないでください。 $Data::Dumper::Maxdepthを設定しないと、ほとんどの場合メモリが不足してOLEオブジェクトをダンプしようとします。多くのVBAオブジェクトはApplicationオブジェクトへのポインタを保持しているので、OLEオブジェクトのダンプが繰り返されることはほぼ確実です。

また、CPANには多くのWin32::*ライブラリがあります。

全体的に、私はPerlが強力なWindowsのオートマトンですが、通常は私の最初の選択です。

+0

興味深い注記:Win2Kリソースキットは永遠に前から、多くのサーバー管理タスク(これはMicrosoftがスマートになってPowerShellを作成する前)にPerlを使用していました。 – atrain

+0

StrawberryとActivePerlは、forkとexecを実行する際に、異なる動作をしません。モジュールのドキュメントはsearch.cpan.orgで入手できますので、Strawberryではドキュメントのローカルインストールが無効になっています。 –

+0

ありがとうAxeman。私はWMIのクラスを推測していて、オブジェクトはperlを通して制御できますか? – Sivakumar

関連する問題