皆さん今晩は。当 Pub のマスター、和哉です (^^) 。
では、VC++ (Microsoft) で dll を作って行く基礎を説明しましょう。
BCB 篇でも、同じ様な事を書いていますが、VC++ を用意しないといけません。VC++ 4.0 以降 (IA32 Compiler) を用意して下さい。一応、VC++ 1.1 (IA32 Compiler) でも、作成自体は可能だとは思いますが、Windows NT 3.50 迄がサポート範囲らしいので、グレーゾーンですね (^^;; 。新しい Win32 API のヘッダファイルや、新機能に対応した Library 等も無いでしょうから、その辺りも、自己解決しないといけませんし…。どの開発環境にも言える事ですが、新しい技術を使う場合は、出来るだけ、新しいヴァージョンのコンパイラを利用する方が、安心して開発出来ます (リリース直後は、新たなバグの問題が有りますが…)。
さて、VC++ は、他社の製品に比べて、高価であると言う問題点が有ります (特に、アップグレード価格が…)。OS 供給元のコンパイラなので、OS の最新機能との親和性は高いのですが、一般の方がそこまで使う事は余り無いでしょうから、少々痛いところです。また、Learning & Standard Edition には、重複文字列の削除以外の最適化機構が無く、コードサイズ、速度の両面で、多少の問題を抱えています (Professional 以上の Edition でも4.0 迄は、最適化の品質が低かった様です / 6.0 でも Borland 系よりやや劣る模様)。また、Learning Edition (VC++ 5.0 にのみ存在) は、純粋なフリーソフト (メールウェアは OK だと思いますが、カンパウェアは駄目だと思います)、または、公開しない範囲のソフトウェアしか開発出来ないライセンスになっています (どうも、この制限が、非常に不評だったらしく、6.0 では Standard Edition に戻っています / 業務に使用するのもまずそう)。学生さんは、アカデミックパックで、大幅に安く購入出来ますので、積極的に活用しましょう。
結局、Plug-in を作ることさえ出来れば良いと言う場合には、Standard & Learning Edition を、コードの品質を重視するのならば、Professional Edition を購入するのが良いでしょう。Enterprise Edition は、データベースアプリケーションとか、ドライバを開発する際に必要な位で、通常は不要です。なお、HSP Plug-in の開発や、Win32 Console アプリケーション程度なら、然程問題は有りませんが、Win32 GUI アプリケーションを開発するのは、非常に厄介かつ面倒ですので、覚悟して下さい。Microsoft Foundation Class Library (MFC) は、然程使い易いクラス群では有りません (一般の方には、Borland C++ Builder, Delphi 等の、純粋なネイティブコンパイラ系の RAD ツールをお勧め致します / VB で十分な方は、VB Professional Edition で OK / VB は dll を作成出来ませんが (^^; )。
なお、説明で使用している VC++ のヴァージョンは、version 4.0 Standard Edition と version 6.0 SP3 Professional Edition です。
Copyright © SAITOH Kazuya, All Rights Reserved.
(!) Prohibit Reproduction.