• ベストアンサー

COMについて

ATL COM AppWizardを使用し、簡単なメソッドを追加し、DLLは作成できたのですが、ASPから実行した後、サーバー上にある作成したDLLを削除できません。 メモリーを開放するプログラムを追加する必要があるのでしょうか?それとも他に何か方法があるのでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • itohh
  • ベストアンサー率45% (210/459)
回答No.2

こんにちは。itohhといいます。 >一般的に手動でサービスを停止し、削除&置き換えをする運用方法でよろしいのですか? 例えば、機能を追加したためCOMを置き換えなければいけない場合、サイトをいったん止めて メンテナンスという位置づけで行うものではないでしょうか? 一般的かどうかは、分かりません。 >また、プログラムでメモリの開放等行わなくてもいいんでしょうか? メモリの解放とはどういったレベルのことを言われているのでしょうか? COM内部で動的に確保したメモリを解放するかどうかについてでしたら、 もちろん、COM自身で解放しなければいけません。 (IISサービスをストップしたからといってメモリを解放してはくれません) マイクロソフトのMSDN onlineサイトをご存じでしょうか? IIS/ASP & COMの開発Tipsなどが掲載されています。一度、確認してみてください。 ・MSDN online Web Workshop Japan URL:http://www.microsoft.com/JAPAN/developer/workshop/default.asp

参考URL:
http://www.microsoft.com/JAPAN/developer/workshop/default.asp
honey-maru
質問者

お礼

どうもありがとうございました。問題を解決することができました。

その他の回答 (1)

  • itohh
  • ベストアンサー率45% (210/459)
回答No.1

こんにちは。itohhといいます。 >ASPから実行した後 IIS上で実行したと言うことですね。 一度、COMを使用するとIISのプロセス上に残りますから、IISのサービスをストップしてからでなくては DLLを削除&置き換えは出来ません。

honey-maru
質問者

補足

ありがとうございました。とりあえずは削除・置き換えは可能になりました。 一般的に手動でサービスを停止し、削除&置き換えをする運用方法でよろしいのですか?また、プログラムでメモリの開放等行わなくてもいいんでしょうか?