Windowsでの開発  

Pythonの開発環境 -- 2009-10-16  

WindowsでPythonの開発/実行環境をそろえるのはちょっとめんどくさいのでPortable Pythonを使います。
Portable Pythonはその名の通り、システムにPythonをインストールすることなくPythonの環境を整えることが出来るのでUSBメモリなどに入れておけばどこでも同じ環境で開発可能です。
Python 2.5.4環境では、

など他多数が収録されていました。
私はついでにwxGladeを入れてGUI開発環境を整えることができました(^^)。ただ、アクセススピードが遅いUSBメモリの場合、SPEなどの起動に結構時間がかかります・・・(そもそも私の環境(WinXP SP3)ではPyScripterとかSPEはかなり不安定です・・・)

.NETクラスライブラリをVBAから使う -- 2008-09-04  

Windowsでの開発をする必要があったのでVisual Basic 2008 Express Edition(VB)を使ってみました。VBを使うのは4年ぶりぐらい。
Excel2007 VBAからVBで作成したライブラリを簡単に使えると思ってたのですが(そろそろVBAも.NETに移行してると思ってたのに・・・)、結構苦労しました。そんなわけで導入手順をメモしておきます。
.NETクラスライブラリはCOMっていう仕組みを使うそうな。

Visual Basicでの作業  

アプリケーションのプロパティで、

プロパティを設定したらビルドします。

コマンドラインでの作業  

ビルドしたらレジストリに登録するために、RegAsmユーティリティを使用します。VB2008は.NET Framework 3.5を使っていますが、.NET 2.0のものが使用できました(1.0のは使えませんでした)。このコマンドを使用することにより型とタイプライブラリ(tlb)がレジストリに登録されます。DLLの格納場所はsystem32ディレクトリである必要はなく任意の場所で問題ないらしいです。

> cd [使用するDLLがあるディレクトリ]
> regasm Foo.dll /tlb:Foo.tlb /codebase
Microsoft(R) .NET Framework Assembly Registration Utility 2.0.50727.1433
Copyright (C) Microsoft Corporation 1998-2004.  All rights reserved.

型は正常に登録されました。
アセンブリは '...\Foo.tlb' にエクスポートさ れ、タイプ ライブラリは正常に登録されました。

通常regasm.exeにパスが通ってないはずなので、ここではC:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\RegAsm.exeをフルパスで指定して使用しました(2.0.50727は環境によって異なるかもしれない)。

 

これで共有DLLとして登録されました。
なお、登録解除する場合は、

> regasm Foo.dll /tlb:Foo.tlb /unregister

でOK。

Excel VBAからの使用  

上記の手順を行っていれば、参照先として選択できるはずなので、通常通り参照設定で参照先ライブラリを探しチェックを入れる。
使用するコードはたとえば以下のようなもの。

Sub Test1()
    Dim obj As New Foo.FooClass
    MsgBox (obj.ToString())
End Sub

こんな感じ。

Windows環境  

アンチウィルスソフトは? -- 2008-09-09  

セキュリティを確保するためにはアンチウィルスプログラムのインストールが必須ですが、状況によってはファイルアクセスなどの性能低下を引き起こすことがあります。だからといってインストールしないわけにも行かないし・・・ということで私が使った数種類のアンチウィルスソフトの感想をメモしておきます。
これは2008年頃の情報なので今後のバージョンアップによっては必ずしもこのとおりとは言えない場合がありますので注意して下さい。なお、あくまで私の主観です。

トレンドマイクロ ウィルスバスター Corporated Edition
ジャストシステム Kaspersky Anti-Virus 7.0
キャノンITソリューションズ ESET NOD32 Antivirus 3.0