いやGCに頼るのは不確実だからMarshal.ReleaseComObjectを使って
必ず逐一全て手動で解放する必要がある