Windows APIの
Windows APIの後処理

☆Visual Basicの限界とWindows API

Windows APIの中には使ったら使いっぱなしでいいものと、
使ったら片付けをしなければならないものがあります。
片づけをする必要があるものを片付けないと...
・Visual Basicの一般保護エラー
・プログラムが終わってもメモリーが解放されない
・最悪の場合、Windowsがハングアップ
などになることがあります。
ですから、プログラムを終わらせる時に片付けすれば
通常問題ありませんが、問題はVisual Basicの終了ボタンです。
Visual Basicの終了ボタン→ Visual Basicの終了ボタン

この終了ボタンはかなり便利なので、すでに使い慣れている方も
いらっしゃると思いますが、Windows APIを使ったプログラムを
これで終わらせると、実行しているプログラムはその時点で
即座に停止して、せっかくプログラムを終了するときに
Windows APIの片づけをするように書いても、そこが実行されずに
いきなり終了してしまうのです。
かといって、Visual Basicがその片づけをしてくれるわけでも
ないので、上に書いたようなエラーが起こることに
なります。しかし、これはWinodws標準のAPIを呼び出す
だけでなく、他のDLLを使うときにも言えることです。

簡単に言うと次のとおりになります。
・Windows APIを使うという宣言をする。
・片づけをしなければならないWindows APIは
プログラムを終了するところで片付けをするように書く。
・実行する前に保存をする(ハングアップしてもいいように)
・Visual Basicの終了ボタンで終了せずに
実行しているプログラムを普通に終了する。
―以上を気をつけてください。

しかし、片付けをしなければいけないWindows APIは少ない
ので、そんなに心配することはありません。片付けを
しなければならないものは注意書きとして各解説に
書き加えておきます。


Directory Reference
Top page
 Visual Basic Room
  Windows API (戻る)
   Windows APIの解放