Performance and Memory profiler produce no results

I'm attempting to profile a .net console application. In either the Performance Profiler or the Memory Profiler, both launch the executable. I can see from the logfiles that it executes, but both report "No results to display" after executing.

I just upgraded to version 6.3 from 6.2, and in 6.2 it would hang on "Summarizing results".

I've just gone in and re-ran the session with all the various Profiling Modes, and all produce the same (lack of) results.

I'm missing something very basic here, I imagine. Any help is greatly appreciated.

Thanks!

Comments

  • Those symptoms are consistent with the application crashing - can you look in the windows application event log for .net errors please?
  • Hi Chris,
    You are absolutely right :

    .NET Runtime version 4.0.30319.239 - Loading profiler failed during CoCreateInstance. Profiler CLSID: '{D6E0BA92-3BC3-45ff-B9CC-B4B5AB7190BC}'. HRESULT: 0x8007007e. Process ID (decimal): 4796. Message ID: [0x2504].

    0x2504 mean anything to you?
  • The HRESULT is the interesting part: 0x8007007E means 'the specified module could not be found'. This implies that either the profiler core is not registered correctly, or one of its dependencies is missing.

    The profiler UI checks the registration before trying to launch any application, so it's more likely that there is a missing dependency. Unfortunately, the error message provides no hint as to what this could be.

    You can manually reregister it by running regsvr32 on the ProfilerCore dll contained within the ANTS distribution (you'll need to do both the version in the main directory and the one in the x64 directory if you're running 64-bit Windows). I suspect this will probably fail with the same HRESULT, though.

    The profiler depends on the VC2010 runtime, the detoured dll (shipped with the profiler), mscoree.dll (ie, .NET), psapi.dll and ws2_2.dll (aka winsock). The DLLs are all part of the standard Windows distribution and should be found in your system32 directory. The VC2010 runtime should be installed by the ANTS installer if it's not already present, but you can install it manually from here:

    http://www.microsoft.com/download/en/de ... px?id=5555
    http://www.microsoft.com/download/en/de ... x?id=14632

    Note that v5 of ANTS was built with Visual Studio 2008SP1, so you'll need a different version of the runtime installed for that version.
    Andrew Hunter
    Software Developer
    Red Gate Software Ltd.
  • Hi Andrew,
    Thanks for the reply. I've manually re-registered the dll in the 64-bit directory (e.g. not C:\Program Files (x86)) with no issue :

    C:\Program Files\Red Gate\ANTS Performance Profiler 6>regsvr32 ProfilerCore.dll

    There is no output from that command. I have Visual Studio 2010 on this machine, and attempted to run both of the installers you linked to, and both asked me to repair an existing installation (see imgur links).

    http://imgur.com/wBRR6 <- result of http://www.microsoft.com/download/en/de ... px?id=5555
    http://imgur.com/zl0dX <- result of http://www.microsoft.com/download/en/de ... x?id=14632

    I did not repair the installation, but would be happy to do so.

    Also, fwiw I used the memory profiler extensively right after purchase with no issue. (In answer to the first debugging question : 'Has it ever worked?')

    Finally, here is the output of dependency walker for PorfilerCore.dll :
    http://imgur.com/qh9NY

    Thanks again
  • Just a thought- do you have Dot Net 2.0 installed? It should not be necessary (if you have .net 4) but, we have found, it is.
  • Hi Chris,
    I do have 2.0 installed.
  • Sorry- we don't seem to be getting you very far. We need to fully reproduce this to understand exactly what is happening. Generally, however, you may find you get results if you use either sampling mode of profiling or the 'attach-to-process' feature. These are less intrusive mechanisms of profiling.
  • I've just got a new machine up and running, and the profiler works fine. So we can leave this mystery for another day.

    Thanks
Sign In or Register to comment.