External dll call memory leak

Hi,
My VI calls a function in a dll in a loop for a long period of time.
I've noticed that after couple of hours it starts loosing memory.
It seems like the LabViews consumption of memory stays constant but the System looses memory.
I've checked the dll in .Net application and I'm sure that there is no such a problem there.
This is how my VI is organized:

I don't see anything either. But can you maybe post how the dll function is declared in it's header file (with all the macro definitions if any are used in the function prototype) as well as a screenshot of the NI prototype found in the "Call library function" node.
Can you also clarify if the RAM usage is again decreased once the application ends or if it stays at the increased level. In one case it's a memory leak while in the other case it might simply be that LabVIEW needs a lot of RAM to do whatever calculations you do with the data (although 1GB does seem like a lot).
Matt

Similar Messages

  • Unload an external dll from memory

    Hello friends,
    we are currently trying to resolve the following problem:
    A vendor supplied dll has certain problems that can probably only be solved by unloading the dll from memory. This happens naturally when the application quits. But we need to reset it at run time. Is it possible to tell windows and/or labview to remove the dll from memory, so that it is being reloaded with the next call?
    Best regards
    Matthias

    Hello Matthias,
    LabView unloads the DLL when the VI that uses this DLL is unloaded. This happens when the application quits or when you close LabView. However you could use the VI-Server technology to dynamically load the VI using the dll. This has the advantage, that you could unlaod the VI after you used it, and so the DLL would be unloaded, too. YOu can check the developer zone on www.ni.com, if you are not familiar with the VI-Server technology.
    Hope this helps!
    Andre

  • Loading External Images Causes Memory Leak

    I have been working on an Actionscript 2.0 project that basically loads external images.
    Everytime i load and unload a new image, memory increases to 1 or 2 MBs
    If all the images are in cache, then it increased to 4 or 8 KBs
    In the unloading of images, I have removed loader and the container of the image.
    Any thoughts why it is behaving like that?
    Please find the sample code snippet below.
    btn_load.onRelease = function()
    loadImage();
    btn_unLoad.onRelease = function()
    unLoadImage();
    var mcListener:Object = new Object();
    var container1:MovieClip;
    var mcLoader:MovieClipLoader;
    var loader_reference = this;
    var n=0;
    function loadImage(){
    var image_arr = ["http://xyz.com/image1.png","http://xyz.com/image2.png","http://xyz.com/image3.png","http:/ /xyz.com/image4.png","http://xyz.com/image5.png"];
    var image_url = image_arr[n];
    if(n==image_arr.length-1) {
      n=0;
    }else{ 
      n++;
    container1 = loader_reference.createEmptyMovieClip("container1", loader_reference.getNextHighestDepth());
    mcLoader = new MovieClipLoader();
    mcLoader.removeListener(mcListener);
    mcLoader.addListener(mcListener);
    mcListener.onLoadComplete = function(target_mc:MovieClip, httpStatus:Number):Void {
    mcListener.onLoadInit = function(target_mc:MovieClip):Void {
      target_mc._x = 300;
      target_mc._y = 200;
      target_mc._width = 300;
      target_mc._height = 250;
    mcLoader.loadClip(image_url, container1);
    function unLoadImage(){
      mcLoader.unloadClip(container1);
      mcLoader = null;
      container1 = null;
      removeMovieClip(loader_reference.container1);
    Thanks in advance.

    that code should only execute once.  fix that.

  • Memory leak with FP closed

    Well this is an odd one I must say.
    I have an application where I would like the front panel to disappear
    at the user's discretion so it's not in the way while it's processing
    information in the background.  To process the information I have
    a custom DLL and to check the progress of the custom DLL, I have a
    routine that I can call that will return the status.  So the
    information processor is called and it just runs in the background, and
    then the status routine is called in a parallel loop until the status
    routine determines that the processing is finished.  When the
    status routine says it's done, the parallel loop exits and another
    routine sets a flag for the processor to exit (so everything quits).
    In order to make the DLL calls work right as far as execution
    sequencing, they are called as re-entrant.  I stumbled across that
    orginally because it was locking things up when I was trying to call
    them in parallel.
    I have no memory leaks in the external DLL calls and this is verifiable
    by running the processing routine indefinitely while checking the
    status indefinitely.  The problem is when I open a VI reference to
    the main VI then make it's front panel not visible.  At that
    point, memory usage starts increasing by 400k/sec (which is larger than
    the entire DLL).  It will eventually just crash the system. 
    If I set the front panel to be closed on a timer (for several seconds
    say), the memory usage will increase for that amount of time and then
    stop once the FP is opened again.
    I know this is really difficult without having some code to look at but
    it would be really hard for me to dumb down the code to get the problem
    in a simple set of VI's to look at.  I'm wondering however if the
    reentrant DLL calls are having some weird interaction with windows
    since I'm guessing at a lower level, the application's window handle is
    invalidated when the front panel is closed.  I'm wondering if the
    reentrant DLL status call is having new memory allocated for it every
    time it is called in the status loop.  I just can't figure out how
    that has anything to do with the front panel being closed though.
    Any suggestions on things to try or look at?

    Well after tweaking around, running the DLL calls in the UI thread
    instead of as re-entrant fixes the massive memory leak.  I can't
    think of a good reason why that isn't a bug, but whatever. 
    Perhaps it's not crashing the program now when running in the UI Thread
    since each DLL call is actually in it's own re-entrant VI
    wrapper.  Hmmm...

  • Memory Leak in Publish-Subscribe Notification

    I am using publish-subscribe notification for async-notification on LINUX( ORACLE 8.1.7). Before doing it, I read a document(OCI Programmer!/s Guide) about publish-subscribe notification(chap.9).
    I created Queue(AQ) in database and registered callback function using 'OCISubscriptionRegister()'.
    All operations are done succesfully , but when OCISubscriptionRegister() is called, memory leak seems to occur. I check up the memory leak using LINUX system call( 'top' and 'vmstat' ).
    Does anyone have any idea or experience of this problem?

    <BLOCKQUOTE><font size="1" face="Verdana, Arial, Helvetica">quote:</font><HR>Originally posted by Lee Sung-won ([email protected]):
    Thanks for your reply..
    I have something to ask you. where can I get a document listing the bug?<HR></BLOCKQUOTE>
    null

  • Memory Leak, Macbook

    Good day folks,
    I'm looking for some advice regarding my Macbook and what is an apparent memory leak I'm experiencing. I've been getting a lot of 'beachball' activity in the last couple of months and after weeks of phone calls with Apple and a visit to the Genius bar, Diskwarrior, archive and install with Time Machine, etc., etc. it is now apparent that something is sucking memory on the machine even when I don't see any application running. Activity monitor doesn't show the CPU being taxed, but the available memory drops to almost 'zero green' in the pie chart.
    Prior to me doing a clean wipe of my hard drive and a selective re-install of data, does anyone have a tip as to what might be causing this? I really don't use a lot of apps. Most common would be iPhoto, Safari, Adobe, Mail, Numbers. My iPhoto library is about 6 GBs. I have tons of available HD space.
    Two items in Activity Monitor which appear to be using a lot of 'virtual memory' are 'Dashboard Client' (which I don't appear to be able to 'quit') and Apple80211Agent. I'm not very tech savvy so any tips you could offer would be appreciated. Thanks all.

    What evidence to you actually have of this so-called memory leak? Memory leaks happen in software, so you would have to examine individually running applications to determine if a leak actually occurs (and you would need to know how to discern one.) If you are running out of RAM as possibly evidenced by beachballing, it may be due to the fact that you are trying to run iPhoto, Safari, Adobe, Mail, Numbers. My iPhoto library, which is more than your 2 GBs of RAM can support. What you need is more RAM.
    Virtual memory usage in Activity Monitor has no meaning to you and has nothing to do with RAM usage or memory leaks.
    About OS X Memory Management and Usage
    Reading system memory usage in Activity Monitor
    Memory Management in Mac OS X
    Performance Guidelines- Memory Management in Mac OS X
    A detailed look at memory usage in OS X
    Understanding top output in the Terminal
    The amount of available RAM for applications is the sum of Free RAM and Inactive RAM. This will change as applications are opened and closed or change from active to inactive status. The Swap figure represents an estimate of the total amount of swap space required for VM if used, but does not necessarily indicate the actual size of the existing swap file. If you are really in need of more RAM that would be indicated by how frequently the system uses VM. If you open the Terminal and run the top command at the prompt you will find information reported on Pageins () and Pageouts (). Pageouts () is the important figure. If the value in the parentheses is 0 (zero) then OS X is not making instantaneous use of VM which means you have adequate physical RAM for the system with the applications you have loaded. If the figure in parentheses is running positive and your hard drive is constantly being used (thrashing) then you need more physical RAM.

  • Event structure doesn't handle all events from external DLL source

    Hi!
    I use a DLL, wich handles an USB CAN transceiver device, and generates LabVIEW user events with extcode.h and PostLVUserEvent() function.
    In my vi I use an event case structure to handle theese external events. The problem is, that if the events come too frequently, then it cannot handle all events.
    The vi contains a couple of parallel while loops which process the incoming data from the external event.
    In another application I use the same architecture, and that works fine. This one is more complex.
    Do you think I have reached the limits of the program? Or what else can be the problem?
    I have tried to use a queue in the  event structure, it helped a little, but yet, not all the events are handled. My external DLL sends all event, so the problem is not there.
    Thanks in advance!

    Hi Wasz,
    Thanks for the post and I hope your well.
    It is not possible for the event structure to miss events - it simply queues them up. To keep the event structure 'in time' with the code you must ensure the code to execute in each event is minimal to allow the event structure to handle the next event. 
    Please see this two links:
    event structure buffering: leading to,
    How to avoid built-up for "cursor move" events? : where somone is trying to avoid handling all events.
    What sort of events are not being handled? Could it be an issue your events are not configured correctly? Maybe if you could produce a small example in LabVIEW code, so we can just test the event structure configuration... someone working around the external dll call - which you seem sure is working correctly.  
    In terms of queuing to process the events in other loops is certainly an option to speed up the event structure. To do this, use a produce/consumer design pattern.
    hope this helps,
    Kind Regards
    James Hillman
    Applications Engineer 2008 to 2009 National Instruments UK & Ireland
    Loughborough University UK - 2006 to 2011
    Remember Kudos those who help!

  • Calling SetLocalTime in C# causes Memory Leak (WEC7)

    Hello,
    I use SetLocalTime() in C#. Everything works well if I start explorer.exe and my application. But if I don't start explorer.exe at system start. SetLocalTime() causes memory leak in my application. I call the function frequently every hour.
    public static bool SetzeLokalZeit(SYSTEMDATETIME lpSystemTime)
    #if DEADLOCKDETECT
    using (DdMonitor.Lock(MyTimeLock, "MyTimeLock#1"))
    #else
    lock (MyTimeLock)
    #endif
    bool ret = false; // no Success
    try
    GLB.LogFile.MyWrite("SetLocalTime");
    SYSTEMDATETIME loc = new SYSTEMDATETIME();
    loc.wYear = lpSystemTime.wYear;
    loc.wMonth = lpSystemTime.wMonth;
    loc.wDayOfWeek = lpSystemTime.wDayOfWeek;
    loc.wDay = lpSystemTime.wDay;
    loc.wHour = lpSystemTime.wHour;
    loc.wMinute = lpSystemTime.wMinute;
    loc.wSecond = lpSystemTime.wSecond;
    loc.wMilliseconds = lpSystemTime.wMilliseconds;
    ret = SetLocalTime(ref loc);
    if (!ret) // no Success
    int err = Marshal.GetLastWin32Error();
    if (err > 0)
    GLB.LogFile.MyWrite("ERROR CODE:" + err.ToString());
    else ret = true;
    catch (Exception ex)
    GLB.LogFile.MyWrite("000023 Exception" + ex.Message);
    finally
    GLB.LogFile.MyWrite("SetLocalTime Ende");
    return ret;
    Has someone an idea what's the problem?
    Best regards,
    Andreas

    Hello,
    Here the answers to the questions:
    1. Does the SetLocalTime function succeed?
    Calling SetLocalTime doesn't cause an exception an the local time is set correctly.
    2. Do you still get the memory leak if you remove all other calls?
    Yes. I have removed any other code, but I also get the memory leak.
    3. Does the memory leak also occur when you do this from native code?
    I have not tried it yet. But I will still make it...
    [DllImport("coredll.dll")]
    private static extern void GetLocalTime(ref SYSTEMDATETIME lpSystemTime);
    [DllImport("coredll.dll", SetLastError = true)]
    private static extern bool SetLocalTime(ref SYSTEMDATETIME lpSystemTime);
    [StructLayout(LayoutKind.Sequential)]
    public struct SYSTEMDATETIME
    public ushort wYear;
    public ushort wMonth;
    public ushort wDayOfWeek;
    public ushort wDay;
    public ushort wHour;
    public ushort wMinute;
    public ushort wSecond;
    public ushort wMilliseconds;
    public static bool Pub_SetLocalTime(SYSTEMDATETIME lpSystemTime)
    lock (MyTimeLock)
    bool ret = false; // no Success
    try
    loc_set.wYear = lpSystemTime.wYear;
    loc_set.wMonth = lpSystemTime.wMonth;
    loc_set.wDayOfWeek = lpSystemTime.wDayOfWeek;
    loc_set.wDay = lpSystemTime.wDay;
    loc_set.wHour = lpSystemTime.wHour;
    loc_set.wMinute = lpSystemTime.wMinute;
    loc_set.wSecond = lpSystemTime.wSecond;
    loc_set.wMilliseconds = lpSystemTime.wMilliseconds;
    ret = SetLocalTime(ref loc_set);
    if (!ret) // no Success
    int err = Marshal.GetLastWin32Error();
    if (err > 0)
    MessageBox.Show("Win32 Error:", err.ToString());
    else ret = true;
    catch (Exception ex)
    MessageBox.Show("SetLocalTime,Exception:", ex.ToString());
    finally
    return ret;
    Best regards,
    Andreas

  • Memory leak in external interface SetReturnValue?

    I'm having trouble with a memory leak in my application. I'm
    hoping someone out there can help me find a fix or workaround, or
    tell me what I'm doing wrong.
    The leak seems to be coming from the flash external
    interface; specifically, IShockwaveFlash.SetReturnValue(String). My
    application is written in Visual Basic 2008, connecting to Flash
    9.0.124.0 (activex version).
    I've written a fairly simple flash/VB program pair to
    illustrate the problem.
    The SWF contains a button, 2 dynamic text fields, and the
    ActionScript 2 code below.
    The VB project contains a Form with a AxShockwaveFlash object
    and the VB code below.
    When this program is run, and the button is clicked a lot
    (10's of thousands of times), the application's memory creeps up
    and never seems to fall back down. If the string passed to
    SetReturnValue is longer, memory is consumed faster. But if the
    call to SetReturnValue is commented-out, the application's memory
    usage remains stable.
    If anyone has any suggestions on how to proceed, I'd be
    grateful.
    (By the way: I'm using a freeware program called DoItAgain to
    automate the button pressing.)

    I have developed two simple Java and corresponding
    C++ classes. Use code tags when you post your code.
    You are missing a lot of error checking. JNI calls, every single one, will usually be followed by some sort of error checking. Any that access classes, methods, fields or allocate object must be followed by checks for java exceptions.
    You will need to reduce your code to a smaller sample. Otherwise it is unlikely anyone will look at it.
    You also need to specify how you know that a memory leak is occurring.

  • External Function memory leak

    The ExternalFunction.java sample code distributed with v.2.5.16 has a memory leak.
    You can see this by changing the loop to iterate a million times; eventually it runs out of memory and crashes.
    (I used jdk 1.7 u2 on Windows 7.)
    I tried adding explicit calls to delete() for every created Java object in the example, none of which helped.
    As far as I can tell, it is simply not possible to use external functions from Java without leaking memory.
    Any thoughts on this?

    thanks Silviu
    i create two bugs
    https://bugbase.adobe.com/index.cfm?event=bug&id=3341143
    https://bugbase.adobe.com/index.cfm?event=bug&id=3341146

  • External interface memory leak?

    Hello,
    I am embedding the flash player inside a Visual C++
    application. My program uses the external interface extensively.
    The external interface is called several times a second ( ~20 fps )
    each time a ~1k XML string is passed to the flash player.
    During execution the program increases its memory by ~10 Mega
    each hour. I have used the Umdh tool to try to locate the problem.
    It points to the line where the container program uses the external
    interface to call a function inside the swf movie.
    Below is a typical output of the Umdh tool:
    + 3396588 ( 3405883 - 9295) 261991 allocs BackTrace12EF
    + 261276 ( 261991 - 715) BackTrace12EF allocations
    ntdll!RtlpNtMakeTemporaryKey+000074D0
    ntdll!RtlInitializeSListHead+00010D08
    ntdll!wcsncat+00000224
    FlDbg9c!DllUnregisterServer+0010261A
    FlDbg9c!DllUnregisterServer+0010263C
    FlDbg9c!DllUnregisterServer+0000F1B7
    myProgram!CZFlash::CallFunction+0000004D (c:\documents and
    settings\amit\my documents\visual studio projects\ myProgram
    \zflash\zflash.cpp, 255)
    myProgram!MainDialogProc+000012A2 (c:\documents and
    settings\amit\my documents\visual studio projects\ myProgram
    \w32\maindlg.cpp, 2324)
    USER32!GetDC+0000006D
    USER32!PrivateExtractIconExW+000002B2
    USER32!PrivateExtractIconExW+000000FE
    USER32!DefDlgProcW+00000022
    USER32!GetDC+0000006D
    USER32!GetDC+0000014F
    USER32!IsWindowUnicode+000000A1
    USER32!CallWindowProcW+0000001B
    COMCTL32!Ordinal11+00000328
    COMCTL32!RemoveWindowSubclass+0000017E
    COMCTL32!DefSubclassProc+00000046
    COMCTL32!Ordinal389+000028DF
    COMCTL32!RemoveWindowSubclass+0000017E
    COMCTL32!DefSubclassProc+00000046
    COMCTL32!Ordinal389+000028DF
    COMCTL32!RemoveWindowSubclass+0000017E
    COMCTL32!DefSubclassProc+00000046
    COMCTL32!Ordinal389+000028DF
    COMCTL32!RemoveWindowSubclass+0000017E
    COMCTL32!DefSubclassProc+00000046
    COMCTL32!Ordinal389+000028DF
    COMCTL32!RemoveWindowSubclass+0000017E
    COMCTL32!DefSubclassProc+00000046
    COMCTL32!Ordinal389+000028DF
    The System.totalMemory value of the flash player ranges from
    2.2 Mbyte to 3.2. I tried using memory leak detection software like
    IBM's Purify but couldn't find the problem.
    I also tried to disable the BSTR caching by setting the
    environment variable OANOCACHE, but the memory of my program
    continues to increase.
    Below is my C++ code. The m_iflash object is a pointer to the
    ActiveX of the flash player.
    wstring CZFlash::CallFunction(wstring call_string)
    BSTR pcall_string = SysAllocString(call_string.c_str());
    BSTR presponse = NULL;
    HRESULT status = m_iflash->CallFunction(pcall_string,
    &presponse);
    SysFreeString(pcall_string);
    if (status != S_OK)
    if (presponse != NULL)
    SysFreeString(presponse);
    return L"";
    wstring sresponse(presponse);
    SysFreeString(presponse);
    return sresponse;
    Currently the swf movie contains only action script that
    displays the System.totalMemory value and an empty function that
    the external interface calls.
    Any help will be appreciated.
    Thanks in advance,
    Amit

    Hello,
    Thanks for coming to National Instruments Discussion Forum.
    Can you give us more details about your application? Basically, I can’t find your main VI for your User Interface. Can you also give us the different steps to do to run your application and reproduce your problem?
    Generally speaking, your code on your block diagram have to be displayable in one screen.
    Benjamin R.
    R&D Software Development Manager
    http://www.fluigent.com/

  • COM+ and OLEDB - memory leak in OCI dlls

    Hi forum,
    I've a COM+ DLL written in C++ which uses OLEDB(Oracle 8.1.7 provider) to reach to the 8i database. I've observed that after some 1000 database activities the DLLhost.exe hogs on memory to the tune of 50MB and never releases the same. I also saw the same behavior with a Win32 console application. For some reason the Uninitialize of the IDBIntialize does not seem to reduce the memory. I also ran bounce checker on my code. And its pointing to the OCI dlls for a memory leak of 18K per each database activity.
    I downloaded the OLEDB sample code(VCOLEMRecordsSample) from the OTN site:-
    http://otn.oracle.com/sample_code/tech/windows/ole_db/oledb8/index.html
    This also seems to hold on to memory after successive run of SQL queries.
    Is there anything that I am missing. I am curious about the fact that it happens with the sample app hosted on the OTN site. Do I need some OCI patches to be applied to the client? In fact, applied couple of them, but does not help.
    Appreciate any pointers!

    I am using 8.1.7.3.2. In fact I applied this patch recently.
    Also today I detected a memory leak in my code.
    After GetColumnsInfo() call I was not releasing the last param(ppStringsBuffer).
    This seems to have fixed the problem. I tried running the win32 console app for 5,000 runs(each run has 2 SQL queries and 1 stored proc). The peak mem usage stays stable around 26MB and the mem usage varies from 8MB to 26MB. I guess this is fine, any info?

  • CVI dll to read XML file causes memory leak

    Hello,
    I am facing a memory leak issue when I execute a dll created using CVI to read a XML file.
    Each iteration of the step is taking around 200k of memory.
    Short description of the code:
    Basically I am using a function created in CVI to read from an XML file by tag which 2 attributes: command and the response;
    int GetCmdAndRsp(char XML_File[MAX_STR_SIZE], char tag[MAX_STR_SIZE], char Command[MAX_STR_SIZE], char Response[MAX_STR_SIZE], char ErrorDescription[MAX_STR_SIZE]) 
    inputs:  
    - XML_File_path;
    - tagToFind;
    ouputs:
    - Command;
    - Response;
    - Error;
    Example:
    XMLFile:
    <WriteParameter Command="0x9 %i %i %i %i %i" Response = "0x8 V %i %i %i %i"/>
    Execution:
    error = GetCmdAndRsp("c:\\temp\\ACS_Messages.xml" ,"WriteParameter", cmd, rsp, errStr) 
    output:
    error = 0
    cmd = "0x9 %i %i %i %i %i"
    rsp = "0x8 V %i %i %i %i"
    errStr = "Unkown Error"
    Everything is working correctly but I have this memory leak issue. Why am I having such memory consumption?? Is it a TestStand or CVI issue??
    Each iteration I am loading the file, reading the file and discarding the file.
    Attached you can find the CVI project, a TestStand sequence to test (ReadXML_test2.seq) and an example of a XML file I am using.
    Please help me here.
    Thaks in advance.
    Regards,
    Pedro Moreira
    Attachments:
    ReadXML_Prj.zip ‏1826 KB

    Pedro,
    When a TestStand step executes, its result will be stored by TestStand which will be later used for generating reports or logging data into database.
    You are looking at the memory (private bytes) when the sequence file has not finished execution. So, the memory you are looking at, includes the memory used by TestStand to store result of the step. The memory used for storing results will be de-allocated after finishing the sequence file execution.
    Hence, we dont know if there is actual memory leak or not. You should look at the memory, before and after executing sequence file instead of looking in between execution.
    Also, here are some pointers that will be helpful for checking memory leak in an application:
    1. TestStand is based on COM and uses BSTR in many function. BSTR caches the memory and because of the behavior, sometime you might get false notion of having memory leak. Hence, you need to use SetOaNoCache function OR set the OANOCACHE=1 environment variable to disable caching.
    2. Execute the sequence file atleast once before doing the actual memory leak test. The dry run will make sure all static variables are initialized before doing memory leak test.
    3. Make sure that the state of system or application is same when considering the Private bytes. Ex: Lets say ReportViewControl is not visible before you start executing sequence file. Then you note down the private bytes and then execute the sequence file. After finishing execution, make sure you close the ReportViewControl and then note down the private bytes once again to check if memory is leaked or not.
    4. If there exists memory leak as you specified, it is possible that the leak is either in TestStand, or in your code. Make sure that your code doesn't leak by creating a small standalone application (probably a console application) which calls your code.
    Detecting memory leaks in CVI is better explained in
    http://www.ni.com/white-paper/10785/en/
    http://www.ni.com/white-paper/7959/en/
    - Shashidhar

  • Memory Leaks in CRPE32.dll of Crystal report 8.5

    Post Author: Pugalendran P
    CA Forum: Crystal Reports
    Hi,
    On calling the PEOpenPrintEngine() API function of the Crystal report 8.5, the CRPE32.dll leaks memory of 2-3 kb. After printing 10000 reports approximately on a Server, the memory of the server was fully consumed and throws an exception stating "Unable to get current formula '' contents, Not enough memory for operation.".
    There are also other errors stating like "not enough memory for operation".
    Is there any resolution / hotfix / patch available to resolve this problem?
    If resolution / hotfix / patch is not available in Crystal report 8.5, will upgrading to Crystal Reports XI resolve this problem?
    Thanks in Advance,

    Hi all, Memory leaks are not usually an issue with CR and any that were reported have been plugged in 8.5. Most, using third party tools, are linked to some core MS dll's, printer drivers etc.
    And more commonly due to not releasing the report object, database connections, Printer DEVMODE's structure and other memory allocations you may have created in your application and not cleaned up when the report object is closed and disposed of.
    As for the life cycle this has been posted on our support site for quite a few years now, with the new Support site this link is not currently available but Google does have a cached copy of this from this link:
    http://209.85.173.104/search?q=cache:DkU35JxW5HsJ:support.businessobjects.com/programs_and_lifecycle/lifecycle/product_eol_dates.aspbusinessobjectslifecycle;hl=en&ct=clnk&cd=2&gl=ca
    Thank you
    Don

  • What causes memory use of my program increase? (Write to Spreadshee​t? Running in LV environmen​t? External dlls? Waveform graphs?)

    Hi 
      I have attached a plot for the discussion here..
      I am monitoring the memory usage by my VI thru calling a window's dll to keep checking that (Many thanks to Matt). 
      I saw raising slopes and flat (wow! First time I catch this, that's what I am expecting)
      I am thinking where could there be a reason for memory growing up!
    What I did:-
    1. Mostly use queues (all limited # of elements) for parameters delivery between loops and between subVIs
    2. I close Obtained queue ref. every time I finish with it (only leaving a few keeping alive so they won't be killed)
    3. For all arrays I initialized with a fixed size array constant and do all jobs with Replace subset, Index Array and that In-place block.
    Above are measures I intended to use to save memory.
      However for a few points I think there might cause a memory grows, and I wish that someone can share with me your experience or give me an answer...
    1. Write to spread file:-- I keep using this to log data, events into harddisk, in my use I always append new logs/data to the existing file, however I keep doing it all the time throughout the run-time.
    2. Running my program in LV.exe -- I havn't compiled it yet. However when I was taking the plot's data, my PC is left with no one using it.
    3. There is a couple of external dlls running -- however it sounds to me from other's view point, external dll's resource doesn't count into Labview.exe. Since I am monitoring Labview's memory use, that couldn't be a source of the raising I see from this plot, right?
    4. Waveform graphs -- I am not sure whether this can be a problem. Everytime I feed data into a waveform control, I initialized a constant array and then replace elements into it, I don't think my data source is casuing any problem.
      Can someone comment on my above descriptions of my program?
    Raymond

    vgbraymond wrote:
    1. Write to spread file:-- I keep using this to log data, events into harddisk, in my use I always append new logs/data to the existing file, however I keep doing it all the time throughout the run-time.
    Write to spreadsheet file is a high level VI that opens and closes the file with every call. I would recommend to open the file once at the start of the programs, then append using lowlevel functions. Close the file after the program is done.
    Have you done any profiling to see which subVIs shows the bulk of the memory use?
    You might also turn off debugging to see if it makes a difference. Don't open the front panel of subVIs (and avoid functions that force the front panel to be in memory) unless they need to show something important to the user.
    It would really help if we could see some actual code. Can you strip it down to the essentials that still show the problem?
    LabVIEW Champion . Do more with less code and in less time .

Maybe you are looking for

  • Invoice payment fields

    Would you please help me locate the following fields: Invoice number Funding account name Funding account identifier Payment account Payee identifier Payee name Payment amount

  • I can't tranfer photos to my ipod nano

    Hi everyone, I have an 1G ipod nano and i can't transfer any photos to the ipod. iTunes always sais that there are not room for the photos even if I try to copy a single picture (50KB) and I see that the ipod have 47 MB free. No problems whit the mus

  • I removed the original HD and want to use it as a backup with external drive.

    HP laptop G71ous win. 7.  This forum helped me remove and reinstall original drive. I am using it in an external drive unit. My question is : How can I remove data so i can clear space. It tells me i do not have admin rights, and cannot remove window

  • Maintain Linked Graphics in document files

    I would like to use SharePoint to maintain version control on documents that retain linked graphics.  Does SharePoint have a means to maintain the linking of image files in these type of publications?  Is there a workflow that we can use for this pur

  • CSS without SSL Module needing sticky sessions

    Hello All, If anyone can help with this sticky situation I'd appreciate it. I have a customer with a CSS11501. He does not have an SSL module installed. He has 2 blade servers, when he adds a web site, which is accessible over SSL, the CSS load balan