Solved

Memory doesnt freed on Destroying the COM objects.

Posted on 2001-06-20
8
268 Views
Last Modified: 2013-11-25
I'm using a COM Object in Visual Basic. Following statement is not removing the allocated memory for that object.
set objCOM = nothing

This memory is freed up only when I close the Visual Basic application. COM Interface was developed using C++ and I'm caling those objects in Visual Basic.

Is it the VB Problem or problem in COM Interface creation in C++?

Please Help. THanks in Advance.

Raju
0
Comment
Question by:kbalaraju
8 Comments
 
LVL 8

Expert Comment

by:Dave_Greene
Comment Utility
I would look at the COM Component first.  Doesn't sound like a VB issue, unless you still have a reference to the component when you are trying to kill it...
0
 
LVL 5

Expert Comment

by:gbaren
Comment Utility
There is probably something missing in the destructor of the C++ class.
0
 
LVL 15

Expert Comment

by:ameba
Comment Utility
Last 10 Grades Given:  A C B C C C A C C C
0
 
LVL 100

Accepted Solution

by:
mlmcc earned 100 total points
Comment Utility
I would agree with gbaren.

I teach and use C++ in addition to VB.  If the C++ object is not releasing the memory when it is no longer needed you would have the problem.

How do you know the memory isn't released?  It may be being release but improperly so the system doesn't know it is free until the VB app is done.

Does the C++ COM object have a destroy function you can call?  How do you create the COM object?  The destructor s probably called by putting a ~ in front of the C++ object creator.

good luck
mlmcc

ameba
If you don't like the way a person grades don't comment on his questions.  There may be reasons for the grades.

0
Find Ransomware Secrets With All-Source Analysis

Ransomware has become a major concern for organizations; its prevalence has grown due to past successes achieved by threat actors. While each ransomware variant is different, we’ve seen some common tactics and trends used among the authors of the malware.

 
LVL 15

Expert Comment

by:ameba
Comment Utility
mlmcc, using your logic:
If you don't like my report, do not comment it.  There may be reasons for my reports.
0
 
LVL 15

Expert Comment

by:ameba
Comment Utility
I would check if this happens on a form with one instance of the 'accussed' object.

' Form1 code
Option Explicit

Private Sub Form_Click()
    Form2.Show vbModal    ' show test form
    Set Form2 = Nothing
End Sub
0
 
LVL 1

Expert Comment

by:Moondancer
Comment Utility
Question(s) below appears to have been abandoned. Your options are:
 
1. Accept a Comment As Answer (use the button next to the Expert's name).
2. Close the question if the information was not useful to you. You must tell the participants why you wish to do this, and allow for Expert response.
3. Ask Community Support to help split points between participating experts, or just comment here with details and we'll respond with the process.
4. Delete the question. Again, please comment to advise the other participants why you wish to do this.

For special handling needs, please post a zero point question in the link below and include the question QID/link(s) that it regards.
http://www.experts-exchange.com/jsp/qList.jsp?ta=commspt
 
Please click the Help Desk link on the left for Member Guidelines, Member Agreement and the Question/Answer process.  http://www.experts-exchange.com/jsp/cmtyHelpDesk.jsp

Please click you Member Profile to view your question history and keep them all current with updates as the collaboration effort continues, to track all your open and locked questions at this site.  If you are an EE Pro user, use the Power Search option to find them.

To view your open questions, please click the following link(s) and keep them all current with updates.
http://www.experts-exchange.com/questions/Q.20138939.html
http://www.experts-exchange.com/questions/Q.20270886.html




PLEASE DO NOT AWARD THE POINTS TO ME.  
 
------------>  EXPERTS:  Please leave any comments regarding your closing recommendations if this item remains inactive another seven (7) days.  Also, if you are interested in the cleanup effort, please click this link http://www.experts-exchange.com/jsp/qManageQuestion.jsp?ta=commspt&qid=20274643
 
Thank you everyone.
 
Moondancer
Moderator @ Experts Exchange

P.S.  For any year 2000 questions, special attention is needed to ensure the first correct response is awarded, since they are not in the comment date order, but rather in Member ID order.
0
 

Author Comment

by:kbalaraju
Comment Utility
THanks for all your help. I couldnt fix the problem but thanks for responding.
0

Featured Post

Maximize Your Threat Intelligence Reporting

Reporting is one of the most important and least talked about aspects of a world-class threat intelligence program. Here’s how to do it right.

Join & Write a Comment

Introduction While answering a recent question about filtering a custom class collection, I realized that this could be accomplished with very little code by using the ScriptControl (SC) library.  This article will introduce you to the SC library a…
Background What I'm presenting in this article is the result of 2 conditions in my work area: We have a SQL Server production environment but no development or test environment; andWe have an MS Access front end using tables in SQL Server but we a…
Get people started with the process of using Access VBA to control Outlook using automation, Microsoft Access can control other applications. An example is the ability to programmatically talk to Microsoft Outlook. Using automation, an Access applic…
This is Part 3 in a 3-part series on Experts Exchange to discuss error handling in VBA code written for Excel. Part 1 of this series discussed basic error handling code using VBA. http://www.experts-exchange.com/videos/1478/Excel-Error-Handlin…

763 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

7 Experts available now in Live!

Get 1:1 Help Now